Musketeer Fly
11-12-2003, 10:27
Ciao a tutti.
Mi trovo in questa situazione:
sono in una maschera nella quale devo selezionare in sequenza ben 4 caselle combinate sincronizzate:
Hardware
Costruttore
Descrizione
importo
tutte queste caselle combinate attingono i dati opportuni da una tabella tMagazzino. Mettiamo il caso che mi trovi a questo punto dopo aver selezionato come Hardware "Case", Costruttore "Pippo", Descrizione "ATX 400 watt Bianco" e come importo "Euro 19,80"; adesso nella maschera vorrei che in automatico Access mi mettesse l' IDMagazzino corrispondente del componente che si trova nel magazzino (ossia ho potuto scegliere nella maschera il componente avente le caratteristiche sopra indicate solo perchè nella tabella tMagazzino esisteva ed è contraddistinto da un IDMagazzino di tipo 'contatore') in un campo specifico (IDComponente) di tipo 'Numerico'.
Ho pensato di agire attraverso l' evento "dopo aggiornamento" della casella combinata importo, ma quando devo crearmi la routine corrispondente mi blocco: come posso richiamare la tabella tMagazzino in Visual Basic?
Ho provato a scrivere il seguente codice:
Dim numero As String
numero="SELECT IDMagazzino
FROM tMagazzino
WHERE(tMagazzino.Hardware=Me.nomecomp)AND (tMagazzino.costruttore=Me.costrcomp)AND
(tMagazzino.Descrizione=Me.descrcomp)AND
(tMagazzino.importo=Me.prezzocomp)"
IDComponente=numero
ma mi segnala errore su quest' ultima riga 'E' stato immesso un valore non valido per il campo'
anche con
Dim numero As Integer (o Long)
numero="SELECT IDMagazzino
FROM tMagazzino
WHERE(tMagazzino.Hardware=Me.nomecomp)AND (tMagazzino.costruttore=Me.costrcomp)AND
(tMagazzino.Descrizione=Me.descrcomp)AND
(tMagazzino.importo=Me.prezzocomp)"
IDComponente=numero
mi segnala errore sulla riga numero="SELECT IDMagazzino ..." dicendomi 'Tipo non corrispondente'.
Dalle prove sopra riportate si capisce che non so programmare in Visual Basic. Dove sbaglio? MI potete dare una mano?
Mi trovo in questa situazione:
sono in una maschera nella quale devo selezionare in sequenza ben 4 caselle combinate sincronizzate:
Hardware
Costruttore
Descrizione
importo
tutte queste caselle combinate attingono i dati opportuni da una tabella tMagazzino. Mettiamo il caso che mi trovi a questo punto dopo aver selezionato come Hardware "Case", Costruttore "Pippo", Descrizione "ATX 400 watt Bianco" e come importo "Euro 19,80"; adesso nella maschera vorrei che in automatico Access mi mettesse l' IDMagazzino corrispondente del componente che si trova nel magazzino (ossia ho potuto scegliere nella maschera il componente avente le caratteristiche sopra indicate solo perchè nella tabella tMagazzino esisteva ed è contraddistinto da un IDMagazzino di tipo 'contatore') in un campo specifico (IDComponente) di tipo 'Numerico'.
Ho pensato di agire attraverso l' evento "dopo aggiornamento" della casella combinata importo, ma quando devo crearmi la routine corrispondente mi blocco: come posso richiamare la tabella tMagazzino in Visual Basic?
Ho provato a scrivere il seguente codice:
Dim numero As String
numero="SELECT IDMagazzino
FROM tMagazzino
WHERE(tMagazzino.Hardware=Me.nomecomp)AND (tMagazzino.costruttore=Me.costrcomp)AND
(tMagazzino.Descrizione=Me.descrcomp)AND
(tMagazzino.importo=Me.prezzocomp)"
IDComponente=numero
ma mi segnala errore su quest' ultima riga 'E' stato immesso un valore non valido per il campo'
anche con
Dim numero As Integer (o Long)
numero="SELECT IDMagazzino
FROM tMagazzino
WHERE(tMagazzino.Hardware=Me.nomecomp)AND (tMagazzino.costruttore=Me.costrcomp)AND
(tMagazzino.Descrizione=Me.descrcomp)AND
(tMagazzino.importo=Me.prezzocomp)"
IDComponente=numero
mi segnala errore sulla riga numero="SELECT IDMagazzino ..." dicendomi 'Tipo non corrispondente'.
Dalle prove sopra riportate si capisce che non so programmare in Visual Basic. Dove sbaglio? MI potete dare una mano?