Pantheon User Manual

 Sadržaj
 Glavna strana- Dobrodošli u PANTHEON uputstva
[Collapse]PANTHEON
 [Collapse]PANTHEON priručnici
  [Collapse]Priručnik za PANTHEON
   [Expand]Pantheon Hosting
   [Expand]Pomoć
   [Collapse]Podešavanja
    [Expand]Subjekti
    [Expand]Identi
    [Expand]POS
    [Expand]Proizvodnja
    [Expand]Zaposleni
     Kalendar
    [Expand]Računovodstvo
    [Expand]Carina
    [Collapse]Program
     [Expand]Vrste dokumenata
     [Expand]Ispisi u PANTHEON-u
     [Collapse]Oblici ispisa
       Prenos ispisa u druge baze
       Izvoz oblika ispisa
       Uvoz oblika ispisa
      [Expand]Izveštaji Registar
       Prečica za ispis
       Dupliranje ispisa i promena tipa ispisa
       Pregled štampe
      [Expand]Izvještajni dizajner
      [Expand]Upotreba izraza SQLEXP u ispisima
      [Expand]Obaveštenja prilikom oblikovanja ispisa
      [Expand]Pravljenje izveštaja
      [Collapse]Grupe i Agregati
        Izveštaj sa Grupama
        Karakteristike Grupe
        Numerisanje linija
        Agregatne funkcije
        Stranica i Izveštaj Ukupno
        Korišćenje "SysText" objekta
      [Expand]Oblikovanje ispisa
      [Expand]Formatiranje i Isticanje
       Ugnježdene izveštaje (podizveštaji)
     [Expand]Šifarnik tekstova za vrste dokumenata
      Načini dostave
     [Expand]ARES
     [Expand]Administratorska konzola
     [Expand]Elementi kontrolne table
      Izveštaji na kontrolnoj tabli
      Ad-hoc analiza
     [Expand]Kartice poverenja
     [Expand]Izveštaji kontrolne table
     [Expand]Trenutni korisnik Ctrl - U
     [Expand]Ad-hoc analize
      SQL editor
     [Expand]Poštanska knjiga
      Klasifikacijski plan
    [Expand]Dokumentacija
   [Expand]Narudžbine
   [Expand]Roba
   [Expand]Proizvodnja
   [Expand]POS
   [Expand]Servis
   [Expand]Novac
   [Expand]Kadrovi
   [Expand]Radna površina
   [Expand]Analitika
   [Expand]Korisničke strane
    Dodatno
   [Expand]Poslovni saveti
   [Expand]Dodatni programi
   [Expand]Plansko-analitički alat ZEUS
   [Expand]Obaveštenja programa
   [Expand]Zvanična mišljenja
   [Expand]Sistemska okolina
   [Expand]Dodatni programi
    Rečnik izraza
   [Expand]Zastareli produkti
  [Expand]Vodič po DataLab PANTHEON™ Farming
  [Expand]Vodič za mobilni POS
  [Expand]Vodič za PANTHEON Vet
 [Expand]PANTHEON korisnički priručnici
[Expand]PANTHEON Web
[Expand]PANTHEON Granule

Load Time: 1046.8858 ms
print   |
Label

Agregatne funkcije

Agregatne funkcije

U većini slučajeva, grupni izveštaji treba da prikazuju neku sažetu informaciju (kao što su: “ukupno grupe”, “broj elemenata grupe” itd). FastReport pruža agregatne funkcije za izračunavanje agregatnih vrednosti preko nekog opsega podataka.

Agregatne funkcije su:

Funkcija Opis
SUM vraća ukupno izraza
MIN vraća minimalnu vrednost izraza
MAX vraća maksimalnu vrednost izraza
AVG vraća prosečnu vrednost izraza
COUNT vraća broj redova (linija) u opsegu podataka

Sintaksa svih agregatnih funkcija (osim COUNT) je slična onoj kod SUM funkcije:

 

