5 - Reporting Anpassungen von Reports mit Feldbeschreibungen und Erläuterungen Freies Dokument - DocumentReport.rpx Die Vorlage für das freie Dokument kann im Systemverzeichnis unter dem Namen DocumentReport.rpx gefunden werden. Spezifische Vorlage nach Dokumenttyp Es kann eine eigene Vorlage nach Dokumenttyp definiert werden. Diese werden jeweils auf den Code des Dokumenttyps angewandt. (Beispiel: RE) Dazu muss der Name der Vorlagendatei wie in foldendem Beispiel angepasst werden. Dokumenttyp: RE -> Name der Vorlagendatei "DocumentReport _RE .rpx" Spezifische Vorlage nach Dokumentsprache Es kann eine eigene Vorlage nach Dokumentsprache definiert werden. Diese werden über den Sprachcode angewandt. Verfügbare Sprachen "de" - Deutsch "fr" - Französisch "it" - Italienisch "en" - Englisch Dazu muss der Name der Vorlagendatei wie in foldendem Beispiel angepasst werden. Dokumentsprache Deutsch -> Name der Vorlagendatei "DocumentReport .de .rpx" Spezifische Vorlage nach Dokumenttyp und Dokumentsprache Diese beiden Prinzipien können auch kombiniert werden, sodass eine Vorlage für italienische Rechnungen wie folgt definiert werden kann. "DocumentReport _RE .it .rpx" Verfügbare Felder Folgende Felder können im Report Designer als DataSource verwendet werden. Ausser anders definiert werden diese in eine TextBox eingefügt. Achtung: Datumsfelder Felder welche den Typen "Date" oder "DateTime" haben, müssen im Datafield mit einer der folgenden Funktionen in einen String gewandelt werden. ToLongDateString() - Donnerstag, 22. Mai 2025 ToLongTimeString() - 08:50:20 ToShortDateString() - 22.05.2025 ToShortTimeString() - 8:50 Beispiel DataSource mit Datum "=BillDateOrDate.ToShortDateString()" Mehrere Felder kombinieren Es können mehrere Felder aneinandergekettet werden. Dafür muss zwischen den Feldern ein + gesetzt werden. Beispiel: Eine Kombination aus Vor- und Nachname = ResponsibleFirstName + " " + ResponsibleLastName Mandanteninformationen ClientName (string) Der Name des Mandanten. ClientAddress (string) Die vollständige Adresse des Mandanten. ClientStreet (string) Der Strassenname der Mandantenadresse. ClientHouseNumber (string) Die Hausnummer der Mandantendresse. ClientPostalCode (string) Die Postleitzahl der Mandantenadresse. ClientCity (string) Die Stadt der Mandantenadresse. ClientCountryCode (string) Der Ländercode der Mandantenadresse (z. B. "CH" für Schweiz). ClientCountryCaption (string) Der vollständige Ländernamen der Mandantenadresse. ClientVat (string) Die Umsatzsteuer-Identifikationsnummer des Mandanten. ClientSupplierNumber (string) Die Lieferantennummer des Mandanten. ClientEmail (string) Die E-Mail-Adresse des Mandanten. Objektinformationen ObjectCode (string) Die Objektnummer. ObjectCaption (string) Die Objektbeschreibung. Projektinformationen ProjectCode (string) Die Projektnummer ProjectCaption (string) Die Projektbeschreibung Dokumententyp DocumentTypeCode (string) Der Code, der den Dokumententyp repräsentiert. DocumentTypeCaption (string) Die Bezeichnung des Dokumententyps. DocumentTypeAbbreviation (string) Die Abkürzung des Dokumententyps. DocumentTypeIsBill (bool) Gibt an, ob der Dokumententyp eine Rechnung ist. Dokumentenkennungen Year (int) Das Dokumentjahr. Number (int) Die Dokumentnummer. DocumentTypeCodeYearNumber (string) Eine Zusammensetzung des Dokumententypcode , dem Jahr und der Nummer (z. B. " RE 2025 95 "). Dokumentdetails Caption (string) Die Bezeichnung des Dokuments. Date (DateTime) Das Dokumentdatum. ExecutionDateStart (DateTime?) Der Ausführungsbeginn. ExecutionDateFinish (DateTime?) Das Ausführungsende. BillDate (DateTime?) Das Rechnungsdatum. BillDateOrDate (DateTime) Gibt das Rechnungsdatum zurück, wenn verfügbar; andernfalls das Dokumentdatum. BillReferenceNumberCode (int?) Der Referenznummercode für die Rechnung. Gewerk MaintenanceGroupCode (string) Der Code des Gewerks. MaintenanceGroupCaption (string) Die Bezeichnung des Gewerks. Informationen zur Stelle CenterCode (string) Der Code der Stelle. CenterCaption (string) Die Bezeichnung der Stelle. CenterAddress (string) Die Adresse der Stelle. CenterCity (string) Die Stadt der Stelle. Verantwortliche Person ResponsibleCode (string) Der Code der verantwortlichen Person. ResponsibleLastName (string) Der Nachname der verantwortlichen Person. ResponsibleFirstName (string) Der Vorname der verantwortlichen Person. Empfängeradresse ReceiverAddressNumber (int) Die Adressnummer, der Empfängeradresse. ReceiverAddress (string) Die vollständige Adresse des Empfängers. ReceiverAddressName (string) Der Name, der mit der Empfängeradresse verbunden ist. ReceiverAddressZusatz1 (string) Der Zusatz1 der Empfängeradresse. ReceiverAddressStreet (string) Die Strasse der Empfängeradresse. ReceiverAddressHausnummer (string) Die Hausnummer der Empfängeradresse. ReceiverAddressPostalCode (string) Die Postleitzahl der Empfängeradresse. ReceiverAddressCity (string) Die Stadt der Empfängeradresse. ReceiverAddressCountryCode (string) Der Ländercode der Empfängeradresse. ReceiverEmail (string) Die E-Mail-Adresse des Empfängers. ReceiverEbill (bool) Gibt an, ob der Empfänger eine elektronische Rechnung bevorzugt. ReceiverEbillEmail (string) Die E-Mail-Adresse für den Versand der elektronischen Rechnung des Empfängers. Zusatzadresse ControllerAddressNumber (int?) Die Nummer der Zusatzadresse (nullable). ControllerAddress (string) Die vollständige Zusatzadresse. Planer-Adresse PlanerAdresseNummer (int?) Die Nummer der Planer-Adresse (nullable). PlanerAdresse (string) Die vollständige Adresse des Planers. Bauherr-Adresse BauherrAdresseNummer (int?) Die Nummer der Bauherr-Adresse (nullable). BauherrAdresse (string) Die vollständige Adresse des Bauherrn. Eingabeinformationen EingabeDateTime (DateTime?) Das Eingabedatum. EingabeDatumText (string) Das Eingabedatum als kurzer Datumsstring (z. B. "22.05.2025"). EingabeOrt (string) Der Ort der Eingabe. Dokumentkategorie DocumentCategoryCode (string) Der Code der Dokumentkategorie. DocumentCategoryCaption (string) Die Bezeichnung der Dokumentkategorie. Dokumentencode DocumentCodeId (Guid) Die eindeutige Kennung des Dokumentencodes. DocumentCodeCode (string) Der Codewert des Dokumentencodes. DocumentCodeCaption (string) Die beschreibende Bezeichnung des Dokumentencodes. Dokumentstatus DocumentStateCode (string) Der Code des Dokumentstatus. DocumentStateCaption (string) Die Bezeichnung des Dokumentstatus. CrbDocumentState (CrbDocumentState) Der CRB-spezifische Dokumentstatus. Bankinformationen BankCode (string) Der Code der Bank. BankCaption (string) Die Bezeichnung der Bank. BankIban (string) Die IBAN der Bank. BankQrIban (string) Die QR-IBAN der Bank (für QR-Code-Zahlungen). BankQrTnrBesr (int) Die QR-Teilnehmernummer oder BESR-Referenz der Bank. BankUseTextAsBill (bool) Gibt an, ob der Banktext als Rechnung verwendet werden soll. BankBillText (string) Der Text, der für die Bankrechnung verwendet wird. Texteigenschaften StartTextRtf (string) (RichTextBox) Der Vortext des Dokuments im RTF-Format. StartTextRtfReplaced (string) (RichTextBox) Der Vortext mit ersetzten Platzhaltern. EndTextRtf (string) (RichTextBox) Der Schlusstext des Dokuments im RTF-Format. EndTextRtfReplaced (string) (RichTextBox) Der Schlusstext mit ersetzten Platzhaltern. Finanzinformationen Vat (string) Die Mehrwertsteuer. Currency (string) Die Währung (z. B. "CHF"). BetragNetto (decimal) Der Nettobetrag des Dokuments. BetragKonditionen (decimal) Der Konditionenbetrag, berechnet als BetragBrutto - BetragNetto. BetragVorMwst (decimal?) Der Betrag vor Mehrwertsteuer. BetragMwst (decimal?) Der Mehrwertsteuerbetrag. BetragBrutto (decimal) Der Bruttobetrag des Dokuments. Gläubigerinformationen CreditorName (string) Der Name des Gläubigers. CreditorAddressLine1 (string) Die erste Zeile der Gläubigeradresse. CreditorAddressLine2 (string) Die zweite Zeile der Gläubigeradresse. CreditorHouseNr (string) Die Hausnummer der Gläubigeradresse. CreditorPostalCode (string) Die Postleitzahl der Gläubigeradresse. CreditorCity (string) Die Stadt der Gläubigeradresse. CreditorCountryCode (string) Der Ländercode der Gläubigeradresse. Schuldnerinformationen DebtorName (string) Der Name des Schuldners. DebtorAddressLine1 (string) Die erste Zeile der Schuldneradresse. DebtorAddressLine2 (string) Die zweite Zeile der Schuldneradresse. DebtorHouseNr (string) Die Hausnummer der Schuldneradresse. DebtorPostalCode (string) Die Postleitzahl der Schuldneradresse. DebtorCity (string) Die Stadt der Schuldneradresse. DebtorCountryCode (string) Der Ländercode der Schuldneradresse. Referenzinformationen UnserZeichenCode (string) Der Code der Person in "unser Zeichen". UnserZeichenVorname (string) Der Vorname der Person in "unser Zeichen". UnserZeichenNachname (string) Der Nachname der Person in "unser Zeichen". IhrZeichen (string) Der Wert für "Ihr Zeichen". IhrZeichenAbteilung (string) Die Abteilung für "Ihr Zeichen". IhrZeichenEmail (string) Die E-Mail für "Ihr Zeichen". KontaktTelefon (string) Die Kontakttelefonnummer. AuftragReferenzNummer (string) Die Auftrags-/Referenznummer. AuftragDatum (DateTime?) Das Auftragsdatum. AusfuehrungBeginnDatumZeit (DateTime?) Der Ausführungsbeginn. AusfuehrungEndeDatum (DateTime?) Das Ausführungsende. AusfuehrungOrt (string) Der Ausführungsort. Arbeitsbeschreibung (string) Die Arbeitsbeschreibung. Zahlungsperiode (int) Die Zahlungsfrist in Tagen. NPK Dokument - DokumentNPKDeckblattReport.rpx Die Vorlage für das freie Dokument kann im Systemverzeichnis unter dem Namen DokumentNPKDeckblattReport.rpx gefunden werden. Spezifische Vorlage nach Dokumenttyp Es kann eine eigene Vorlage nach Dokumenttyp definiert werden. Diese werden jeweils auf den Code des Dokumenttyps angewandt. (Beispiel: RE) Dazu muss der Name der Vorlagendatei wie in foldendem Beispiel angepasst werden. Dokumenttyp: RE -> Name der Vorlagendatei "DokumentNPKDeckblattReport _RE .rpx" Spezifische Vorlage nach Dokumentsprache Es kann eine eigene Vorlage nach Dokumentsprache definiert werden. Diese werden über den Sprachcode angewandt. Verfügbare Sprachen "de" - Deutsch "fr" - Französisch "it" - Italienisch "en" - Englisch Dazu muss der Name der Vorlagendatei wie in foldendem Beispiel angepasst werden. Dokumentsprache Deutsch -> Name der Vorlagendatei "DokumentNPKDeckblattReport .de .rpx" Spezifische Vorlage nach Dokumenttyp und Dokumentsprache Diese beiden Prinzipien können auch kombiniert werden, sodass eine Vorlage für italienische Rechnungen wie folgt definiert werden kann. "DokumentNPKDeckblattReport _RE .it .rpx" Verfügbare Felder Folgende Felder können im Report Designer als DataSource verwendet werden. Ausser anders definiert werden diese in eine TextBox eingefügt. Achtung: Datumsfelder Felder welche den Typen "Date" oder "DateTime" haben, müssen im Datafield mit einer der folgenden Funktionen in einen String gewandelt werden. ToLongDateString() - Donnerstag, 22. Mai 2025 ToLongTimeString() - 08:50:20 ToShortDateString() - 22.05.2025 ToShortTimeString() - 8:50 Beispiel DataSource mit Datum "=BillDateOrDate.ToShortDateString()" Mehrere Felder kombinieren Es können mehrere Felder aneinandergekettet werden. Dafür muss zwischen den Feldern ein + gesetzt werden. Beispiel: Eine Kombination aus Vor- und Nachname = ResponsibleFirstName + " " + ResponsibleLastName Spracheigenschaften Sprache ( CrbLanguage ) Gibt die Sprache des Dokuments an. Objektinformationen ObjektCode ( string ) Der Code des Objekts. ObjektBezeichnung ( string ) Die Bezeichnung des Objekts. Projektinformationen ProjektCode ( string ) Der Code des Projekts. ProjektBezeichnung ( string ) Die Bezeichnung des Projekts. Dokumententyp DokumentTypCode ( string ) Der Code des Dokumententyps. DokumentTypBezeichnung ( string ) Die Bezeichnung des Dokumententyps. Dokumentenkennungen Jahr ( int ) Das Jahr des Dokuments. Nummer ( int ) Die Nummer des Dokuments. DokumentCode ( string ) Der vollständige Dokumentencode (kombiniert aus Typ, Jahr und Nummer). Dokumentendetails DokumentBezeichnung ( string ) Die Bezeichnung des Dokuments. Datum ( DateTime ) Das Datum des Dokuments. VerantwortlichePersonVorname ( string ) Der Vorname der verantwortlichen Person. VerantwortlichePersonNachname ( string ) Der Nachname der verantwortlichen Person. Vergabeeinheit (string) Die Vergabeeinheit. VergabeeinheitBezeichnung (string) Die Bezeichnung der Vergabeeinheit. Firmeninformationen FirmaName ( string ) Der Name der Firma. FirmaStrasse ( string ) Die Strasse der Firmenadresse. FirmaPlz ( string ) Die Postleitzahl der Firmenadresse. FirmaOrt ( string ) Die Stadt der Firmenadresse. FirmaLandCode ( string ) Der Ländercode der Firmenadresse. FirmaLandBezeichnung ( string ) Der vollständige Ländernamen der Firmenadresse. Adressinformationen UnternehmerAdresse ( string ) Die Adresse des Unternehmers. EmpfaengerAdresseNummer ( int ) Die Nummer der Empfängeradresse. EmpfaengerAdresse ( string ) Die vollständige Adresse des Empfängers. BauherrAdresse ( string ) Die Adresse des Bauherrn. PlanerAdresse ( string ) Die Adresse des Planers. ZusatzAdresse ( string ) Die Zusatzadresse. Referenzinformationen IhrZeichen ( string ) Der Wert für "Ihr Zeichen". AuftragReferenzNummer ( string ) Die Auftrags-/Referenznummer. KontaktTelefon ( string ) Die Kontakttelefonnummer. Datumsangaben AuftragDatum ( DateTime? ) Das Auftragsdatum. AusfuehrungBeginnDatumZeit ( DateTime? ) Der Ausführungsbeginn. AusfuehrungEndeDatum ( DateTime? ) Das Ausführungsende. EingabeDatum ( DateTime? ) Das Eingabedatum. EingabeDatumShortDateString ( string ) Das Eingabedatum als kurzer Datumsstring (z. B. "22.05.2025"). Ortsangaben Ausfuehrungsort ( string ) Der Ausführungsort. EingabeOrt ( string ) Der Eingabeort. Texteigenschaften Arbeitsbeschreibung ( string ) Die Arbeitsbeschreibung. StartTextRtf ( string ) (RichTextBox) Der Vortext im RTF-Format. StartTextRtfReplaced ( string ) (RichTextBox) Der Vortext im RTF-Format mit ersetzten Platzhaltern. EndTextRtf ( string ) (RichTextBox) Der Schlusstext im RTF-Format. EndTextRtfReplaced ( string ) (RichTextBox) Der Schlusstext im RTF-Format mit ersetzten Platzhaltern. Finanzinformationen Zahlungsperiode ( int ) Die Zahlungsfrist in Tagen. Waehrung ( string ) Die Währung des Dokuments. BruttoBetrag ( decimal ) Der Bruttobetrag. BruttoBetragGerundet ( decimal ) Der Bruttobetrag, gerundet. KonditionenBetrag ( decimal ) Der Konditionsbetrag. KonditionenBetragGerundet ( decimal ) Der Konditionsbetrag, gerundet. MwstBetrag ( decimal ) Der Mehrwertsteuerbetrag. MwstBetragGerundet ( decimal ) Der Mehrwertsteuerbetrag, gerundet. NettoBetrag ( decimal ) Der Nettobetrag. NettoBetragGerundet ( decimal ) Der Nettobetrag, gerundet. Rechnungsinformationen RechnungDatum ( DateTime? ) Das Rechnungsdatum. RechnungDatumShortDateString ( string ) Das Rechnungsdatum als kurzer Datumsstring. Gewerk GewerkCode ( string ) Der Code des Gewerks. Textbausteine - Platzhalter In Textbausteinen können gewisse definierte Platzhalter verwendet werden, welche dann spezifisch auf die Anwendung mit dem entsprechenden Wert im Text ersetzt wird. Beispiel Im folgenden Schlusstext wird "$PHPaymentDateShort$" mit dem Datum ersetzt, bis wann die Rechnung bezahlt werden soll aufgrund der hinterlegten Konditionen und dem Rechnungsdatum. Verfügbare Felder Folgende Felder können in den Textbausteinen verwendet werden. Das $-Zeichen am Anfang und am Schluss, sowie die "PH"-Kennung ist zwingend für die Erkennung im Text. Dokumentenkennungen DocumentTypeCode ( string : $PHDocumentTypeCode$ ) Platzhalter für den Code des Dokumenttyps. DocumentYear ( string : $PHDocumentYear$ ) Platzhalter für das Jahr des Dokuments. DocumentNumber ( string : $PHDocumentNumber$ ) Platzhalter für die Nummer des Dokuments. Zahlungsinformationen PaymentPeriod ( string : $PHPaymentPeriod$ ) Platzhalter für die Zahlungsfrist in Tagen. PaymentDateShort ( string : $PHPaymentDateShort$ ) Platzhalter für das Zahlungsdatum im kurzen Format (z. B. "15.10.2023"). PaymentDateLong ( string : $PHPaymentDateLong$ ) Platzhalter für das Zahlungsdatum im langen Format (z. B. "15. Oktober 2023"). PHZahlbarBis (string: $PHZahlbarBis$) Platzhalter für das Zahlungsdatum unter Berücksichtigung der Konditionen. Die Tage für Skonto werden aus der Konditionszeile entnommen, die Netto-Tage aus den Systemeinstellungen. Zahlbar innert 30 Tage netto. Zahlbar innert 10 Tage mit 5.00 % Skonto, innert 30 Tage netto. Zahlbar innert 10 Tage mit CHF 5000.00 Skonto, innert 30 Tage netto. Verantwortliche Person ResponsibleFirstName ( string : $PHResponsibleFirstName$ ) Platzhalter für den Vornamen der verantwortlichen Person. ResponsibleLastName ( string : $PHResponsibleLastName$ ) Platzhalter für den Nachnamen der verantwortlichen Person. Kontaktinformationen Kontakt ( string : $PHKontakt$ ) Platzhalter für die Kontaktinformation (z. B. Telefonnummer). Referenzinformationen IhrZeichen ( string : $PHIhrZeichen$ ) Platzhalter für den Wert "Ihr Zeichen". AuftragReferenzNummer ( string : $PHAuftragReferenzNummer$ ) Platzhalter für die Auftrags-/Referenznummer. Auftragsdatum AuftragDatumKurz ( string : $PHAuftragDatumKurz$ ) Platzhalter für das Auftragsdatum im kurzen Format (z. B. "23.05.2025"). AuftragDatumLang ( string : $PHAuftragDatumLang$ ) Platzhalter für das Auftragsdatum im langen Format (z. B. "23. Mai 2025"). Ausführungsinformationen AusfuehrungBeginnDatumKurz ( string : $PHAusfuehrungBeginnDatumKurz$ ) Platzhalter für das Startdatum der Ausführung im kurzen Format (z. B. "23.05.2025"). AusfuehrungBeginnDatumLang ( string : $PHAusfuehrungBeginnDatumLang$ ) Platzhalter für das Startdatum der Ausführung im langen Format (z. B. "23. Mai 2025"). AusfuehrungBeginnZeit ( string : $PHAusfuehrungBeginnZeit$ ) Platzhalter für die Startzeit der Ausführung (z. B. "14:30"). AusfuehrungEndeDatumKurz ( string : $PHAusfuehrungEndeDatumKurz$ ) Platzhalter für das Enddatum der Ausführung im kurzen Format (z. B. "23.05.2025"). AusfuehrungEndeDatumLang ( string : $PHAusfuehrungEndeDatumLang$ ) Platzhalter für das Enddatum der Ausführung im langen Format (z. B. "23. Mai 2025"). Ausfuehrungsort ( string : $PHAusfuehrungsort$ ) Platzhalter für den Ort der Ausführung. Arbeitsbeschreibung Arbeitsbeschreibung ( string : $PHArbeitsbeschreibung$ ) Platzhalter für die Arbeitsbeschreibung. Systemeinstellungen - Platzhalter In den Systemeinstellungen gibt es einige Felder in denen gewisse Platzhalter verwendet werden können, um eine Benutzerdefinierte Anordnung der Felder zu ermöglichen. Tab "Mandant" E-Mail-Betreff-Format Im Feld „E-Mail-Betreff-Format“ kann beispielsweise folgender Betreff hinterlegt werden: {DokumentCode} - {DokumentBezeichnung} Dieser wird beim Erstellen einer E-Mail automatisch mit den konkreten Werten ersetzt, zum Beispiel: "RE202515 - Schlussrechnung Umbau Musterstrasse" Verfügbare Felder Folgende Felder können im Feld „E-Mail-Betreff-Format“ verwendet werden. Die geschweiften Klammern { } sind zwingend für die Erkennung des Platzhalters. Dokumenteninformationen DokumentTypCode (string: {DokumentTypCode}) Platzhalter für den Code des Dokumenttyps. DokumentTypBezeichnung (string: {DokumentTypBezeichnung}) Platzhalter für die Bezeichnung des Dokumenttyps. DokumentJahr (string: {DokumentJahr}) Platzhalter für das Jahr des Dokuments. DokumentNummer (string: {DokumentNummer}) Platzhalter für die Nummer des Dokuments. DokumentCode (string: {DokumentCode}) Platzhalter für den zusammengesetzten Dokumentcode. DokumentBezeichnung (string: {DokumentBezeichnung}) Platzhalter für die Bezeichnung des Dokuments. Objektinformationen ObjektCode (string: {ObjektCode}) Platzhalter für den Code des Objekts. ObjektBezeichnung (string: {ObjektBezeichnung}) Platzhalter für die Bezeichnung des Objekts. Projektinformationen ProjektCode (string: {ProjektCode}) Platzhalter für den Code des Projekts. ProjektBezeichnung (string: {ProjektBezeichnung}) Platzhalter für die Bezeichnung des Projekts.