[Risolto] Report di riepilogo

Discussioni sulle caratteristiche di database
Rispondi
PNG
Messaggi: 42
Iscritto il: lunedì 21 aprile 2014, 15:09

[Risolto] Report di riepilogo

Messaggio da PNG »

Buonasera a tutto il forum, ancora una volta ho bisogno dei vostri preziosi consigli che tanto mi hanno aiutato in passato.
Ho un database di esempio che vi allego, contiene tre tabelle (Clienti,Depositi,Rese) e vorrei creare un report che per ogni cliente della tabella clienti mi riepiloghi i relativi depositi e rese.

Faccio un esempio:

Cliente Pinco
Resa numero........ecc. ecc.
Deposito numero...ecc.ecc.

Ho fatto molti tentativi ma non riesco a venirne a capo.

Ringraziando anticipatamente chi potrà aiutarmi, porgo cordiali saluti.
Allegati
Prove.odb
(4.45 KiB) Scaricato 106 volte
Ultima modifica di PNG il giovedì 30 giugno 2016, 15:28, modificato 4 volte in totale.
Apache OpenOffice 4.0.1 - Windows 7
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8807
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Report di riepilogo

Messaggio da charlie »

Ciao, penso che il problema consista nel fatto che depositi e rese non sono in egual numero e sono in date diverse.
Per questo ho impostato come destra (RIGHT OUTER JOIN) la relazione ID <--> ID nella query Relazione1.
Su questa ho costruito 2 possibili report.
Allegati
Prove_1.odb
(15.58 KiB) Scaricato 116 volte
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
PNG
Messaggi: 42
Iscritto il: lunedì 21 aprile 2014, 15:09

Report di riepilogo

Messaggio da PNG »

Grazie Charlie, proprio quello che cercavo. Un caro saluto al forum e ancora grazie per l'aiuto.
Apache OpenOffice 4.0.1 - Windows 7
PNG
Messaggi: 42
Iscritto il: lunedì 21 aprile 2014, 15:09

Re: [Risolto] Report di riepilogo

Messaggio da PNG »

Buongiorno Charlie, forse ho esultato troppo preso, mi sono accorto che il risultato della query mi fa vedere solo i dati che hanno corrispondenza nelle due tabelle (Depositi e Rese) e cioè mi fa vedere i clienti che hanno sia Depositi che Rese mentre a me interessa che la query mi faccia vedere anche i dati che non hanno corrispondenza.

Mi spiego, potrebbero esserci clienti che hanno Depositi e Rese ma potrebbero esserci clienti che hanno Depositi e non Rese e viceversa.

Prima di scriverti ho cercato informazioni e ho scoperto che si potrebbe adoperare la "FULL OUTER JOIN" nella query, ma dopo svariati tentativi non ne sono venuto a capo.

Ringraziandoti anticipatamente per il tuo aiuto, cordialmente ti saluto.
Apache OpenOffice 4.0.1 - Windows 7
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8807
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Report di riepilogo

Messaggio da charlie »

"FULL OUTER JOIN", non è supportato in HSQLDB 1.8 (il motore di Base).
In alternativa si può adoperare questo codice:

Codice: Seleziona tutto

SELECT "Tabella_Depositi".*, "Tabella_Rese".* FROM { oj "Tabella_Rese" LEFT OUTER JOIN "Tabella_Depositi" ON "Tabella_Rese"."ID" = "Tabella_Depositi"."ID" }
UNION
SELECT "Tabella_Depositi".*, "Tabella_Rese".* FROM { oj "Tabella_Depositi" LEFT OUTER JOIN "Tabella_Rese" ON "Tabella_Depositi"."ID" = "Tabella_Rese"."ID" }
Da eseguire in "modo diretto" in una query.
Ma poi non viene accettato nel report … Bisogna cercare un'altra soluzione.
Allegati
Schermata 06-2457567 alle 13.51.44.png
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
PNG
Messaggi: 42
Iscritto il: lunedì 21 aprile 2014, 15:09

Re: Report di riepilogo

Messaggio da PNG »

Grazie lo stesso Charlie, un saluto al forum.
Apache OpenOffice 4.0.1 - Windows 7
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8807
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Report di riepilogo

Messaggio da charlie »

Ho risolto il problema del messaggio di errore con il settaggio in figura:
Schermata 06-2457568 alle 09.59.43.png
e anche la Query è stata rifatta.
Il Report va rivisto esteticamente.
Allegati
Prove_2.odb
(9.65 KiB) Scaricato 103 volte
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
PNG
Messaggi: 42
Iscritto il: lunedì 21 aprile 2014, 15:09

Re: Report di riepilogo

Messaggio da PNG »

Ciao Charlie, ti ringrazio per l'impegno e il tempo dedicatomi, questa soluzione è ottimale ma vorrei chiederti una spiegazione: la Query1 produce delle righe di doppioni, la mia domanda è se fosse possibile avere per ogni cliente i depositi e le rese senza veder i doppioni.

Spero di non disturbarti ulteriormente visto che hai già fatto tanto. Ti ringrazio e cordialmente ti saluto.
Apache OpenOffice 4.0.1 - Windows 7
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8807
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Report di riepilogo

Messaggio da charlie »

Una possibile soluzione è la nuova query Ricerca2. Le colonne delle due tabelle vengono unificate e prendono il nome di quelle della prima tabella. Nel report i nomi sono modificati in maniera generica.
Potresti differenziare Numero deposito e Numero resa con una tipologia diversa (come adesso, ad esempio, 1 cifra e 3 cifre) e gli importi: positivo (Depositi) e negativo (Rese).
Allegati
Prove_3.odb
(9.88 KiB) Scaricato 109 volte
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
PNG
Messaggi: 42
Iscritto il: lunedì 21 aprile 2014, 15:09

Re: Report di riepilogo

Messaggio da PNG »

Charlie, ottima soluzione, ora ci siamo, ho inserito gli importi delle rese con il segno (-) negativo.

Ringrazio te e il forum e cordialmente vi saluto
Apache OpenOffice 4.0.1 - Windows 7
PNG
Messaggi: 42
Iscritto il: lunedì 21 aprile 2014, 15:09

Re: Report di riepilogo

Messaggio da PNG »

Buongiorno Charlie, ancora una volta ho esultato troppo presto, sta diventando una costante e ti spiego:

ho copiato la query Ricerca2 nel mio database con il comando "Crea query in vista SQL..." ma quando cerco di salvarla no me lo permette e mi esce questo messaggio

Il comando dato non è un'istruzione SELECT.
Solo le ricerche sono ammesse
ecc.ecc

Sicuramente sbaglio nel creare la query in questa maniera, sai indicarmi come inserirla correttamente, ho provato in Strumenti e poi SQL ma poi non rieco a salvarla, credo proprio che la procedura sia diversa.

Ti ringrazio ancora una volta per la disponibilità. Cordiali saluti
Apache OpenOffice 4.0.1 - Windows 7
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8807
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Report di riepilogo

Messaggio da charlie »

Ciao, devi solo fare clic sul pulsante SQL a destra (esecuzione diretta) prima di salvare.
Per lo stesso motivo nel Report "Analizza comando SQL" deve essere settato su NO.
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
PNG
Messaggi: 42
Iscritto il: lunedì 21 aprile 2014, 15:09

Re: Report di riepilogo

Messaggio da PNG »

Grazie Charlie, ora ho capito il passaggio e tutto funziona a dovere.

Cordiali saluti
Apache OpenOffice 4.0.1 - Windows 7
Rispondi