Newsgroup: it.comp.appl.access
Titolo: Come fare per scalare i prodotti ordinati a fornitori dal magazzino

Salve a tutti.
come al solito premetto che non sono un maestro in access e che nn so
programmare il VBA, spero quindi in una Vs. comprensione e in un aiuto il
più esplicito che mai.
Il mio problema è il seguente:
Ho fatto un DB riguardante il magazzino e cioè che potessi inserire
articoli, fare ordini a fornitori, ricevere ordini (non di articoli ma di
DISTINTE BASI (cioè un insieme di articoli)) da clienti.
Ho creato varie tabelle, ma quelle che più interessano in questo momento
sono:
ORDINI CLIENTI; DETTAGLI ORDINI CLIENTI; DISTINTE; DETTAGLI DISTINTE;
PRODOTTI; DETTAGLI ORDINI FORNITORE; ORDINI FORNITORI.
Ho cercato di metterle in ordine perchè sono tutte collegate tra loro.
Ho fatto poi delle query che calcolano la quantità di prodotti da ordinare
in base al n. di distinte presente su ogni ordine cliente.
Es: se un cliente mi ordina 10 lampade modello "A" e 20 modello "B", e so
che la lampada "A" è formata da 10 vetri mod. X e 10 lamapadine mod. Y,
mentre la lampada "B" è formata da 5 vetri modello X e 2 lamapadine modello
Z; la query mi calcola che devo ORDINARE al FORNITORE: 200 vetri X, 100
lampadine Y e 40 lampadine Z.
Una volta fatto questo, ho fatto in modo di poter scegliere quali ORDINI
CLIENTI raggruppare per fare i calcoli dei prodotti che mi servono.
E infine ho fatto delle query che mi permettono di avere la situazione a
magazzino di ogni prodotto: scorta iniziale; qtà a magazzino; qtà totale
ordinata; ricevuta; ancora da ricevere; Impegnata da ordini clienti;
riamnenza da ordinare.
Il tutto funziona.
Ora IL PROBLEMA:
come faccio a fare in modo che quando eseguo il raggruppamento degli ORDINI
CLIENTI, il totale dei prodotti calcolati dalle query vada a togliersi da
quantità in magazzino così da avere sempre il magazzino "in ordine" ogni
volta che seleziono gli ordini dei clienti?
Io pensavo: siccome nella tabella prodotti c'è un campo SCORTE INIZIALI;
metterne un'altro MAGAZZINO, in cui vadano a memorizzarsi i dati della query
che raggruppa gli ordini e poi questo campo utilizzarlo nelle query per il
calcolo della situazione a magazzino di ogni prodotto: scorta iniziale; qtà
a magazzino; qtà totale ordinata; ricevuta; ancora da ricevere; Impegnata da
ordini clienti; riamnenza da ordinare.
Se c'è da utilizzare del codice, vi prego di essere il più chiari possibile,
come ho detto...non sono esperto.
Scusandomi per la lungaggine del discorso, Vi ringrazio fin d'ora per
l'aiuto che potete darmi.
Nikes

 volta che seleziono gli ordini dei clienti?
Perchè non fai una query di aggiornamento in cui metti la query di
raggruppamento e la tabella degli articoli legate in join sull'ID degli
articoli in cui aggiorni il campo giacenza con la giacenza attuale - il
valore sommato dalla query di raggruppamento?
Antonio

 ha scritto nel messaggio
news:vcqSb.1661$U4.6...@twister1.libero.it...

Vedo cosa posso fare (sempre che io ci riesca....come detto nn sono troppo
pratico!).
Intanto ti ringrazio per la cortesia!

 ha scritto nel messaggio
news:vcqSb.1661$U4.6...@twister1.libero.it...

Ciao!
Ho provato a collegare gli ID della tabella PRODOTTI e la query CALCOLI dove
ci sono
tutti i calcoli dei  valori per il magazzino, ma non mi lascia eseguire la
query e mi da:
"Per l'operazione è necessaria una query aggiornabile"
Come si fa la query di aggiornamento? Puo' darsi che sbaglio li, anche se ho
cercato di seguire la guida.
Che consiglio mi puoi dare?
(oppure se ho sbagliato qualcosa cerca di essere il più esplicito possibile,
magari con un esempio (access mi piace, ma sono ancora agli arbori!)
Grazie.

come faccio a fare in modo che quando eseguo il raggruppamento degli ORDINI
CLIENTI, il totale dei prodotti calcolati dalle query vada a togliersi da
quantità in magazzino così da avere sempre il magazzino "in ordine" ogni
volta che seleziono gli ordini dei clienti.
DEVI CREARE UNA TABELLA TMP (TEMPORANEA) CHE MISCHIA TUTTI I DATI SIA DELLE
ENTRATE CHE DELLE USCITE.
Io pensavo: siccome nella tabella prodotti c'è un campo SCORTE INIZIALI;
metterne un'altro MAGAZZINO, in cui vadano a memorizzarsi i dati della query
che raggruppa gli ordini e poi questo campo utilizzarlo nelle query per il
calcolo della situazione a magazzino di ogni prodotto: scorta iniziale; qtà
a magazzino; qtà totale ordinata; ricevuta; ancora da ricevere; Impegnata da
ordini clienti; riamnenza da ordinare.
Ciao Secondo il mio parere de mettere un'altro  campo in tabella con USCITE
e la data.
Alla fine devi mischiare tutto in una tabella TMP. Faccio un esempio.
Se hai una tabella con Scadenze Fatture Clienti e una tabella con Scadenze
Fatture Fornitori devi creare i movimenti di queste due tabelle dove ci sono
ENTRATE e USCITE con la rispettiva data.
Per mischiare delle tabelle ne devi creare 2 una vuota e l'altra inserisci i
dati. Quando premi il bottone per i MOVIMENTI e nel tuo caso CALCOLO SCORTE
MAGAZZINO prendi la tabella vuota (importata) e la copy nell'altra tabella
(ALLEGATA) in modo che la svuoti e secondo me è il metoto più veloce. Poi
tramite query butti in questa tabella tutti i dati che vuoi e li elabori con
altre query senza toccare le tabelle con RELAZIONI. Se devi fare il calcolo
del magazzino di quanti pezzi ti sono rimasti, per esempio, avrai un campo
nella tabella TMP che chiami Entrate e uno Uscite con indicati il tipo di
prodotto e tutte le informazioni che interessano. Ed è qui che devi creare
altre query per OTTENERE I DATI CHE VUOI.
Saluti
G.Franchi

 magari con un esempio (access mi piace, ma sono ancora agli arbori!)
Ehem...
aLbori...
Antonio

 ha scritto nel messaggio
news:VUrTb.8846$U4.3...@twister1.libero.it...

Scusa l'italiano...
Pre quanto riguarda il problema, l'ho risolto con il metodo indicato da
G.Franchi.
Ti ringrazio comunque per l'aiuto.
Nikes