Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di Bugu
    Registrato dal
    Nov 2007
    Messaggi
    871

    [access] variabile su modulo

    Ho il seguente modulo che, con la Function "cerca2()" mi compila automaticamente una form.
    In pratica mi va a prendere dalla tabella "tab_art_vend1" l'articolo che ha una corrispondenza con il barcode che inserisco nella Form, e mi compila automaticamente il campo "descrizione1".

    codice:
    Oprion Compare Database
    Option Explicit
    
    Dim ws As Workspace
    Dim db As Database
    Dim qd As QueryDef
    Dim RS As Recordset
    Dim strSQL As String
    
    Public Function cerca2() As Boolean
    
    Dim FRM As Form
    Set FRM = Forms("Pannello").vendite.Form
    
    Set ws = DBEngine.Workspaces(0)
    Set db = CurrentDb
    
    strSQL = "SELECT * FROM Tab_Art_Vend1 WHERE BARCODEven= '" & FRM!barcode1 & "'"
    
    Set RS = db.OpenRecordset(strSQL)
    
    If RS.EOF Then
    GoTo errLogon
    End If
    Forms!pannello.vendite!descrizione1 = RS!Descri
    
    RS.Close
    db.Close
    Exit Function
    
    errLogon:
    MsgBox "ATTENZIONE! - Articolo sconosciuto!", 0, "Programma"
    
    RS.Close
    db.Close
    End Function
    Fino a qui tutto bene.
    Il problema è che ho diversi barcode uguali, ma con diverse descrizioni a seconda del LISTINO al quale sono associati (il motivo è lungo da spiegare) e questa funzione mi estrae sempre il primo che trova.
    Io a questo punto avrei bisogno di dare 2 CONDIZIONI alla ricerca: e cioè di trovare la corrispondenza con il barcode come fa già adesso, ma anche con la condizione che il campo LISTINO del record estratto corrisponda ad un campo "PARAMETRO" non associato della Form che è aperta.
    Ad esempio: compilami il campo "descrizione1" che abbia corrispondenza con il barcode inserito, e nel quale il campo LISTINO corrisponda al campo PARAMETRO della Maschera.

    Ho modificato questa riga così:
    codice:
    strSQL = "SELECT * FROM Tab_Art_Vend1 WHERE BARCODEven= '" & FRM!barcode1 & "'" And RS!listino = Forms!pannello!Parametro
    ma mi da un errore "variabile oggetto o variabile del blocco with non impostata"
    Dove sbaglio?

    Spero di essermi spiegato bene...
    Linux User
    ---------
    Solo due cose sono infinite: l'universo e la stupidità umana, e non sono tanto sicuro della prima.

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Se listino è un campo della tabella nella query sarà

    and listino

    e non

    And RS!listino

  3. #3
    Utente di HTML.it L'avatar di Bugu
    Registrato dal
    Nov 2007
    Messaggi
    871
    Originariamente inviato da nicola75ss
    Se listino è un campo della tabella nella query sarà

    and listino

    e non

    And RS!listino
    se metto solo listino mi da "variabile non definita", ed il listino è un campo della tabella
    Linux User
    ---------
    Solo due cose sono infinite: l'universo e la stupidità umana, e non sono tanto sicuro della prima.

  4. #4
    Utente di HTML.it L'avatar di Bugu
    Registrato dal
    Nov 2007
    Messaggi
    871
    Se invece uso:

    codice:
    strSQL = "SELECT * FROM Tab_Art_Vend1 WHERE BARCODEven= '" & FRM!barcode1 & "'" And "listino= '" = Forms!pannello!Parametro
    Quando la eseguo mi da l'errore "Tipo non corrispondente"
    Linux User
    ---------
    Solo due cose sono infinite: l'universo e la stupidità umana, e non sono tanto sicuro della prima.

  5. #5
    Utente di HTML.it L'avatar di Bugu
    Registrato dal
    Nov 2007
    Messaggi
    871
    Era sbagliata la sintassi degli apici e delle virgolette.
    Questa è quella giusta:

    codice:
    strSQL = "SELECT * FROM Tab_Art_Vend1 WHERE BARCODEven= '" & FRM!barcode1 & "' And Listino = '" & Forms!pannello!Parametro & "'"
    Grazie comunque!
    Linux User
    ---------
    Solo due cose sono infinite: l'universo e la stupidità umana, e non sono tanto sicuro della prima.

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.