Anpassungen zum Etikettendruck für Berichtsadministrator

Hinweis: Die folgenden Informationen sind für einen geschulten Berichtsadministrator, der das PisaSales-Datenmodell kennt, von Interesse.

Wenn Einzelreport an der Vorlage bzw. das Flag Serie am Brief nicht gesetzt sind, werden alle Empfänger in eine CSV-Datei exportiert. Dafür sucht das System im Loader auf zweiter Ebene nach einem RECIPIENT oder RECIPIENTS DTO. Für jeden Empfänger wird im CSV eine Zeile generiert. Die Daten unterhalb des Empfänger-DTOs werden dann auf die Daten der ersten Zeile kopiert, so dass sich die Zeile im Nachhin­ein nur in den Empfängerdaten unterscheidet.

Der Name des Haupt-DTOs und das des Empfänger-DTOs können über den Berichtsaufrufparameter TOP_DTO bzw. REC_DTO vorgegeben werden.

Mit SER_TYP kann MainDocumentType gesetzt werden, z.B. 0 für wdFormLetters (Standard) oder 3 für wdCatalog.

Anpassungsmöglichkeiten für die Katalogfunktion

Mit der Katalogfunktion wird der sichtbare Text des Templates (normalerweise eine Tabelle) je Daten­satz wiederholt. Zwischen den Datensätzen wird kein Abschnittswechsel/Seitenwechsel eingefügt.

In den Metadaten der Vorlage

An der Vorlage durch Leerzeichen getrennt folgende Parameter eintragen:

  • SER_TYP:=3 schaltet die Katalogfunktion ein
  • TOP_DTO:=<EXTERNER NAME> Der Name der relevanten Topklasse (wird bei Feldnamensgenerie­rung unterdrückt)
  • REC_DTO:=<EXTERNER NAME> Der Name der Klasse, die die Datensätze liefert

Beispiel: SER_TYP:=3 TOP_DTO:=LETTER REC_DTO:=RECIPIENT

Im Template selbst
  1. Attribute aus der Topklasse in Kopf-/Fußzeile einfügen:

Am Ende des Hauptbereichs eine Liste von Anweisungen, die je ein formatiertes Seriendruckfeld einer Textmarke (irgendwo im Hauptbereich) zuweist.

z. B. { SET KEYWORD { MERGEFIELD KEYWORD } }

In Kopf- oder Fußzeile den Inhalt der Textmarke ausgeben z. B. { REF KEYWORD }  

  1. Datumsfelder formatiert ausgeben:

Im Loader den Formatstring für Excel und Word eintragen, der passend für MS Office das Datum in Cli­entzeit ausgibt: D:%Y/%m/%d

Im Dokument das Datum formatiert der Textmarke zuweisen z. B. englisch { SET START_DATE { MERGE­FIELD START_DATE \@ "MMM d, yyyy" } }

Im Pattern nur geschützte Leerzeichen verwenden.

  1. Daten gruppieren:

Im Loader sortieren.

Der nachfolgende Ausdruck gibt den Firmennamen nur dann aus, wenn der Datensatz-Nr. 1 ist oder wenn der aktuelle Firmenname nicht mit dem vorherigen übereinstimmt. Der vorherige wird nach jeder Prüfung der Textmarke COMPANY zugewiesen.

{ IF "{=OR({ COMPARE { MERGESEQ }="1" };{ COMPARE {REF COMPANY }<>{ MERGEFIELD CON­TACTS_COMPANY_NAME }}) }"="1" "{MERGEFIELD CONTACTS_COMPANY_NAME }" ""}{ SET COMPANY { MERGEFIELD CONTACTS_COMPANY_NAME } }

  1. Etiketten, Namensschilder:

Im Hauptbereich geht die Feldfunktion { NEXT } zum nächsten Datensatz.

{ SKIPIF <Vergleich>} überspringt den Datensatz.

Im Ergebnisdokument verschwinden Textmarken.

SET, IF, OR, COMPARE, MERGESEQ, MERGEFIELD, NEXT etc. werden aufgelöst.

Lediglich Seitenzahlen bleiben als Feldfunktionen erhalten.