Home — Leistungserfassung — KB0438: Weitere Daten auf Rechnungs-Deckblatt ausgeben

KB0438: Weitere Daten auf Rechnungs-Deckblatt ausgeben

HINWEIS

Die nachfolgende Beschreibung gilt ab Version 14.0.0 der TimeSafe Leistungserfassung.

BESCHREIBUNG

In der TimeSafe Leistungserfassung ist es sehr einfach möglich, den Inhalt von frei definierbaren Feldern auf dem Rechnungs-Deckblatt anzuzeigen.
Schauen Sie sich auch die detaillierte Anleitung für die Arbeit mit dem Berichts-Designer im Berichts-Manager an.

AUSGABE EINES FREI DEFINIERBAREN FELDS ÜBER DIE EIGENSCHAFT „DATAFIELD“ EINES CONTROLS ANHAND EINES BEISPIELS

Gehen Sie wie folgt vor, um den Inhalt des frei definierbaren Textfeldes „Bestellnummer Kunde“ zu einem Projekt auf dem Rechnungs-Deckblatt anzuzeigen:

  1. Melden Sie sich mit einem Benutzer an TimeSafe an, der über Vollzugriff auf die Stammdaten verfügt.
  2. Navigieren Sie auf der linken Seite zum Hauptmenupunkt «Stammdaten» und danach zum Untermenupunkt «Datenfeld-Manager»
  3. Selektieren Sie in der Liste auf der rechten Seite das freie Feld „Bestellnummer Kunde“
  4. Wählen Sie den Befehl „Schlüssel kopieren“, um den Schlüssel des freien Feldes in die Zwischenablage zu kopieren
  5. Navigieren Sie auf der linken Seite zum Untermenupunkt «Berichts-Manager»
  6. Suchen Sie die gewünschte Berichtsdefinition, indem Sie im Filter in der Auswahlbox den Eintrag «Rechnungs-Deckblatt» selektieren
  7. Wählen Sie die gewünschte Berichtsdefinition in der Liste und selektieren Sie in der Ribbon-Gruppe „Bericht-Layout“ den Befehl «Bearbeiten»
  8. Fügen Sie mit der Hilfe des nun angezeigten Bericht-Designers ein neues Control vom Typ „TextBox“ hinzu und platzieren Sie das Control an der gewünschten Stelle.
  9. Gehen Sie in die Control-Box mit den Eigenschaften der soeben eingefügten TextBox
  10. Klicken Sie mit der rechten Maustaste auf die leere Zelle rechts neben der Eigenschaft „DataField“ und wählen Sie „Einfügen“.
    Dadurch wird der Schlüssel des freien Feldes in der Form „dbbe88a9-c4eb-4ef0-97b3-81cdb1b68471“ eingefügt

AUSGABE EINES FREI DEFINIERBAREN FELDES MIT SCRIPTCODE ANHAND EINES BEISPIELS

Gehen Sie wie folgt vor, um den Inhalt des frei definierbaren Textfeldes „Bestellnummer Kunde“ zu einem Projekt auf dem Rechnungs-Deckblatt anzuzeigen:

  1. Melden Sie sich mit einem Benutzer an TimeSafe an, der über Vollzugriff auf die Stammdaten verfügt.
  2. Selektieren Sie in der Liste auf der rechten Seite das freie Feld „Bestellnummer Kunde“
  3. Wählen Sie den Befehl „Schlüssel kopieren“, um den Schlüssel des freien Feldes in die Zwischenablage zu kopieren
  4. Navigieren Sie auf der linken Seite zum Untermenupunkt «Berichts-Manager»
  5. Suchen Sie die gewünschte Berichtsdefinition, indem Sie im Filter in der Auswahlbox den Eintrag «Rechnungs-Deckblatt» selektieren
  6. Wählen Sie die gewünschte Berichtsdefinition in der Liste und selektieren Sie in der Ribbon-Gruppe „Bericht-Layout“ den Befehl «Bearbeiten»
  7. Fügen Sie mit der Hilfe des nun angezeigten Bericht-Designers ein neues Control vom Typ „TextBox“ hinzu, geben Sie ihm den Namen „mTextBoxBestellNrKunde“ und platzieren Sie das Control an der gewünschten Stelle.
  8. Wechseln Sie in den Script-Code
  9. Suchen Sie den Code „Rechnungsdaten lRechnungsdaten = (Rechnungsdaten)mReport.Decorator.AktuellerDatensatz;“ im Ereignis „ReportStart“
  10. Fügen Sie den nachfolgenden Code unterhalb der oben genannten Codezeile ein:
    string lBestellNrKunde = lRechnungsdaten._Projekt.LiefereAttributWert(new Guid(„dbbe88a9-c4eb-4ef0-97b3-81cdb1b68471“)).ToString(); mReport.Decorator.SetzeControlText(„BerichtKopf“, „mTextBoxBestellNrKunde“, lBestellNrKunde);

    Dabei können Sie den Schlüssel (im Beispiel oben „dbbe88a9-c4eb-4ef0-97b3-81cdb1b68471“) aus der Zwischenablage einfügen.

