Pogledaj upute za PANTHEON™

 Categories
 Početna stranica
[Collapse]PANTHEON
 [Collapse]PANTHEON priručnici
  [Expand]Vodič kroz Datalab PANTHEON Farming
  [Expand]Vodič za mobilni POS
  [Collapse]Vodič po DataLab PANTHEON™-u
   [Expand]Pomoć
   [Collapse]Postavke
    [Expand]Dokumentacija
    [Expand]POS
    [Expand]Dokumentacija-staro
    [Expand]Redak s naredbama
    [Expand]Dokumentacija
    [Expand]Subjekti
    [Expand]Identi
    [Expand]Proizvodnja
    [Expand]Zaposleni
     Kalendar - Vrste zapisa
    [Expand]Računovodstvo
    [Expand]Carina
    [Collapse]Program
     [Collapse]Ispisi u PANTHEONU
      [Collapse]Oblici ispisa
        Prijenos ispisa u druge baze
        Postavke u Administrativnoj Ploči
        Izvoz oblika ispisa
        Uvoz oblika ispisa
        Prečac za ispis
       [Expand]Izvještaji Registar
        Pregled ispisa
       [Expand]Izvještajni dizajner
        Dupliciranje ispisa i mijenjanje tipa ispisa
       [Expand]Izrada Izvještaja
       [Expand]Grupe i Agregati
       [Expand]Poruke pri oblikovanju ispisa
       [Expand]Oblikovanje ispisa
       [Expand]Formatiranje i Isticanje
        Ugniježdene izvještaje (podizvještaji)
       [Expand]Specifičnosti ispisa u PANTHEON-u
       [Collapse]Scenarij
         "Pozdrav, svijete!" Skripta
         Korištenje varijabli, polja baze podataka i agregatnih funkcija
         Korištenje izvještajnih objekata u skripti
         Dogodci
         Primjer korištenja "OnBeforePrint" događaja
         Ispisivanje zbroja grupe u zaglavlju grupe
         Trenutni Zbroj
         "OnAfterData" Događaj
         Servisni objekti
         Koristeći "Engine" objekt
        [Expand]PANTHEON Funkcije za FastReport
        [Expand]Primjeri s Tablicama i Upitima
        Razmatranja o dizajnu izvještaja
       Radno okruženje
     [Expand]Kartice povjerenja
     [Expand]Knjiga pošte
     [Expand]Kartice vjernosti
     [Expand]Ad-hoc analize
     [Expand]Vrste dokumenata
      Tekstovi za dokumente
      Načini dostave
      Izvještaji nadzorne ploče
      Ad-hoc analiza
     [Expand]Izvještaji nadzorne ploče
     [Expand]ARES
      SQL urejevalnik
     [Expand]Administratorska konzola
     [Expand]Zamijeni korisnika Ctrl - U
     [Expand]Elementi nadzorne ploče
   [Expand]Narudžbe
   [Expand]Roba
   [Expand]Proizvodnja
   [Expand]Servis
   [Expand]POS
   [Expand]Novac
   [Expand]Kadrovi
   [Expand]Radna površina
   [Expand]Analize
   [Expand]Plansko-analitički alati ZEUS
   [Expand]Poruke programa
   [Expand]Dodatni programi
   [Expand]Sistemska okolina
   [Expand]Dodatni programi
   [Expand]Stari proizvodi
    Riječnik pojmova
  [Expand]Vodič po PANTHEON Vet
 [Expand]PANTHEON korisnički priručnici
[Expand]PANTHEON Web
[Expand]PANTHEON Granule

Load Time: 765,6262 ms
print   |
Label

Referenciranje polja baze podataka

Dogodci

Do sada smo gledali skripte s samo jednom glavnom procedurom, koja se izvršava kada se izvještaj počne pokretati. U glavnoj proceduri mogu se postaviti inicijalne postavke i inicijalizirati varijable. Međutim, to nije dovoljno za potpunu kontrolu nad procesom generiranja izvještaja. Da bi se omogućila što veća kontrola nad generiranjem izvještaja, svaki objekt ima nekoliko događaja kojima se mogu dodijeliti rukovatelji (tj. procedure u skripti). Na primjer, povezivanje rukovatelja s podatkovnom trakom omogućuje filtriranje zapisa, tako da se traka može sakriti ili otkriti prema ispunjenju specifičnih uvjeta.

Pokažimo proces stvaranja izvještaja i događaje koji se aktiviraju putem jednostavnog izvještaja koji sadrži jednu stranicu i ima jednu “MasterData” traku, s dva “Text” objekta na traci:

clip0191

Kao što je opisano iznad, glavna procedura skripte poziva se na samom početku pokretanja izvještaja. Nakon toga započinju osnovni elementi konstrukcije izvještaja. Prvo se poziva “OnStartReport” događaj objekta "Report". Zatim, prije nego što se kreira izlazna stranica, poziva se “OnBeforePrint” događaj stranice. Ovaj događaj se poziva jednom za svaku dizajnersku stranicu u predlošku izvještaja (dizajnerske stranice ne treba miješati s izlaznim stranicama izvještaja!). U našem primjeru događaj se poziva jednom, jer dizajn izvještaja sastoji se od samo jedne dizajnerske stranice.

Zatim se događaji podatkovnih traka pozivaju u sljedećem redoslijedu:

1. poziva se “OnBeforePrint” događaj trake

2. poziva se “OnBeforePrint” događaj svakog objekta sadržanog u traci

3. svaki objekt se ispunjava podacima (u našem primjeru s vrijednostima “Company” i “Addr1" DB polja)

4. poziva se “OnAfterData” događaj svakog objekta

5. provode se radnje kao što su pozicioniranje objekata na traci (ako među njima postoje rastezljivi objekti), izračunavanje visine trake i rastezanje (ako je rastezljiva)

6. poziva se “OnAfterCalcHeight” događaj trake

7. kreira se nova izlazna stranica ako traka nema dovoljno prostora u bijelom prostoru stranice

8. traka i svi njezini objekti prikazuju se na izlaznoj stranici

9. poziva se “OnAfterPrint” događaj svakog objekta trake

10. poziva se “OnAfterPrint” događaj same trake

Trake se nastavljaju ispisivati sve dok izvor povezan s trakom ima podatke. Nakon toga ispis izvještaja prestaje, poziva se “OnAfterPrint” događaj stranice izvještaja i konačno “OnStopReport” događaj objekta “Report”.

Dakle, korištenjem događaja različitih objekata praktički se može upravljati svakim korakom procesa stvaranja izvještaja. Ključ za korištenje događaja je temeljito razumijevanje procesa izlaza trake, što će biti obrađeno u sljedećim odjeljcima. Većina radnji može se izvesti samo korištenjem “OnBeforePrint” događaja trake; sve izmjene napravljene na objektu prikazuju se odmah. Međutim, ako je traka rastezljiva, nemoguće je reći u ovom događaju na kojoj će se stranici traka ispisati, budući da se izračun visine trake provodi u koraku 5. To se može učiniti, međutim, ili u “OnAfterCalcHeight” događaju u koraku 6 ili u “OnAfterPrint” događaju u koraku 9. Imajte na umu da će u posljednjem događaju traka već biti ispisana, tako da izmjene na objektima neće imati nikakav vidljiv učinak.

Bitno je jasno razumjeti “gdje i kada” se trake ispisuju i razumjeti vremensko usklađivanje (redoslijed pozivanja) svakog od njihovih događaja. Isto vrijedi i za svaki od objekata sadržanih u trakama.



Rate this topic
Was this topic usefull?
Comments
Comment will also bo visible in forum!