Home — Leistungserfassung — KB0391: Anzeige der Leistungen auf dem Zusatzblatt zu einer Rechnung steuern

KB0391: Anzeige der Leistungen auf dem Zusatzblatt zu einer Rechnung steuern

EINLEITUNG

In der Standardkonfiguration werden auf dem Zusatzblatt zu einer Rechnung sämtliche Leistungen angezeigt. Der nachfolgende Artikel zeigt, wie dieses Verhalten mit Hilfe von Script-Code geändert werden kann. So ist es zum Beispiel einfach möglich, pauschal verrechnete Zeitleistungen nicht anzuzeigen oder Spesen ohne Ertrag auszublenden.

ACHTUNG: Die Unterberichte werden teilweisen von mehreren Hauptberichten verwendet. Sie können einen Unterbericht duplizieren und die Änderungen im duplizierten Unterbericht vornehmen, um sicherzustellen, dass die Änderungen keinen Einfluss auf andere Bereiche haben. Es muss dann im entsprechenden Hauptbericht die Referenz auf den Unterbericht angepasst werden.

PAUSCHALE ZEITLEISTUNGEN AUSBLENDEN

Fügen Sie dazu folgende Zeilen auf dem Unterbericht „B0010_01_ProjektrapportZeitleistungen“ im Bereich „public void Detail_Format()“ ein:

// Einträge mit Dauer verrechenbar = 0 (pauschale Zeitleistungen) ausblenden
TTimeService lAktuellerDatensatz = (TTimeService) mReport.Decorator.AktuellerDatensatz;
if (lAktuellerDatensatz.LDurationInvoiced == 0)
{
mReport.Decorator.SetzeSectionSichtbar("Detail", false);
}
else
{
mReport.Decorator.SetzeSectionSichtbar("Detail", true);
}

MATERIALLEISTUNGEN OHNE ERTRAG AUSBLENDEN

Im Unterbericht mit den Materialleistungen müssen Sie im Detail-Format Ereignis folgenden Code einfügen, um Materialleistugnen ohne Ertrag auszublenden:

// Aktuellen Datensatz auslesen
TMaterialService lAktuellerDatensatz = (TMaterialService)
mReport.Decorator.AktuellerDatensatz;
// Nur Einträge mit Nettobetrag > 0 anzeigen
if (lAktuellerDatensatz.NettoBetrag > 0)
{
mReport.Decorator.SetzeSectionSichtbar("Detail", true);
}
else
{
mReport.Decorator.SetzeSectionSichtbar("Detail", false);
}

SPESENLEISTUNGEN OHNE ERTRAG AUSBLENDEN

Im Unterbericht mit den Spesenleistungen wäre es:

// Aktuellen Datensatz auslesen
TExpenseService lAktuellerDatensatz = (TExpenseService)
mReport.Decorator.AktuellerDatensatz;
// Nur Einträge mit Nettobetrag > 0 anzeigen
if (lAktuellerDatensatz.NettoBetrag > 0)
{
mReport.Decorator.SetzeSectionSichtbar("Detail", true);
}
else
{
mReport.Decorator.SetzeSectionSichtbar("Detail", false);
}

DATEN AUF DEM HAUPTBERICHT FILTERN

Alternativ können Sie die Leistungen (Zeit, Spesen, Material) auf dem Hauptbericht „2001 Zusatzblatt: Alle Leistungen auf einem Bericht“ filtern. Für die Zeitleistungen müssen Sie dazu im Bereich „public void Detail_Format()“ den folgenden Code auskommentieren („//“ entfernen):

lZeiteinträge = (from lEintrag in lZeiteinträge where lEintrag.LDurationInvoiced > 0 select lEintrag).ToList();