[Risolto] Problema Query Giacenza

Discussioni sulle caratteristiche di database
Rispondi
geims
Messaggi: 9
Iscritto il: martedì 30 gennaio 2018, 12:19

[Risolto] Problema Query Giacenza

Messaggio da geims »

Ciao a tutti, grazie ai vari post sul forum ho deciso di farmi un gestionale in Base per il mio negozio (una tabaccheria).
Ora però ho un problema con una query:
praticamente per fare la giacenza mi faccio una somma di tutti i carichi, una somma di tutti gli scarichi e poi sottraggo i secondi dai primi.
Il problema è che se faccio un solo carico (es: 20 unità) e poi due scarichi da 1 unità ciascuno, al momento della somma mi conta due volte il carico di 20 unità, sballandomi il risultato.
Non so se mi sono spiegato bene, allego db per maggiore chiarezza.
Sicuramente sbaglio da qualche parte ma non riesco a capire dove...:)

http://www.rapidshare.com.cn/umfTUxB
(ho dovuto usare rapidshare perchè troppo grande per allegarlo qui, anche se ripulito)

Grazie anticipatamente a tutti
Ultima modifica di charlie il mercoledì 31 gennaio 2018, 13:24, modificato 2 volte in totale.
Motivazione: Aggiunta spunta verde
OpenOffice 4.1.2 su Windows 10
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8807
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Problema Query Giacenza

Messaggio da charlie »

Ciao, vuoi fare le cose semplici? Metti carichi e scarichi in una tabella unica.
Allegati
Gestionale-test_2.odb
(32.26 KiB) Scaricato 113 volte
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
geims
Messaggi: 9
Iscritto il: martedì 30 gennaio 2018, 12:19

Re: Problema Query Giacenza

Messaggio da geims »

Grazie per la veloce risposta charlie.
In effetti sarebbe molto più semplice così (a pensarci prima)
Il mio problema adesso è che me ne sono accorto tardi (ho fatto test con un carico ed uno scarico solo -.-), ed ora ho già scarichi e carichi sul database così fatto.
Se non c'è altra soluzione copierò tutti i dati in una nuova tabella, però prima vorrei vedere se è possibile sistemare la query invece che le tabelle.
OpenOffice 4.1.2 su Windows 10
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8807
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Problema Query Giacenza

Messaggio da charlie »

Puoi fare una query con la somma carico, una per la somma scarico ed una terza per la giacenza basata sulle prime due, messe in relazione attraverso il codice a barre.
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
geims
Messaggi: 9
Iscritto il: martedì 30 gennaio 2018, 12:19

Re: Problema Query Giacenza

Messaggio da geims »

Ho capito quello che dici, però non capisco dove sbaglio:
SELECT SUM( "q_carico"."somma carico" ) AS "somma carico", SUM( "q_scarico"."somma scarico" ) AS "somma scarico", SUM( ( COALESCE ( "t_carico"."carico", 0 ) ) - ( COALESCE ( "t_scarico"."scarico", 0 ) ) ) AS "Giacenza", "t_articoli"."codicebarre", "t_articoli"."descrizione" FROM "q_scarico", "q_carico", "t_articoli", "t_carico", "t_scarico" WHERE "q_scarico"."codicebarre" = "q_carico"."codicebarre" AND "q_carico"."codicebarre" = "t_articoli"."codicebarre" AND "q_scarico"."codicebarre" = "t_articoli"."codicebarre" GROUP BY "t_articoli"."codicebarre", "t_articoli"."descrizione"
questa è la query creata basata sulle altre due: continua a farmi lo stesso errore di contarmi i carichi 2 volte.

EDIT:
no niente scusami, sono veramente stordito. E' ovvio che me le conta due volte...le sommavo già nella prima query ed ora le stavo sommando di nuovo nella seconda.
Per completezza del messaggio metto anche la query funzionante:
SELECT "q_carico"."somma carico" AS "somma carico", "q_scarico"."somma scarico" AS "somma scarico", ( COALESCE ( "q_carico"."somma carico", 0 ) ) - ( COALESCE ( "q_scarico"."somma scarico", 0 ) ) AS "Giacenza", "t_articoli"."codicebarre", "t_articoli"."descrizione" FROM "t_articoli", "q_carico", "q_scarico", "t_carico", "t_scarico" WHERE "t_articoli"."codicebarre" = "q_carico"."codicebarre" AND "t_articoli"."codicebarre" = "q_scarico"."codicebarre" GROUP BY "q_carico"."somma carico", "q_scarico"."somma scarico", "t_articoli"."codicebarre", "t_articoli"."descrizione"
OpenOffice 4.1.2 su Windows 10
geims
Messaggi: 9
Iscritto il: martedì 30 gennaio 2018, 12:19

Re: [Risolto] Problema Query Giacenza

Messaggio da geims »

Ne approfitto anche per ringraziare tutto il forum, utenti e moderatori.
Nel giro di una decina di giorni, partendo da zero conoscenze di Base, sono riuscito a farmi un Gestionale molto più funzionale di quello che avevo in Calc.
Grazie davvero a tutti, utilissimi :)
OpenOffice 4.1.2 su Windows 10
Rispondi