[ cepak @ 22.11.2007. 22:04 ] @
Da li je neko od Vas imao problem sa tacnoscu suma u Free Reportu. Koristim Turbo Delphi 2006 i FreeReport verziju 2.33. Tabele su Interbase a komponente za citanje FIBPlus.
Simulacija problema

Imam 5 polja od koji se 3 citaju iz tabele a 2 se izracunavaju u OnCalcField.

Polje1 Promenljiva1 Promenljiva2 Promenljiva3 Promenljiva4



Polje1, Promenljiva1, Promenljiva2 se citaju iz tabele dok se Promenljiva3 i Promenljiva4 izracunavaju na sledeci nacin

Code:

if (Promenljiva1 >=Promenljiva2) then
begin
  promenljiva3:=Promenljiva1 - promenljiva2;
  promenljiva4:=0;
end else
begin
  promenljiva4:=-(Promenljiva1 - promenljiva2);
  promenljiva3:=0;
end;


Report se generise tako sto se rezultati grupisu po polju1 Group Header Band, i sumiraju po grupi u Group Footer Band-u.
Medjutim kad se sumiraju promenljiva3 i promenljiva4, ukoliko su u grupi sve 0 suma se dobija -4.82, -9 itd. a u sumi u Report summary band-u te se vrednosti ne pojavljuju, tj. sume su tacne.

Prikaz promenljiva3=0 i promenljiva4 = 0 u Master data bandu su tacne, ali suma u Group footer bandu netacne ako treba da se saberu 0. Ukoliko je bar jedan podatak razlicit od 0 suma je tacna
[ priki @ 23.11.2007. 08:38 ] @
> sumiraju po grupi u Group Footer Band-u.

treba da se sumiraju u detail band-u tog reporta
za svaki record koji pripada toj grupi

znači
Code:

    promenljiva3 := promenljiva3 + (Promenljiva1 - promenljiva2);


a da se na resetiraju na Group Header Band,
Code:

    promenljiva3 := 0;



i trebaš imati još koju promenjivu ako na kraju reporta radiš total sum
[ cepak @ 24.11.2007. 12:08 ] @
priki,
bojim se da ovo takodje ne daje rezultat. Zasto, greska nastaje ako se group header nalazi fizicki na jednom a Group Footer na drugom listu, ali mora da postoji bar po jedan podatak na oba lista. Kako to resavati? Ovo se desava bez obzira da li je podatak izracunat u tabeli na OnCalcField ili u Reportu.
[ priki @ 24.11.2007. 18:27 ] @
Citat:

> greska nastaje ako se group header
> nalazi fizicki na jednom a Group Footer na drugom listu, ali mora da postoji bar po
> jedan podatak na oba lista. Kako to resavati?



ovo nema veze,
svaki group header ima svoj group footer i
sve za njih se se računa u okviru njih,
bez obzira na broj listova

bar je tako bilo u svim reportima sa kojima sam radio

pogledaj da li si sve ok podesio oko header-a i footer-a