Newsgroup: it.comp.appl.access
Titolo: combo

ciao a tutti come faccio a inserire i dati che leggo da una
combo tranite query su di una tabella in un'altra tabella.
grazie ciao carlo


Query di accodamento ? ci spieghi meglio il tuo problema 
Ciao. Fabrizio

ciao  a tutti il punto è il seguente:
devo poter selezionare ed inserire da una combo due campi della tab dove la
combo punta ed inserirli in una nuova tabella oppure tab. esistente.
In buona sostanza volevo simulare un progetto di allenamento sulle
ordinazioni di un ristorante da dove ho una tab con tutte le portate ,
tramite la combo devo poter selezionare una o piu' portate e inserirle
sull'ordine del tavolo specifico sul quale devo vedere anche il tot. del
conto.
Questo perchè sono un principiante ed ho bisogno di essere preso per mano.
ancore grazie carlo
"Fabrizio" <fabrizio...@SPAMtiscalinet.it> ha scritto nel messaggio
news:m886pukg7nd3v3i9v...@4ax.com...



Purtroppo anch'io sono un principiante e sei fuori dalla mia
giuristizione, quindi passo la "mano" a chi è più esperto di me.
Ciao. Fabrizio

 Ciao. Fabrizio


Quando rispondi scrivi il testo della tua risposta DOPO e non prima del
testo del messaggio cui stai rispondendo.
Se la tabella che contiene le portate si chiama Portate ed ha una struttura
simile:
IDPortata                Contatore e chiave primaria
Portata                    Testo
Prezzo                     Valuta
Se hai una tabella chiamata DettaglioOrdini che abbia una struttura simile a
questa:
IDDettaglio             Contatore e chiace primaria
IDOrdine                Numerico
Portata                    Testo
Prezzo                     Valuta
Se infine hai una tabella Ordini che abbia la seguente struttura:
IDOrdine                Contatore e chiave primaria
NumeroTavolo       Testo
ecc. ecc.
Se la tabella DettaglioOrdine è in relazione uno-a-molti con la tabella
Ordini in base ai campi IDOrdine.
Creati una maschera chiamata Ordini con visualizzazioe a Maschera singola
che abbia come origine record la tabella Ordini: i controlli della maschera
Ordini avranno lo stesso nome dei campi della tabella Ordini cui sono
associati.
Con l'autocomposizione nella maschera Ordini inserisci una sottomaschera
chiamata DettaglioOrdini che abbia come origine record la tabella
DettaglioOrdini.
Nella maschera Ordini inserisci due caselle di testo non associate e non
visibili che si chiameranno rispettivamente DepPortata e DepPrezzo.
Nella maschera ordini inserisci una casella combinata chiamata ScegliPortata
dalla quale sceglierai le portate da ordinare e fai in modo che abbia 3
colonne di cui visibile solo la seconda: la casella combinata dovrà avere
come origine riga il seguente codice SQL:
SELECT DISTINCTROW Portate.IDPortata, Portate.Portata, Portate.Prezzo
FROM Portate ORDER BY Portate.Portata;
Sempre in maschera Ordini inserisci una casella di testo non associata
chiamata TotaleConto e nella sua origine controllo scriverai:
=DSum("Prezzo";"DettaglioOrdini";"IDOrdine=" & [IDOrdine])
A fronte dell'evento "Dopo aggiornamento" della casella combinata
ScegliPortata genera il seguente codice VBA:
Private Sub ScegliPortata_AfterUpdate()
Dim strAccoda As String
Me!DepPortata = Me!ScegliPortata.Column(1)
Me!DepPrezzo = Me!ScegliPortata.Column(2)
strAccoda = "INSERT INTO DettaglioOrdini ( IDOrdine, Portata, Prezzo )" & _
" SELECT [Forms]![Ordini]![IDOrdine] AS Espr3, " & _
"[Forms]![Ordini]![DepPortata] AS Espr1, " & _
"[Forms]![Ordini]![DepPrezzo] AS Espr2;"
DoCmd.RunCommand acCmdSaveRecord
DoCmd.RunSQL strAccoda
Me!DettaglioOrdini.Requery
Me!TotaleConto.Requery
End Sub
A questo punto apri la maschera Ordini; se l'ordine è nuovo inserisci un
nuovo record e digita il numero del tavolo; dalla casella combinata scegli
una alla volta le portare da ordinare; nella sottomaschera dovresti vedere
le portate scelte e nella casella di testo TotaleConto dovresti vedere
l'importo totale delle portate ordinate.
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------