Menü

Die Abfolge der Ereignisse bei einfachem Durchlauf
(Pascal-Script)

Zurück | Ebene zurück

Beim einfachen Durchlauf wird jedes Ereignis ein einziges mal aufgerufen. Im folgenden Diagramm ist die Abfolge der Ereignisse dargestellt. Dabei gehen wir von einem einfachen Bericht ohne Unterberichte aus und beschränken uns auf die in EULANDA® gebräuchlichen Ereignisse  von
    Bericht
    Seitenstil
    Titel
    Kopf
    Detailbereich
    Zusammenfassung
    Fuß .
Die Ereignisse der Objekte (Calc, DBCalc, TextField) werden hier außen vor gelassen. Wann genau die Ereignisse dieser Objekte aufgerufen werden, ist nicht von entscheidender Bedeutung, sie werden bis auf wenige Ausnahmen in der EULANDA® kaum benutzt.
 

Report BeforePrint
Report OnStartFirstPass
Report OnStartPage			(*)

    	PageStyle BeforePrint
    	PageStyle BeforeGenerate
    	PageStyle AfterGenerate
    	PageStyle AfterPrint

		Title BeforePrint
		Title BeforeGenerate
		Title AfterGenerate
		Title AfterPrint

    			Header BeforePrint
    			Header BeforeGenerate
    			Header AfterGenerate
    			Header AfterPrint

        	    			Detail BeforePrint
    	    			Detail BeforeGenerate
    	    			Detail AfterGenerate
    	    			Detail AfterPrint

			Summary BeforePrint
			Summary BeforeGenerate
			Summary AfterGenerate
			Summary AfterPrint

    		Footer BeforePrint
    		Footer BeforeGenerate
    		Footer AfterGenerate
    		Footer AfterPrint

Report OnEndPage		(**)
Report OnEndFirstPass
Report AfterPrint

Der Bereich von OnStartPage (*) bis OnEndPage (**) wird für jede Seite einmal aufgerufen, sofern die entsprechenden Bereiche (wie Summary oder Title) existieren.
D.h. bei einer 3-seitigen Rechnung (Detailbereich erstreckt sich über 3 Seiten) wird OnStartPage und OnEndPage dreimal aufgerufen, die Ereignisse von PageStyle und Detail auch, die Ereignisse von Title und Summary dagen nur einmal (auf der ersten Seite Title und auf der letzten Seite Summary). Die Ereignisse von Fuß und Kopf so oft wie selbige gedruckt werden.

Zusammenfassend kann man also sagen, dass die Ereignisse eines bestimmten Bereichs so oft aufgerufen werden, wie dieser Bereich gedruckt wird, auch wenn es nur ein Teil ist. Erstreckt sich der Detailbereich beispielsweise über 3 Seiten, so werden auch dreimal die Ereignisse DetailBeforePrint, AfterPrint usw. aufgerufen. Geht man davon aus, dass der Fuß auf jede Seite gedruckt wird so werden auch pro Seite einmal die Ereignisse des Fußes aufgerufen. Sprich alles was zwischen (*) und (**) liegt wird jedes Mal auf einer neuen Seite aufgerufen, falls der entsprechende Bereich dort existiert.


Dies ist das Grundgerüst. Durch hinzufügen von Gruppen (Groups) oder Unterberichten kommen einige Ereignisse hinzu. Wie diese einzuordnen sind können Sie den folgenden Seiten entnehmen.

Mit Gruppen (Pascal-Script)
Mit Unterbericht (Pascal-Script)