Newsgroup: it.comp.lang.visual-basic
Titolo: [Semi OT] Sempre CR

Ragazzi non ce la faccio più!!!
Allora.... In CR9 faccio un report che fa, colonna per colonna, la Sum() 
di importi presi da altre tabelle e il report è raggruppato per data, 
nel senso che vengono scanditi "daily" i giorni di una tabella chiamata 
"globale".
Quindi colonna per colonna faccio:
   ToText(Sum({tabellaesterna.importo},{globale.data}),"0.00")
Questo ovviamente nel group header o footer.
Tutto fila liscio finchè non arriva la colonna in cui mi tocca 
visualizzare la Sum() di un campo interno alla tabella globale stessa.
In questo caso tutti gli altri importi vengono aumentati di valore, 
credo perchè si imputtani qualche contatore interno di CR.
Chi può aiutarmi per favore??????
-- 
Nella vita una sola cosa è certa: se la storia ci ha insegnato qualcosa, 
è che si può uccidere chiunque. (Micheal Corleone)

 wrote:
[CUT]
Allora fammi capire:
posta le tabelle che usi con i relativi collegamenti e i campi che
utilizzi per la sommatoria.
Saluti.
Andrea.

Ho delle varie tabelle, chiamate:
* interventi;
* pasti;
* prestazioni;
e la tabella "globale".
In ogni tabella ci sono delle informazioni specifiche: Nome, Cognome, 
CodFis, Imponibile, IVA, Imponibile+Iva, Importo e Data (il giorno in 
cui č stata emessa quella specifica fattura) e in piů ogni tabella ha 
poi campi propri che non ci sono nelle altre tabelle.
Nella tabella "globale" invece ci sono informazioni appunto globali 
(quelle comuni a tutte le altre tabelle, tra cui la Data di emissione 
della fattura).
Quindi io ho fatto il report inserendo "un solo" raggruppamento: la data 
presente nella tabella "globale".
In questo modo il mio report inizialmente mi visualizza un elenco di 
tutti i giorni in cui sono state emesse delle fatture (ho bloccato la 
duplicazione dei dati nel report, cosě se in tabella un certo giorno č 
presente 20 volte io lo faccio comparire una sola volta).
Ora...
Il report deve essere di questo tipo:
DATA / Imp. interv. / Imp. Pasti / Imp. Prestaz. / Imp. IVA
Cioč:
- DATA (la prima colonna) vuole tutte le date presenti nella tabella 
globale, e fin qui ok.
- Imp. Interv. vuole la somma della colonna "importo" della tabella 
Interventi per quella specifica data.
- Imp. Pasti idem
- Imp. Prestaz. idem
Infatti nel report nel group header (che č l'terazione di tutte le date 
della tabella globale) io metto dei templatefield in cui uso la formula 
di visualizzazione del tipo:
ToText(Sum({Prestazioni.importo}),{globale.data}), "0.00")
che in questo caso mi esegue la somma degli importi della tabella 
"prestazioni" nella data che sta iterando in quel momento.
E cosě via per gli altri importi.
Quando perň arrivo a dover calcolare l'importo+iva, che č un campo della 
tabella globale, io metto un templatefield con questa formula:
ToText(Sum({globale.impiva}, {globale.data}), "0.00")
che "dovrebbe" darmi la sommatoria di tutti i campi impiva della tabella 
globale a quella specifica data.
Quando perň calcola questa sommatoria il resto delle somme se ne va a 
farsi benedire. Semplicemente se tolgo questo templatefield (o annullo 
la sua formula) il resto delle somme va bene.
Pare che la tabella "globale", che č in uso per iterare l'elenco delle 
date nella prima colonna, non possa essere utilizzata per fare una 
sommatoria dei suoi campi, altrimenti non riesce piů a fare bene gli 
altri calcoli.
Infatti quando viene eseguita quest'ultima somma, se ad esempio CR trova 
nella tabella globale 3 campi da sommare (se per esempio solo 3 campi 
impiva sono riferiti alla data correntemente iterata), le altre somme 
vengono moltiplicate per tre.
Come posso fare? Possibile che mi vengano sbagliati i calcoli in questo 
modo?
Nel database expert, nella scheda dei links, ho linkato la tabella 
globale alle altre tramite il campo DATA (con link uscente da globale in 
direzione di tutte le altre tabelle). Praticamente un link uno a molti.
Va bene cosě? Anche perchč con altri tipi di link non vengono 
visualizzati tutti i giorni della tabella globale ma solo alcuni (solo 
quelli in comune a tutte le tabelle, e non va bene).
Grazie tante per l'aiuto!
-- 
Nella vita una sola cosa č certa: se la storia ci ha insegnato qualcosa, 
č che si puň uccidere chiunque. (Micheal Corleone)