Bemerkung: Der Wert des ersten Parameters (im Beispiel oben „BerichtKopf“) ist davon abhängig, in welche Sektion des Berichts, die Textbox hinzugefügt wurde.

OBJEKTE ZU DER RECHNUNG

Die nachfolgenden Objekte bzw. deren Eigenschaften können auch der Eigenschaft „DataField“ zugewiesen werden:

ObjektBeschreibung
_ErstellerMitarbeiter, der die Rechnung erstellt hat
_KundeKunde, des verrechneten Projektes
_ProjektVerrechnetes Projekt
_ProjektdatenVerrechnetes Projekt mit erweiterten Daten

EIGENSCHAFTEN DES OBJEKTS „_PROJEKTDATEN“

Es können sämtliche Eigenschaften der oben genannten Objekte auf dem Bericht an Daten gebunden werden. Über das Objekt «_Rechnung» kann auf die Eigenschaften der Rechnung zugegriffen werden. Sehr interessant kann allenfalls auch der Zugriff auf das Objekt „_Projektdaten“ sein. Nachfolgend ein kleiner Auszug aus den vorhandenen Eigenschaften des Objektes „_Projektdaten“:

EigenschaftBeschreibung
BudgetierungErtragZeit.BudgetBudget des Ertrags aus Zeitleistungen
BudgetierungErtragZeit.IstwertIst-Ertrag aus Zeitleistungen
BudgetierungErtragZeit.DifferenzDifferenz Ertragsbudget – Istertrag aus Zeitleistungen
BudgetierungGewinn.BudgetBudgetierter Gewinn
BudgetierungGewinn.IstwertGewinn Istwert
BudgetierungGewinn.DifferenzDifferenz Budget Gewinn – Istwert Gewinn
ZeitkontrolleZahlen._ZeitvorgabeZeitvorgabe für das Projekt
ZeitkontrolleZahlen._VerwendetGeleistete Zeit im Projekt
ZeitkontrolleZahlen._RestaufwandRestlicher Zeitaufwand für das Projekt
ZeitkontrolleZahlen._ErwartetesTotalErwarteter totaler Zeitaufwand für das Projekt
ZeitkontrolleZahlen._AbweichungErwartete Zeitabweichung des Projektes

Ersten Projektleiter ausgeben

Der erste Projektleiter des Projekts kann durch Hinzufügen von Code im Report-Designer angezeigt werden. Das nachfolgende Beispiel zeigt den Namen des Projektleiters im Feld „mTextBoxProjektleiter“ im Berichtskopf an:

Suchen Sie die folgende Codezeile im Script des Berichts:
Rechnungsdaten lRechnungsdaten = (Rechnungsdaten)mReport.Decorator.AktuellerDatensatz;

Fügen Sie den nachfolgenden Code unterhalb der oben genannten Codezeile ein:

if (lRechnungsdaten._Projekt.Leiter().Count > 0)
{
	// Den Namen des ersten Projektleiters zuweisen
	// Für die Zeichenfolge "Vorname Nachname" kann die Eigenschaft "GanzerNameInvers" verwendet werden
	TEmployee lErsterProjektleiter = lRechnungsdaten._Projekt.Leiter()[0];
	mReport.Decorator.SetzeControlText("BerichtKopf", "mTextBoxProjektleiter", lErsterProjektleiter.GanzerName);
}
else
{
	// Kein Projektleiter definiert >> leere Zeichenfolge an Control zuweisen
	mReport.Decorator.SetzeControlText("BerichtKopf", "mTextBoxProjektleiter", " ");
}

NAMENSKONVENTION

Durch die Angabe in der Form «Objekt.Eigenschaft» in der Eigenschaft „DataField“ einer TextBox kann der Inhalt eines Feldes auf einem Bericht angezeigt werden. Soll also z.B. die Zeitvorgabe des Projektes, welches verrechnet wurde ausgegeben werden, muss die Zeichenfolge „_Projektdaten.ZeitkontrolleZahlen._Zeitvorgabe“ eingegeben werden.