Newsgroup: it.comp.appl.access
Titolo: Origine record di un report con un capo calcolato

Salve a tutti
Ho un Report "Inventario" che ha come origine record una select sulla
tabella magazzino.
Il problema è che per trovare la giacenza di un singolo prodotto dovrei fare
la differenza tra la quantità acquistata (Tabella Magazzino) e la quantità
venduta (Tabella Dettaglio_Fatture_Vendita), solo che la quantità venduta
dovrebbe essere il risultato di una somma, in quanto lo stesso prodotto
viene venduto più volte al giorno con diverse fatture.
Se faccio una select sia sulla Tab Magazzino che sulla Tab Dettaglio_Fatt.
mi restituisce tanti record per prodotto quanti ne sono presenti nella
tabella dett.Fatt.(Moltissimi)
Come posso fare ???????
O meglio
come posso scrivere una query che mi restituisca un solo record per prodotto
con la giacenza calcolata come sopra ?
Grazie Antonio

 ha scritto nel messaggio
news:IkYIa.220775$g92.4...@news2.tin.it...

Aggiungi questi tre campi calcolati nella tua query, modificando
opportunamente i nomi delle tabelle e dei campi acquisti e vendite.
 TotaleAcquisti:
DSum("QuantitàAcquistata";"tblDettagliAcquisti";"IDProdotto=" &
[IDProdotto])
TotaleVendite:DSum("QuantitàVendita";"tblVendite";"IDProdotto=" &
[IDProdotto])
Giacenza: Nz([TotaleAcquisti])-Nz([TotaleVendite])
saluti Daniele
---

Scusami se ti rispondo senza provare
Ma la mia origine record non è scritta nel codice VBA, ma nelle proprietà
del riport.
la DSum la prende ugualmente(Scua l'ignoranza), odevo scrivere il tutto in
medo diverso???
Antonio

 ha scritto nel messaggio
news:OKYIa.220894$g92.4...@news2.tin.it...

Ciao Anto, vabbè il caldo ma oltre a sudare come me (sto buttando ettolitri
di sudore per risolvere un mio report provando e riprovando) cosa ti costa a
mettere nella query che origina il tuo report i tre campi calcolati ed usare
il loro nome nel report? caso mai non ho capito una Mazza del tuo problema,
stai tranquillo che Quello della sfera veglia dalla campagna e prima o poi
si farà sentire...:-))
saluti Daniele

 ha scritto nel messaggio
news:ZbZIa.121668$pR3.2...@news1.tin.it...

Scasa ma il problema è: come faccio a mettere nella tabella il campo
calcolato "SUM" senza girare da codice???
MI stò leggermente allucinando , e non capisco più niente.
Antonio


Ricapitolando : I campi calcolati non vanno mai in tabelle, visto che non
hai la query aggiungi queste righe opportunamente modificate nei nomi dei
campi e tabelle alla tua select del report inventario.
 DSum("TuocampoQuantità";"TuaTabellaAcquisti";"IDProdotto=" & [IDProdotto])
AS TotaleAcquisti;
DSum"TuocampoQuantitàVendita";"TuaTabellavendita";"IDProdotto=" &
[IDProdotto]) AS TotaleVendite; Nz([TotaleAcquisti])-Nz([TotaleVendite]) AS
Giacenza;
Spero di esserti stato d'aiuto altrimenti devi aspettare che QUELLI che
SANNO tornino dalle campagne e dal mare (dove vado ora io :-)))
saluti Daniele

 wrote in message
IkYIa.220775$g92.4...@news2.tin.it...

Se la tabella Magazzino ha una struttura simile a questa:
ID1                                 Contatore e chiave primaria
CodProdotto                Testo
QuantitàAcquistata     Numerico
ecc. ecc.
Se la tabella Dettaglio_Fatture_Vendita ha una struttura simile a questa:
ID2                                 Contatore e chiave primaria
CodProdotto                Testo
QuantitàVenduta          Numerico
ecc. ecc.
Creati una query di raggruppamento che abbia un codice SQL simile a questo:
SELECT Magazzino.CodProdotto, Sum(Magazzino.QuantitàAcquistata) AS Acquisti,
Nz(DSum("QuantitàVenduta", "Dettaglio_Fatture_Vendita", "CodProdotto=" &
Chr$(34) & [CodProdotto] & Chr$(34)), 0) AS Vendite, [Acquisti]-[Vendite] AS
Giacenza
FROM Magazzino
GROUP BY Magazzino.CodProdotto;
Se invece il campo CodProdotto fosse di tipo Numerico prova così:
SELECT Magazzino.CodProdotto, Sum(Magazzino.QuantitàAcquistata) AS Acquisti,
Nz(DSum("QuantitàVenduta", "Dettaglio_Fatture_Vendita", "CodProdotto=" &
[CodProdotto]), 0) AS Vendite, [Acquisti]-[Vendite] AS Giacenza
FROM Magazzino
GROUP BY Magazzino.CodProdotto;
A questo punto imposta tale query come origine record del tuo report
Inventario.
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------