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:
- Melden Sie sich mit einem Benutzer an TimeSafe an, der über Vollzugriff auf die Stammdaten verfügt.
- Navigieren Sie auf der linken Seite zum Hauptmenupunkt «Stammdaten» und danach zum Untermenupunkt «Datenfeld-Manager»
- Selektieren Sie in der Liste auf der rechten Seite das freie Feld „Bestellnummer Kunde“
- Wählen Sie den Befehl „Schlüssel kopieren“, um den Schlüssel des freien Feldes in die Zwischenablage zu kopieren
- Navigieren Sie auf der linken Seite zum Untermenupunkt «Berichts-Manager»
- Suchen Sie die gewünschte Berichtsdefinition, indem Sie im Filter in der Auswahlbox den Eintrag «Rechnungs-Deckblatt» selektieren
- Wählen Sie die gewünschte Berichtsdefinition in der Liste und selektieren Sie in der Ribbon-Gruppe „Bericht-Layout“ den Befehl «Bearbeiten»
- 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.
- Gehen Sie in die Control-Box mit den Eigenschaften der soeben eingefügten TextBox
- 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:
- Melden Sie sich mit einem Benutzer an TimeSafe an, der über Vollzugriff auf die Stammdaten verfügt.
- Selektieren Sie in der Liste auf der rechten Seite das freie Feld „Bestellnummer Kunde“
- Wählen Sie den Befehl „Schlüssel kopieren“, um den Schlüssel des freien Feldes in die Zwischenablage zu kopieren
- Navigieren Sie auf der linken Seite zum Untermenupunkt «Berichts-Manager»
- Suchen Sie die gewünschte Berichtsdefinition, indem Sie im Filter in der Auswahlbox den Eintrag «Rechnungs-Deckblatt» selektieren
- Wählen Sie die gewünschte Berichtsdefinition in der Liste und selektieren Sie in der Ribbon-Gruppe „Bericht-Layout“ den Befehl «Bearbeiten»
- 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.
- Wechseln Sie in den Script-Code
- Suchen Sie den Code „Rechnungsdaten lRechnungsdaten = (Rechnungsdaten)mReport.Decorator.AktuellerDatensatz;“ im Ereignis „ReportStart“
- 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:
| Objekt | Beschreibung |
|---|---|
| _Ersteller | Mitarbeiter, der die Rechnung erstellt hat |
| _Kunde | Kunde, des verrechneten Projektes |
| _Projekt | Verrechnetes Projekt |
| _Projektdaten | Verrechnetes 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“:
| Eigenschaft | Beschreibung |
|---|---|
| BudgetierungErtragZeit.Budget | Budget des Ertrags aus Zeitleistungen |
| BudgetierungErtragZeit.Istwert | Ist-Ertrag aus Zeitleistungen |
| BudgetierungErtragZeit.Differenz | Differenz Ertragsbudget – Istertrag aus Zeitleistungen |
| BudgetierungGewinn.Budget | Budgetierter Gewinn |
| BudgetierungGewinn.Istwert | Gewinn Istwert |
| BudgetierungGewinn.Differenz | Differenz Budget Gewinn – Istwert Gewinn |
| ZeitkontrolleZahlen._Zeitvorgabe | Zeitvorgabe für das Projekt |
| ZeitkontrolleZahlen._Verwendet | Geleistete Zeit im Projekt |
| ZeitkontrolleZahlen._Restaufwand | Restlicher Zeitaufwand für das Projekt |
| ZeitkontrolleZahlen._ErwartetesTotal | Erwarteter totaler Zeitaufwand für das Projekt |
| ZeitkontrolleZahlen._Abweichung | Erwartete 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.