SUM(izraz, bend, zastavice)

SUM(izraz, bend)

SUM(izraz)

 

Parametri su:

izraz – izraz koji treba izračunati

bend – naziv data benda unutar kojeg se vrši izračunavanje

zastavice – bit polje, sa vrednostima

                 1 : uključiti nevidljive bendove u izračunavanje

                 2 : akumulirati agregat kao tekući zbir

                      (ne resetovati agregat kada se trenutni opseg podataka resetuje)

                 3 : (obe prethodne opcije)

 

Izraz je jedini obavezni parametar, ostala dva su opcionalna. Ipak, da bi se izbegle greške, preporučuje se da se parametri benda uvek navedu.

Agregatna funkcija “COUNT” ima sledeću sintaksu:

COUNT(bend, zastavice)

COUNT(bend)

gde parametri imaju isto značenje kao gore.

Postoji opšte pravilo za sve agregatne funkcije: agregat se može izračunati samo preko data benda i može se koristiti samo u podnožju tog benda, koje može biti jedno od: podnožje, podnožje stranice, podnožje grupe, podnožje kolone ili podnožje izveštaja (sažeti bend).

Kako funkcionišu agregatne funkcije? Pogledaćemo to koristeći naš primer grupnog izveštaja. Dodajmo neke nove elemente u izveštaj:

clip0177

Polje Grupa.“ItemsTotal” u data bendu prikazuje trenutni ukupni iznos narudžbine. Postavite “Text” objekat u podnožje grupe koje sadrži agregat SUM prikazan iznad. Prikazaće ukupno svih narudžbina koje je postavio dati kupac. Koristeći kalkulator, možemo proveriti da li je rezultat tačan:

_img134

Agregatne funkcije rade ovako: pre nego što se izveštaj prikaže, FastReport skenira sadržaj “Text” objekta da pronađe sve agregatne funkcije. Pronađeni agregati su povezani sa data bendovima u njihovim parametrima (u našem primeru “SUM” je povezan sa “MasterData1” bendom). Tokom prikazivanja izveštaja (kada se data bend prikazuje) vrednosti agregata povezanih sa njim se izračunavaju. U našem slučaju, vrednosti polja Grupa.“ItemsTotal” se akumuliraju. Kada se podnožje grupe koje prikazuje agregat prikaže, vrednost agregata se resetuje na nulu, a ciklus se ponavlja za sledeću grupu, i tako dalje.

Koja je svrha opcionalnog parametra “Flags” u agregatnim funkcijama? Izveštaji mogu imati neke, ili sve, data bendove skrivene. Međutim, možda ćemo morati da izračunamo agregate preko svih data bendova, bilo da su vidljivi ili ne. U našem primeru, postavite “Visible” svojstvo data benda na false, tako da sprečite njegovo prikazivanje. Da bismo i dalje uključili ovaj skriveni data bend u izračunavanja, moramo postaviti treći, opcionalni parametar u pozivu funkcije na broj 1, tj.:

[SUM(<Group."ItemsTotal">,MasterData1,1)]

Ovo proizvodi izveštaj koji izgleda ovako:

_img135

Kada je vrednost parametra “Flags” postavljena na 2, vrednost agregata se ne resetuje odmah nakon što se prikaže: agregat postaje “tekuće” izračunavanje za svako uzastopno prikazivanje. Hajde da modifikujemo poziv funkcije kao što je ovde prikazano:

[SUM(<Group."ItemsTotal">,MasterData1,3)]

Vrednost “3” je bitna kombinacija “1” i “2”, što znači da treba uključiti nevidljive bendove, bez resetovanja ukupnog iznosa nakon svake grupe. Kao rezultat, imamo:

_img136

 Ukoliko postoji uslov za vidljivost u događaju "OnBeforePrint" benda, zastavice nemaju efekat.



Oceni ovu temu
Da li je ova tema korisna?
Komentari
Komentari će biti vidljivi i na forumu!