Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    361

    [VB5] Inserire dati FlexGrid in Access

    Ciao ragazzi
    rieccomi con i problemi legati alle mie "mitiche" FlexGrid (MsFlexGrid).
    Con il prezioso aiuto di LMondi e di altri utenti in altri post, sono risucito a costruire delle
    flexgrid in grado di gestire numeri e date, ora quello che non riesco a fare è inserire i vari record delle flex in una tabella temporanea chiamata "Prodotti", io ho costruito questo codice, ma mi da' questo errore: "Errore di conversione di tipo dati".

    Vi posto il codice:

    Sub AggiungiRecord_Click()
    Dim dbsDB As Database
    Dim rstProdotti As Recordset
    Dim strCodice As String
    Dim strDescrizione As String
    Dim strIva As String
    Dim strQuantita As String
    Dim strCategoria As String
    Dim strPrezzo As String
    Dim strDescrizione_Reale As String
    Dim strData As String
    Dim strOra As String
    Dim strOperatore As String
    Set dbsDB = OpenDatabase("C:\...\DB_REPORT1.mdb")
    Set rstProdotti = _
    dbsDB.OpenRecordset("DATABASE", dbOpenDynaset)
    strCodice = Trim(grdLista.TextMatrix(0, 0))
    strDescrizione = Trim(grdLista.TextMatrix(0, 1))
    strQuantita = Trim(grdLista.TextMatrix(0, 2))
    strCategoria = Trim(grdLista.TextMatrix(0, 3))
    strPrezzo = Trim(grdLista.TextMatrix(0, 4))
    strIva = Trim(grdLista.TextMatrix(0, 5))
    strData = Trim(grdLista.TextMatrix(0, 6))
    strOra = Trim(grdLista.TextMatrix(0, 7))
    strOperatore = Trim(grdLista.TextMatrix(0, 8))
    strDescrizione_Reale = Trim(grdLista.TextMatrix(0, 9))


    ' Procede solo se l'utente ha immesso
    ' effettivamente dati relativi sia al nome sia al cognome.
    If strCodice <> "" And strDescrizione <> "" _
    And strIva <> "" And strQuantita <> "" _
    And strCategoria <> "" And strPrezzo <> "" Then

    ' Richiama la funzione che aggiunge il record.

    AggiungiProdotto rstProdotti, strCodice, strDescrizione, strQuantita, strCategoria, _
    strPrezzo, strIva, strData, strOra, strOperatore, strDescrizione_Reale

    ' Visualizza i dati appena aggiunti.
    With rstProdotti
    Debug.Print "Nuovo record: " & !CODICE & _
    " " & !DESCRIZIONE

    .Delete
    End With

    Else
    Debug.Print _
    "È necessario immettere tutti i dati necessari!"""
    End If

    rstProdotti.Close
    dbsDB.Close

    End Sub

    Function AggiungiProdotto(rstTemp As Recordset, _
    strCodice As String, strDescrizione As String, _
    strQuantita As String, strCategoria As String, _
    strPrezzo As String, strIva As String, _
    strData As String, strOra As String, _
    strOperatore As String, strDescrizione_Reale As String)

    With rstTemp
    .AddNew
    !CODICE = strCodice
    !DESCRIZIONE = strDescrizione
    !QUANTITA = strQuantita
    !CATEGORIA = strCategoria
    !PREZZO = strPrezzo
    !IVA = strIva
    !Data = strData
    !ORA = strOra
    !Operatore = strOperatore
    !DESCRIZIONE_REALE = strDescrizione_Reale
    .Update
    .Bookmark = .LastModified
    End With

    End Function


    Quello che non riesco a capire, è che che ho controllato la struttura della Tabella "Prodotti" nel DB, e l'ho confrontata con AggiungiProdotto e nell'evento AggiungiRecord sono identiche

    VI PREGO AIUTATEMI...
    Premetto che per esigenze di programma devo usare solo le FlexGrid.
    GRAZIE CLAUDIO

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    361

    [VB5] Inserire i dati da FlexGrid a Access

    ... :master: vi prego un piccolo aiutino!
    Claudio

  3. #3
    Ma che errore ti da?
    Mi Consenta!!!!
    http://s2.gladiatus.it/game/c.php?uid=31236

  4. #4
    ma i tipi di dati che hai nella tabella prodotti coincidono con quello che gli inserisci? tipo quantità non è che gli vai a inserire una stringa?
    prova a controllare
    Mi Consenta!!!!
    http://s2.gladiatus.it/game/c.php?uid=31236

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    361
    Ciao ragazzi
    scusate se vi rispondo solo ora, come ho postato inizialmente, ho controllato scrupolosamente sia la struttura che il codice...
    Cmq il codice che ho inserito non so' se sia giusto, cioè in coerenza con flex e l'inserimento dati in access, quindi se ci sono altri metodi o altro fatemelo sapere o qualche guida che m'illustri bene queste benedette FlexGrid che sto cominciando ad odiare ma sono costretto ad usarle.


    Grazie mille Claudio

  6. #6
    cn è la connessione metti al posto di cn la tua

    public sub aggiungi()

    rsttemp.Open "select * FROM (QUI METTI IL NOME DELLA TABELLA DA AGGIORNARE SENZA PARENTESI) where 1 = 2", cn, adOpenDynamic, adLockOptimistic, adCmdText
    rsttemp.AddNew
    rsttemp!CODICE = Trim(grdLista.TextMatrix(0, 0))
    rsttemp!DESCRIZIONE = Trim(grdLista.TextMatrix(0, 1))
    rsttemp!QUANTITA = Trim(grdLista.TextMatrix(0, 2))
    rsttemp!CATEGORIA = Trim(grdLista.TextMatrix(0, 3))
    rsttemp!PREZZO = Trim(grdLista.TextMatrix(0, 4))
    rsttemp!IVA = Trim(grdLista.TextMatrix(0, 5))
    rsttemp!Data = Trim(grdLista.TextMatrix(0, 6))
    rsttemp!ORA = Trim(grdLista.TextMatrix(0, 7))
    rsttemp!Operatore = Trim(grdLista.TextMatrix(0, 8))
    rsttemp!DESCRIZIONE_REALE = Trim(grdLista.TextMatrix(0, 9))
    rsttemp.update
    rsttemp.Close

    end sub
    Mi Consenta!!!!
    http://s2.gladiatus.it/game/c.php?uid=31236

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    361

    Info Codice

    Ciao carissimo Stefano
    grazie per il codice che mi hai postato, quello che volevi dire era una cosa di questo genere:

    Private Sub AggiungiProdotto()
    Dim cn As ADODB.Connection
    Dim rstTemp As ADODB.Recordset
    Dim strCnn As String
    Set cn = New ADODB.Connection
    strCnn = "" _
    & "Provider=Microsoft.Jet.OLEDB.4.0;" _
    & "Data Source=C:\...DB_REPORT1.mdb"
    cn.Open strCnn
    rstTemp.Open "select * FROM DATABASE where 1 = 2", cn, adOpenDynamic, adLockOptimistic, adCmdText
    rstTemp.AddNew
    rstTemp!CODICE = Trim(grdLista.TextMatrix(0, 0))
    rstTemp!DESCRIZIONE = Trim(grdLista.TextMatrix(0, 1))
    rstTemp!QUANTITA = Trim(grdLista.TextMatrix(0, 2))
    rstTemp!CATEGORIA = Trim(grdLista.TextMatrix(0, 3))
    rstTemp!PREZZO = Trim(grdLista.TextMatrix(0, 4))
    rstTemp!IVA = Trim(grdLista.TextMatrix(0, 5))
    rstTemp!Data = Trim(grdLista.TextMatrix(0, 6))
    rstTemp!ORA = Trim(grdLista.TextMatrix(0, 7))
    rstTemp!Operatore = Trim(grdLista.TextMatrix(0, 8))
    rstTemp!DESCRIZIONE_REALE = Trim(grdLista.TextMatrix(0, 9))
    rstTemp.Update
    rstTemp.Close

    End Sub


    ...perchè purtroppo mi dice che la variabile non è impostata, nella riga:
    rstTemp.Open "Select * FROM.........

    Sicuramente sto sbagliando io, fammi sapere
    Grazie mille
    Claudio

  8. #8

    Prova questo

    'queste le dichiari globali

    Dim cn As ADODB.Connection
    Dim rstTemp As ADODB.Recordset


    Private Sub AggiungiProdotto()

    Dim strCnn As String
    Set cn = New ADODB.Connection
    Set rstTemp = New ADODB.Recordset


    strCnn = "" _
    & "Provider=Microsoft.Jet.OLEDB.4.0;" _
    & "Data Source=C:\...DB_REPORT1.mdb"
    cn.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & strCnn & ";Jet OLEDBatabase Password=")
    rstTemp.Open "select * FROM azioni where 1 = 2", cn, adOpenDynamic, adLockOptimistic, adCmdText
    rstTemp.AddNew
    rstTemp!CODICE = Trim(grdLista.TextMatrix(0, 0))
    rstTemp!DESCRIZIONE = Trim(grdLista.TextMatrix(0, 1))
    rstTemp!QUANTITA = Trim(grdLista.TextMatrix(0, 2))
    rstTemp!CATEGORIA = Trim(grdLista.TextMatrix(0, 3))
    rstTemp!PREZZO = Trim(grdLista.TextMatrix(0, 4))
    rstTemp!IVA = Trim(grdLista.TextMatrix(0, 5))
    rstTemp!Data = Trim(grdLista.TextMatrix(0, 6))
    rstTemp!ORA = Trim(grdLista.TextMatrix(0, 7))
    rstTemp!Operatore = Trim(grdLista.TextMatrix(0, 8))
    rstTemp!DESCRIZIONE_REALE = Trim(grdLista.TextMatrix(0, 9))
    rstTemp.Update
    rstTemp.Close

    End Sub
    Mi Consenta!!!!
    http://s2.gladiatus.it/game/c.php?uid=31236

  9. #9
    Scusa dimenticavo nella select io ho messo azioni ma te mettici il nome della tua tabella da aggiornare.


    ciao
    Mi Consenta!!!!
    http://s2.gladiatus.it/game/c.php?uid=31236

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    361

    Info Codice

    Ciao Stefano
    io non so' piu' cosa fare, ho guardato il tuo codice e mi sembra perfetto, ora l'errore che mida' è:
    Errore di run-time n°......
    "Impossibile trovare ISAM installabile"


    Se mi vuoi mandare a quel paese fallo pure me lo merito, ma non riesco a capire cosa
    cacchio voglia dire con questo errore.

    Ciao Claudio

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.