Показать сообщение отдельно
Старый 15.01.2008, 14:10   #1  
Blog bot is offline
Blog bot
Участник
 
25,497 / 847 (79) +++++++
Регистрация: 28.10.2006
jinx: Berichte - Standardfunktionen beim ?berschreiben der Fetch Methode
Wird in einemBericht die Fetch Methode ?berschrieben sollte man drauf achten, dass die Standardfunktionenauch noch richtig funktionieren. Ein gutes Beispiel hier sind die Einstellungen imSeitenbereich.


Wird in der FetchMethode nicht super() aufgerufen und mit einer individuellen Abfrage gearbeitet, welchedie Daten dem Bericht ?bergibt, werden die Einstellungen in der Gruppe "Seitenbereich"meist ignoriert. Es werden dann zwar nur die angebenden Seiten gedruckt, die Abfragewird aber weiter durchgef?hrt. Das f?hrt dann dazu, dass immer abgewartet werden mussbis die komplette Abfrage ausgef?hrt wurde, obwohl man evtl. nur einen kleinen Bruchteilder Daten (wie z.B. die erste Seite) ben?tigt.
Das kann man ganzeinfach verhindern indem in der Fetch Methode abgefragt wird, ob die Daten an denBericht gesendet wurden. Hierzu wird die send(...) Methode benutzt.
public booleanfetch()
{
Query queryBuild;
QueryRun queryRunBuild;
InventTrans iTrans;
;
if (this.prompt())
{
queryBuild = this.query();
queryRunBuild = new QueryRun(queryBuild);

while (queryRunBuild.next())
{
iTrans = queryRunBuild.get(tablenum(InventTrans));

//Wurde der aktuelle Datensatz ausgeben
if (!this.send(iTrans))
return true;
}
}
return true;
}

Es muss also immer?berpr?ft werden, ob die Daten gedruckt werden oder nicht. Das passiert mit:

if (!this.send(meineDaten))
return true;
>
Es wird keine Haftung oder Gew?hrleistung auf die Richtigkeit der gemachten Angaben gegeben. Die Verwendung erfolgt auf eigene Gefahr. Copyright © Axel K?hn (Aku's AX Blog, http://blog.ak-home.net) and Mathias F??ler (jinx's AX Blog, http://starside.eu)

More...