Ho un problema a far funzionare le query su db Access con VB5, utilizzando il controllo DATA.
quando utilizzo il seguente codice:
Private Sub txtCodice_KeyPress(KeyAscii As Integer)
Dim criterio As String
criterio = ""
If (KeyAscii = 13) And TxtCodice.Text <> "" Then
criterio = "SELECT * FROM magazzino WHERE codice = "
criterio = criterio + TxtCodice.Text
Data1.RecordSource = criterio
If Not (Data1.Recordset.NoMatch) Then
TxtCodice.DataField = "codice"
txtMarca.DataField = "marca"
txtLinea.DataField = "linea"
txtNome.DataField = "nome"
txtPrAcquisto.DataField = "pr_acquisto"
txtPrVendita.DataField = "pr_vendita"
txtNumPezzi.DataField = "num_pezzi"
End If
Else
Exit Sub
End If
End Sub
La query si posiziona sempre sul primo record della tabella "magazzino", indipendentemente che vi sia o meno il record cercato con il criterio definito.
Il Recordsettype l'ho impostato sia su tabella che su dynaset, ma il risultato non cambia.