Navodila za PANTHEON

 Kazalo
 Glavna stran - Dobrodošli v PANTHEON navodila
[Collapse]PANTHEON
 [Collapse]Vodiči za PANTHEON
  [Collapse]Vodič po PANTHEON-u
   [Expand]Pomoč
   [Collapse]Nastavitve
    [Expand]Subjekti
    [Expand]Identi
    [Expand]POS
    [Expand]Proizvodnja
    [Expand]Zaposleni
     Koledar
    [Expand]Računovodstvo
    [Expand]Carina
    [Expand]Dokumentacija
    [Collapse]Program
     [Expand]Vrste dokumentov
     [Collapse]Izpisi v PANTHEON-u
       Delovno okolje
       Izvozi ime datoteke
       Poročila Register
       Posebnosti izpisov
       Nastavitve
       Predogled tiskanja
       Zgradba izpisa
       Objekti
      [Expand]Oblikovalec poročil
       Izrazi
      [Expand]Ustvarjanje poročil
      [Expand]Skupine in agregati
       Grupiranje in številčenje
      [Expand]Funkcije
      [Expand]Oblikovanje in označevanje
       Sistemske spremenljivke
       Vgrajena poročila (podporočila)
       Uvoz in izvoz
      [Collapse]Skripta
        "Pozdravljen, svet!"
        Uporaba spremenljivk, polj podatkovne baze in agregatnih funkcij
        Dogodki
        Primer uporabe dogodka "OnBeforePrint"
        Izpis skupne vsote v skupinskem glavi
        Skupaj
        "OnAfterData" Dogodek
        Storitveni objekti
        Uporaba objekta "Motor"
       Tabele in poizvedbe
       Prenos izpisa v druge baze
       Izvoz oblike izpisa
       Uvoz oblike izpisa
       Bližnjica na izpis
       Podvajanje izpisov in spreminjanje tipa izpisa
      [Expand]Uporaba izraza SQLEXP v izpisih
      [Expand]Sporočila pri oblikovanju izpisov
      [Expand]Oblikovanje izpisov
     [Expand]Teksti za dokumente
      Načini dostave
     [Expand]Kartice zaupanja
     [Expand]Administratorska konzola
     [Expand]Gradniki nadzorne plošče
      Poročila nadzorne plošče
      Poročila nadzorne plošče
      Ad-hoc analize
     [Expand]ARES
      SQL urejevalnik
    [Expand]Zamenjaj uporabnika Ctrl - U
   [Expand]Naročila
   [Expand]Proizvodnja
   [Expand]Blago
   [Expand]Servis
   [Expand]Denar
   [Expand]Kadri
   [Expand]Namizje
   [Expand]Analitika
   [Expand]Sporočila programa
   [Expand]Uradna pojasnila
   [Expand]Sistemsko okolje
   [Expand]Dodatni programi
    Slovar izrazov
   [Expand]Zastareli produkti
  [Expand]Vodič po PANTHEON Farming
  [Expand]Vodič po PANTHEON Retail
  [Expand]Vodič po PANTHEON Vet
 [Expand]Uporabniški priročniki za PANTHEON
[Expand]PANTHEON Web
[Expand]PANTHEON Granule
[Expand]Uporabniške strani

Load Time: 1031,256 ms
print   |
Label

Referenciranje polj baze podatkov

Dogodki

Do sedaj smo si ogledali skripte z le glavno proceduro, ki se izvede, ko se poročilo začne izvajati. V glavni proceduri lahko naredimo začetne nastavitve in inicializiramo spremenljivke. Vendar to ni dovolj za popoln nadzor nad procesom generiranja poročila. Da bi omogočili čim večji nadzor nad generiranjem poročila, ima vsak objekt več dogodkov, na katere lahko dodelimo obdelovalce (tj. procedure v skriptu). Na primer, povezovanje obdelovalca z podatkovnim pasom omogoča filtriranje zapisov, tako da je pas mogoče skriti ali razkriti glede na izpolnitev določenih pogojev.

Prikažimo postopek ustvarjanja poročila in dogodke, ki jih sproži preprosto poročilo, ki vsebuje eno stran in ima en pas "MasterData", z dvema objektoma "Text" na pasu:

clip0191

Kot je opisano zgoraj, se glavna procedura skripte pokliče na samem začetku izvajanja poročila. Po tem se začnejo bistvene stvari pri konstrukciji poročila. Najprej se pokliče dogodek "OnStartReport" objekta "Report". Nato, preden se ustvari izhodna stran, se pokliče dogodek "OnBeforePrint" strani. Ta dogodek se pokliče enkrat za vsako oblikovalsko stran v predlogi poročila (oblikovalske strani ne smemo zamenjati z izhodnimi stranmi poročila!). V našem primeru se dogodek pokliče enkrat, saj zasnova poročila vsebuje le eno oblikovalsko stran.

Nato se dogodki podatkovnih pasov pokličejo v naslednjem vrstnem redu:

1. pokliče se dogodek pasu "OnBeforePrint"

2. pokliče se dogodek "OnBeforePrint" vsakega objekta, ki je vsebovan v pasu

3. vsak objekt se napolni s podatki (v našem primeru z vrednostmi polj "Company" in "Addr1")

4. pokliče se dogodek "OnAfterData" vsakega objekta

5. izvedejo se dejanja, kot so pozicioniranje objektov na pasu (če so med njimi raztegljivi objekti), izračun višine pasu in raztegovanje (če je raztegljiv)

6. pokliče se dogodek pasu "OnAfterCalcHeight"

7. ustvari se nova izhodna stran, če pas nima dovolj prostora v belem prostoru strani

8. pas in vsi njegovi objekti se prikažejo na izhodni strani

9. pokliče se dogodek "OnAfterPrint" vsakega objekta pasu

10. pokliče se dogodek "OnAfterPrint" samega pasu

Pasi se nadaljujejo s tiskanjem, dokler ima vir, povezan s pasom, podatke. Po tem se tiskanje poročila ustavi, pokliče se dogodek "OnAfterPrint" strani poročila in na koncu dogodek "OnStopReport" objekta "Report".

Tako lahko z uporabo dogodkov različnih objektov praktično upravljamo vsak korak procesa ustvarjanja poročila. Ključ za uporabo dogodkov je temeljito razumevanje procesa izhoda pasu, o katerem bomo razpravljali v naslednjih razdelkih. Večina dejanj se lahko izvede le z uporabo dogodka "OnBeforePrint" pasu; vse spremembe, ki jih naredimo na objektu, se takoj prikažejo. Vendar, če je pas raztegljiv, ni mogoče v tem dogodku povedati, na kateri strani bo pas natisnjen, saj se izračun višine pasu izvede v koraku 5. To je mogoče storiti bodisi v dogodku "OnAfterCalcHeight" v koraku 6 bodisi v dogodku "OnAfterPrint" v koraku 9. Upoštevajte, da bo v zadnjem dogodku pas že izhod, zato spremembe na objektih ne bodo imele vidnega učinka.

Pomembno je jasno razumeti "kje in kdaj" se pasovi izhodijo in razumeti časovni razpored (vrstni red klicev) vsakega od njihovih dogodkov. Prav tako za vsak od objektov, ki so vsebovani v pasovih.



Ali so bila ta navodila uporabna?
Vaše povratne informacije bodo prispevale k boljši pomoči.
Komentarji
Komentarji so izpostavljeni tudi na forumu.