Buongiorno,
ho la seguente necessità ma non riesco a capire come fare.
4 tabelle:
-
Ordini 1 a molti
Prodotti
-
DDT 1 a molti con
Prodotti_DDT
-
Prodotti 1 a molti con
Prodotti_DDT
Query 1 --> per vedere tutti i DDT (con relativo numero pezzi) associati all'ordine i-esimo (con totale pezzi)
Query 2 --> per vedere tutti gli ordini che
non hanno un DDT (ossia per quell'ordine non è ancora stato spedito nessun DDT) --> ho usato query ricerca dati non corrispondenti
Query 3--> è la
union tra la una 1 e la 2 per vedere in contemporanea tutti gli ordini associati ad un DDT (e nel caso visualizzare ciascun DDT) e ordini non associati ad un DDT
Query 4 --> ho creato una query a campi incrociati sulla query 3. Ciò ha lo scopo di poter capire quanti pezzi mi manca spedire (tramite i DDT) per chiudere l'ordine
query 5 -->
qui ho il problema. Per ciascun ordine (con DDT e senza DDT) creo la differenza = PezziOrdine - sommatoria PezziDDT e tutto funge per il meglio. Nel momento però che un ordine non ha ddt risulta differenz = PezziOrdine - 0 = NON OTTENGO GIUSTAMENTE RISULTATI.
Non so come prima sono riuscito nel caso Sommatoria PEzziDDT = 0 allora differenza = - PezziOrdine
ES. 5 - 0 = -5
Mi sapete ridire la funzione?
Questa è la query 5
SELECT DDT2_Ordini_Prodotti_DDT_CampiIncrociati.ID_Ordine, Sum(DDT2_Ordini_Prodotti_DDT_CampiIncrociati.Qta) AS SommaDiQta, Sum(DDT2_Ordini_Prodotti_DDT_CampiIncrociati.[Totale di qta DDT]) AS [SommaDiTotale di qta DDT], Var([DDT2_Ordini_Prodotti_DDT_CampiIncrociati]![Qta]-[DDT2_Ordini_Prodotti_DDT_CampiIncrociati]![Totale di qta DDT]) AS Espr1
FROM DDT2_Ordini_Prodotti_DDT_CampiIncrociati
GROUP BY DDT2_Ordini_Prodotti_DDT_CampiIncrociati.ID_Ordine;
Grazie