Newsgroup: it.comp.appl.access
Titolo: aiuto su somma (DSUM) in piè di pagina di report

la situazione e la seguente:
ho una query, mettiamo QueryXYZ, dalla quale creo un report che mi da
i dati delle fatture che scadranno nel periodo DA A immessi da utente
con popup classico della query (e dove ho il controllo
Month([Scadenza]) BETWEEN [Da] AND [A] )
la query ed il report funzionano bene.
cio che poi voglio fare e avere un totale residuo ed un totale pagato
alla fine del report (calcolato dal campo [Importo] della tabella
[Rate]):
ho dunque cosi inserito nel pie di pagina del report:
"totale residuo" 
=DSum("[Importo]","[QueryXYZ]","[Valuta] = 2 AND [Pagato] = false AND
Month([Scadenza]) BETWEEN [Da] AND [A]")
ma non mi funziona, o non visualizza nulla o da #errore
tralasciando la sintassi dell'espressione, non e li l'errore xe ho la
versione inglese di win2k quindi ho "," invece di ";" qualcuno ha la
minima idea del perche non dovrebbe funzionare?
devo forse mettere la funzione non nel pie di pagina ma altrove? devo
forse staccare il BETWEEN dai criteri della funzione? devo forse
pregare la madonna?
scusate ma sono tre giorni (dico tre) che non riesco a passare questo,
credo stupidissimo, scalino.
vi prego aiutatemi!
:)
-g-

 ha scritto nel messaggio
news:3d9868a4...@powernews.inwind.it...

In effetti dà errore anche a me nel caso in cui QueryXYZ è parametrica; non
saprei proprio ipotizzare il perché: speriamo che quelche altro
frequentatore sa darci un motivo.
Nel frattempo, se vuoi andare avanti, nell'origine controllo della casella
di testo non associata che hai inserito nel piè di pagina report scrivi:
=Somma(IIf([Valuta]=2 And [Pagato]=Falso And (Month([Scadenza]) Between [Da]
And [A]);[Importo];0))
Chi vivrà vedrà. :-)
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

Chi vivra vedra. :-)
grazie, ora provo.
a dire la verita avevo provato anche con somma ma non pensavo si
potesse adoperare in questa maniera (con iif e le condizioni per la
query). col fatto che somma prende solo un parametro non c'avevo
proprio pensato...
se funziona sei ancora + mitico del tuo solito...
prova...
attendere...
si, funziona!
GRAZIE, sei veramente provvidenziale... sei un ultra mito!
sapevo che era una cosa banale ma le cose banali in access non mi
vengono mai.
cmq ancora i miei + sentiti ringraziamenti.
saluti,
Giacomo

 Month([Scadenza]) BETWEEN [Da] AND [A]")
[...]
    Togli le parentesi quadre all'argomento "dominio" (il secondo argomento
delle funzioni di aggregazione sui domini).
    =DSum("[Importo]","QueryXYZ",...
    Le parentesi quadre vanno usate solo per i nomi di campo e non sono
obbligatorie. Ma meglio metterle sempre...
--
Ciao :-)
Maurizio
--------
?SPQR(C)
 X
--------

 --------
--


 QueryXYZ non è parametrica.
    Oops!... Non avevo colto che QueryXYZ fosse parametrica. Meglio: non
avevo colto proprio niente, distratto dalle mie preziosissime parentesine...
:-(
    Cioe' vuoi dire, Giacomo, che con quel "[Da] AND [A]" intenderesti
passare i parametri alla query "QueryXYZ"? Ho capito, adesso?


passare i parametri alla query "QueryXYZ"? Ho capito, adesso?
esatto, e una query parametrica il cui criterio e Expr1:
Month([Scadenza]) BETWEEN [Da] AND [A] 
comunque grazie alla prima soluzione di Roberto ora mi funziona.
x la Dsum il problema non era la sintassi ma appunto, almeno pare, il
fatto che la query era parametrica.
grazie comunque per il disturbo!
:)
-g-

 frequentatore sa darci un motivo.
Che intendi con parametrica?
Antonio

 ha scritto nel messaggio
news:K8dm9.34436$e31.7...@twister2.libero.it...

Intendo che se la DSum ha come dominio una query che ha questo tipo di
codice SQL:
SELECT Tabella1.Scadenza, Tabella1.Importo, Tabella1.Valuta, Tabella1.Pagato
FROM Tabella1
WHERE (((Month([Scadenza])) Between [Da] And [A]));
o comunque contiene la proposizione WHERE (quindi la query è parametrica) ,
non funziona (nel controllo del report si visualizza la scritta #Errore).
Se invece il dominio è una query ha un codice SQL di questo tipo:
SELECT Tabella1.Scadenza, Tabella1.Importo, Tabella1.Valuta, Tabella1.Pagato
FROM Tabella1;
e quindi la query non è parametrica, la Dsum funziona correttamente.
Non mi era mai capitata una cosa del genere, e si che la funzione di
aggregazione sui dominii le uso a bizzeffe. :-(


 non funziona (nel controllo del report si visualizza la scritta #Errore).
Ho provato con una query con where di costanti e funziona.
Probabilmente il problema è solo con query parametrica che punta a valori
esterni come nei casi di richiesta di parametri o riferimenti a controlli di
maschere.
Questa cosa comunque non mi sorprende più di tanto: in fondo è come quando
si apre un recordset su una query parametrica e ti dice che manca un
parametro (Richiesto 1 hai presente?)...
Antonio

 Antonio

 parametriche che puntano a valori esterni: però è evidente che sia così.
:o)
Ripeto: secondo me infatti è assurdo usare le funzioni sui domini usando
query con parametri.
I filtri me li faccio usando i criteri della funzione a quel punto!!!
Antonio

 Antonio
