+ Rispondi al Thread
Visualizzazione dei risultati da 1 a 10 su 10

Discussione: DataGrid

  1. #1
    L'avatar di Psycho
    Psycho non è in linea Scolaretto
    Luogo
    Lazio
    Post
    329

    DataGrid

    Salve a tutti

    Uso questo codice per aprire un DB e aggiungere record

    Dim DB As ADODB.Connection
    Dim T As ADODB.Recordset
    Dim strCnn As String
    Set DB = New ADODB.Connection
    strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\File.mdb"
    DB.Open strCnn
    Set T = New ADODB.Recordset
    T.LockType = adLockOptimistic
    T.Open "prodotti", DB, , , adCmdTable
    T.AddNew
    T("ID") = Text1.Text
    T.Update
    T.Close
    DB.Close

    Ora vorrei associare un datagrid per vedere i dati inseriti nel db.

    In passato ho sempre usato direttamante adodc, quindi andavo nelle proprietà del datagrid ed impostavo su datasource adodc.

    Ora come devo fare...???

    GRAZIE e tanti auguri a tutto il forum
    __________________
    La luce è più veloce del suono...
    Per questo motivo alcune persone sembrano brillanti fino a quando non parlano...

  2. #2
    mgm
    mgm non è in linea Scolaretto
    Post
    87
    Puoi eventualmente fare in questo modo:
    codice:
    Private Sub Query_Grid()
    Dim Rs As New ADODB.Recordset
    If Rs.State = 1 Then Rs.Close
    Rs.Open "select * from  Prodotti",Db, adOpenKeyset, adLockOptimistic
    Set Grid1.DataSource = Rs
    Grid1.Refresh
    End Sub
    Non fare la close di Rs finchè vuoi vedere i dati nella griglia. Per questo motivo ti ho messo la close prima della open, nel caso tu voglia richiamare più volte la subroutine.

    Ciao

  3. #3
    L'avatar di Psycho
    Psycho non è in linea Scolaretto
    Luogo
    Lazio
    Post
    329
    Ho provato ma non succede niente... non mi da nemmeno un errore
    Ho messo questo codice in un pulsante


    Dim DB As ADODB.Connection
    Dim Rs As ADODB.Recordset
    Dim strCnn As String
    Set DB = New ADODB.Connection
    strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\File.mdb"
    DB.Open strCnn
    Set Rs = New ADODB.Recordset
    Rs.Open "prodotti", DB, , , adCmdTable
    If Rs.State = 1 Then Rs.Close
    Rs.Open "select * from prodotti", DB, adOpenKeyset, adLockOptimistic
    Set DataGrid1.DataSource = Rs
    DataGrid1.Refresh


    Dove sbaglio???
    GRAZIE
    Ciaoooo
    __________________
    La luce è più veloce del suono...
    Per questo motivo alcune persone sembrano brillanti fino a quando non parlano...

  4. #4
    Luogo
    Padova
    Post
    4,379
    Blogs
    36
    Prova a mettere CursorLocation= adUseClient (proprietà del recordset)

  5. #5
    L'avatar di Psycho
    Psycho non è in linea Scolaretto
    Luogo
    Lazio
    Post
    329
    Grazie mille Cteniza era proprio quello il problema.

    Grazie
    Ciaooo
    __________________
    La luce è più veloce del suono...
    Per questo motivo alcune persone sembrano brillanti fino a quando non parlano...

  6. #6
    L'avatar di Psycho
    Psycho non è in linea Scolaretto
    Luogo
    Lazio
    Post
    329
    Data che il problema riguarda sempre il datagrid non credo che sia necessario aprire un altro topic.

    Prima quando collegavo direttamnte all'adodc il datagrid mi bastava cliccare su un riga/record della griglia e automaticamente l'adodc si spostava su quel record diventando il record corrente e quindi potevo modificarlo o eliminarlo. Ora in questo modo non è così!! Come posso fare?? cioè quando clicco sul una riga/record sul datagrid voglio che anche il recorset si sposti su quel record. Spero si essermi spiegato.

    Ciaooo e grazie
    __________________
    La luce è più veloce del suono...
    Per questo motivo alcune persone sembrano brillanti fino a quando non parlano...

  7. #7
    Luogo
    Padova
    Post
    4,379
    Blogs
    36
    Non mi sembra sia proprio così come dici, ho appena fatto una prova e funziona, non è che per caso stai usando una grid che non gestisce il binding?

  8. #8
    L'avatar di Psycho
    Psycho non è in linea Scolaretto
    Luogo
    Lazio
    Post
    329
    Uso il datagrid di VB6
    Allora uso questo codice per eliminare un record

    codice:
    Dim DB As ADODB.Connection
    Dim T As ADODB.Recordset
    Dim strCnn As String
    Set DB = New ADODB.Connection
    strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:file.mdb"
    DB.Open strCnn
    Set T = New ADODB.Recordset
    T.LockType = adLockOptimistic
    T.Open "prodotti", DB, , , adCmdTable
    T.Delete
    T.Close
    DB.Close
    Leggendo il codice e normale che mi elimina il primo record.....
    Io voglio che mi rimane sul record selezionato nel datagrid.
    Quindi sono io che sbaglio il metodo per eliminare il record.

    Grazie
    Ciaoooo
    __________________
    La luce è più veloce del suono...
    Per questo motivo alcune persone sembrano brillanti fino a quando non parlano...

  9. #9
    Luogo
    Padova
    Post
    4,379
    Blogs
    36
    Dirti come gestire il binding diventa molto complicato, prova a guardare tra gli esempi di visual basic sul cd di installazione oppure scarica gli esempi dalla Wrox e analizzali.
    Puoi inoltre prendere un tuo progetto vb6 ed attivare la "creazione guidata form dati" andando poi a prendere esempio / modificando quello che ha fatto il wizard

  10. #10
    L'avatar di Psycho
    Psycho non è in linea Scolaretto
    Luogo
    Lazio
    Post
    329
    Grazie mille vado subito.
    __________________
    La luce è più veloce del suono...
    Per questo motivo alcune persone sembrano brillanti fino a quando non parlano...

+ Rispondi al Thread

Discussioni simili

  1. Modificare Datagrid da un'altro Form
    Da netsky nel forum Visual Basic 6
    Risposte: 1
    Ultimo Post: 12-03-2006, 17:00
  2. Aggiornamento da Datagrid a MDB
    Da alextyx nel forum Visual Basic .Net
    Risposte: 9
    Ultimo Post: 12-12-2005, 08:23
  3. DataGrid - ADODC
    Da django nel forum Visual Basic 6
    Risposte: 3
    Ultimo Post: 21-09-2005, 22:46

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi