Newsgroup: it.comp.appl.access
Titolo: Ordini Clienti ---> Ordini Fornitori

Un cordiale saluto a tutto il NG.
Ho il seguente problema da risolvere :
un db strutturato tipicamente con
tabella OrdiniClienti -> tabella DettaglioOrdiniClienti
tabella OrdiniFornitori -> tabella DettaglioOrdiniFornitori
nella tabella DettaglioOrdiniClienti possono anche essere
presenti più prodotti di fornitori DIVERSI, mi spiego meglio :
prodottoA  FornitoreA Qtà=1
prodottoB  FornitoreA Qtà=3
prodottoC  FornitoreB Qtà=5
prodottoD  FornitoreC Qtà=7
prodottoE  FornitoreB Qtà=9
prodottoF  FornitoreC Qtà=7
Dal DettaglioOrdiniClienti vorrei poter creare "automaticamente"
gli ordini ai 3 fornitori diversi, ovvero :
OrdineFornitoreA
con relativi DettaglioOrdiniFornitori per prodottoA e prodottoB
OrdineFornitoreB
con relativi DettaglioOrdiniFornitori per prodottoC e prodottoE
OrdineFornitoreC
con relativi DettaglioOrdiniFornitori per prodottoD e prodottoF
Sicuro della Vs. collaborazione, ringrazio tutti per
gli eventuali suggerimenti!
------------------------------

 ha scritto nel messaggio
news:zIAia.5943$mg5.1...@twister2.libero.it...

Creati una query di raggruppamento basata su DettaglioOrdiniClienti
raggruppata per fornitore: trasforma questa query in una query di creazione
o di accodamento per creare la tabella OrdiniFornitori o per aggiungere
record in essa.
Creati una query di raggruppamento basata su DettaglioOrdiniClienti
raggruppata per fornitore e prodotto: trasforma questa query in una query di
creazione o di accodamento per creare la tabella DettaglioOrdiniFornitori o
per aggiungere record in essa.
Questa naturalmente è l'idea di massima, ora lavoraci un po' sopra per
selezionare i record del dettaglio ordini clienti e per adattarla meglio
alla struttura delle tue tabelle relative agli ordini fornitore.
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

 ha scritto nel messaggio
news:VcBia.5902$nD4.1...@twister1.libero.it...

Grazie x il suggerimento!
A qualcosa del tipo avevo pensato anch'io, ma ...
poi sono arrivato ad un punto morto.
Non so come "ciclare" per poter aggiungere ad ogni "variazione"
del fornitore i relativi dettagli ... Come posso andare avanti?
Finora ho provato così : in una form con relativa subform ho un
pulsante di comando con il seguente codice
Private Sub cmdGenera_Click()
Dim Db As Database
Dim rsComm, rsOrdForn, rsDettComm, rsDettOrdForn As Recordset
Dim strOrdine As String
Dim DepositaOrdine As Long
Set Db = CurrentDb
Set rsComm = Me.RecordsetClone
Set rsOrdForn = Db.OpenRecordset("tblOrdFornitori")
Set rsDettComm = Db.OpenRecordset("tblDettComm")
Set rsDettOrdForn = Db.OpenRecordset("tblDettOrdForn")
strOrdine = "IdOrdine=" & Me!IDOrdine
rsComm.MoveLast
rsComm.FindFirst strOrdine
'------------------------
'INSERT INTO tblOrdFornitori ( IDFornitore )
'SELECT tblProdotti.IDFornitore
'FROM tblProdotti INNER JOIN tblDettComm ON tblProdotti.IDProdotto =
tblDettComm.IDProdotto
'GROUP BY tblProdotti.IDFornitore
'ORDER BY tblProdotti.IDFornitore;
'---------------------------------------
    rsOrdForn.AddNew
    rsOrdForn!DataOrdine = rsComm!DataOrdine
    DepositaOrdine = rsOrdForn!IDOrdine
    rsOrdForn.Update
    rsDettComm.MoveFirst
    Do Until rsDettComm.EOF
        If rsDettComm!IDOrdine = rsComm!IDOrdine Then
            rsDettOrdForn.AddNew
            rsDettOrdForn!IDOrdine = DepositaOrdine
            rsDettOrdForn!Prezzo = rsDettComm!Prezzo
            rsDettOrdForn!Quantità = rsDettComm!Quantità
            rsDettOrdForn.Update
        End If
        rsDettComm.MoveNext
    Loop
rsComm.Close
Set rsComm = Nothing
rsOrdForn.Close
Set rsOrdForn = Nothing
rsDettComm.Close
Set rsDettComm = Nothing
rsDettOrdForn.Close
Set rsDettOrdForn = Nothing
'---------------------------------------------
'INSERT INTO tblDettOrdForn ( IDProdotto )
'SELECT tblDettComm.IDProdotto
'FROM tblProdotti INNER JOIN tblDettComm ON tblProdotti.IDProdotto =
tblDettComm.IDProdotto
'GROUP BY tblProdotti.IDFornitore, tblDettComm.IDProdotto;
'---------------------------------------------
End Sub
Forse sono stato un pò troppo prolisso ....
ma spero di essere stato chiaro.

 ma spero di essere stato chiaro.
Decisamente troppo prolisso!! ;-)



Hai ragione ... ma qualche dritta per quei recordset?
Grazie 1k     :(