Verwendung

Ein DocDef-Objekt repräsentiert inputseitig ein Dokument und legt wichtige Verarbeitungsmerkmale fest, die für das Dokument über alle WorkItems hinweg von Bedeutung sind. Über ein WorkListVariant-Objekt verweist ein DocDef-Objekt auf ein oder mehrere WorkItems.


Syntax

DocDef Name {

FormFileName  Name
Copy  No
Printer  Name
DocRef  Name
Archive  Value
Print  Value
SourceCopy  Value
WorkItems  Value
WorkListVariant  Name
DocRefFields  List
JoinKey  Value
SortKey  Value
MaterialExchangeSet  Value
BeforeCalc  {
  ...
}
AfterCalc  {  
  ...
}
Grouping  { 
  ...
}

AutoPositioning  Value
Positioning  {
  ...
}
Recognition  bzw.  Rec  {
  ...
}
Qualifier  Value
XMLOutput  Value
SupplementWorkItem  Value
EmbeddedFiles  Value

}


Erklärung

FormFileName Name

FieldOrValue
FormFileName setzt für die WorkItems einen Standardfile, welcher die physikalischen Seiten und SubForms definiert. Der FormFileName kann im WorkItem überschrieben werden.



Copy
No

FieldOrValue
Der Copy-Faktor im DocDef setzt unabhängig vom Copy-Faktor der WorkItems die Anzahl der zu druckenden Exemplare fest.

Anmerkung zur Kuvertierstraßensteuerung

Die Kuvertierstraßensteuerung ist duplexfähig. Es werden die tatsächlich benötigten Seitenzahlen verwendet. Die Kopieangaben aus dem WorkItem werden ausgewertet. Das Zusammenfassen unterschiedlicher Kanal-1-WorkItems bzw. unterschiedlicher Kanal-2-WorkItems ist möglich. Die Anzahl der Kopien von DocDef und WorkItem werden multipliziert.


Printer Name

FieldOrValue
Mit der Angabe des Printers kann bereits im DocDef-Objekt der Drucker für alle WorkItems gesetzt werden. Der hier gesetzte Drucker kann aber im WorkItem überschrieben werden.


DocRef Name

FieldOrValue
DocRef verweist im Allgemeinen auf ein Feld des Input-Dokuments, welches eine eindeutige Referenznummer des Dokuments beinhaltet. Diese Referenznummer kann die Rechnungs- oder Belegnummer sein. Verwendet wird diese Nummer zum Logging.


Beispiel
DocRef @STRCV_DOCNO


Archive Value

FieldOrValue
Archive ist ein Schalter mit den Werten 0 und 1. Steht Archive auf 1, so erfolgt die Auswertung des Archive-Parameters der zum Dokument gehörenden WorkItems. Andernfalls wird das Archivieren unterbunden (unabhängig vom Schalter Print).


Beispiel
Archive @GETSUBSTITUTE("ArchivTab", JF_REPRINT)


Print Value

FieldOrValue
Print ist ein Schalter mit den Werten 0 und 1, wobei 1 der Standardwert ist. Steht Print auf 1, so erfolgt die Druckausgabe. Andernfalls wird das Drucken unterbunden (unabhängig vom Schalter Archiv).


Beispiel
Print @GETSUBSTITUTE("PrintTab", JF_REPRINT)


SourceCopy Value

FieldOrValue
SourceCopy ist ein Schalter mit den Werten 1 und 0. Steht SourceCopy auf 1, werden die Dokumente nach dem Passieren des Input-Interfaces im internen ReportWriter-Format in eine Datei gespeichert. Andernfalls gibt es keine Copy des internen Dokuments. Das SourceCopyFile dient vor allem der besseren Lesbarkeit des Input-Dokuments und der Kontrolle des Input-Interfaces.


WorkItems List

FieldOrValue
WorkItems ist eine kommaseparierte Liste mit Namen von WorkItems, die zur Ausgabe abgearbeitet werden sollen. Ist das Schlüsselwort WorkItems angegeben, so wird die Angabe einer WorkListVariant ignoriert. Das Schlüsselwort kann mehrfach vorkommen. Die Werte der jeweiligen Schlüsselwörter werden aneinander gehängt.


WorkListVariant Name

Der Parameter WorkListVariant verweist auf ein WorkListVariant-Objekt. Darin wird ermittelt, welche WorkItems zu diesem Dokument ausgeführt werden sollen. Ist das Schlüsselwort WorkItems angegeben, so wird die Angabe einer WorkListVariant ignoriert.


DocRefFields List

DocRefFields ist eine kommaseparierte Liste von Variablen, die in die DocRef-Liste des Dokuments kopiert werden. Die DocRef-Liste wird in der weiteren Verarbeitung noch durch Standard-DocRef-Fields erweitert und kann dann über die im Schlüsselwort OutFileDocRefFields des CommonSettings-Basis-Objektes ausgegeben werden.
Als Offset für die Seitenzähler C1FROMSHEET, C1TOSHEET bzw. C2FROMSHEET, C2TOSHEET kann die Variable C1PAGEOFFSET bzw. C2PAGEOFFSET mitgegeben werden. Das Offset sollte der Seitengröße der Headerpage entsprechen.


JoinKey Value

FieldOrValue
Alle Dokumente, die den gleichen JoinKey besitzen und den gleichen Qualifier miteinander teilen, werden noch vor der DV-Freimachung und den anderen Dokument-Logistischen-Verfahren zu einem Dokument zusammengefasst. JoinKey entspricht damit der Aufgabenstellung der Porto-Optimierung, bei der möglichst alle Sendungen an einen Empfänger zu einer Sendung zusammengefasst werden. Der JoinKey sollte die Adresse des Sendungsempfängers oder dessen Kundennummer sein.


SortKey
Value

FieldOrValue
Alle Dokumente, die nicht DV-freizumachen sind, werden vor der Ausgabe anhand des SortKeys sortiert. Der Sortiertyp ist dabei immer alphanumerisch aufsteigend.


MaterialExchangeSet Value

FieldOrValue
MaterialExchangeSet ist besitzt den Standardwert DEFAULT. MaterialExchangeSet bestimmt nach dem Dokument-Building welches MaterialExchangeSet für den Austausch von Materialbeschreibungen verwendet wird. Das angegebene MaterialExchangeSet muss definiert sein. Eine Ausnahme stellt nur das MaterialExchangeSet DEFAULT dar. Ist dieses MaterialExchangeSet nicht definiert, so wird das Programm nicht abgebrochen und der Austausch wir übersprungen.


BeforeCalc

BeforeCalc dient zum Berechnen von Feldern und dem Ausführen von Calc-Befehlen. BeforeCalc wird vor der Ausführung des DocDef aufgerufen.  Die Verwendung inkl. der Liste der Calc-Befehle wird gesondert erläutert (siehe Interne Objekte).


Syntax

DocDef Name {

BeforeCalc {
...
}

}


AfterCalc 

AfterCalc dient zum Berechnen von Feldern und dem Ausführen von Calc-Befehlen. AfterCalc wird nach der Ausführung des DocDef aufgerufen.  Die Verwendung inkl. der Liste der Calc-Befehle wird gesondert erläutert (siehe Interne Objekte). 


Syntax

DocDef Name {

AfterCalc {
...
}

}



Grouping

Das Sub-Objekt Grouping realisiert das Gruppieren einzelner Positionen zu Groups. Diese Funktion ist dann sinnvoll, wenn die Eingangsdaten nicht im Sinne logischer Gruppierungen sortiert sind, sondern in Druck-Positionen. Zur Sortierung oder WorkItem-Erkennung werden die zu kaufmännischen Positionen zusammengefassten Groups jedoch benötigt.

Grouping beinhaltet ein oder mehrere Group-Objekte. Jedes Group-Objekt ist eine konkrete Anweisung dafür, wie nachfolgende Positionen zu einer Group zusammengefasst werden. Ein Group-Objekt definiert für eine solche Klammer die Anfangs- und Endpositionen. Für die StartPosition kann optional in Klammern noch ein Feld und dessen Wert angegeben werden. Beim Grouping wird die Position nur als StartPosition erkannt, wenn der Name der Position übereinstimmt und das Feld in der Position den vorgegebenen Inhalt hat.


Syntax

Grouping {

...
Group GROUPNAME {

StartPos POSITIONNAME[(FIELD=VALUE)][,POSITIONNAME[(FIELD=VALUE)][...]]
[StopBeforePos POSITIONNAME[,POSITIONNAME[...]]]
[StopAfterPos POSITIONNAME[,POSITIONNAME[...]]]

}
...

}


Um ein Grouping nicht nur in Group-Strukturen erzeugen zu können, sondern auch Subpositionen bilden zu können im Sinnes eines vollständigen strukturierten Baumes. kann man folgende Schlüsselwörter nutzen:

TargetTarget ist ein Schalter mit den Werten GROUP und TREE, wobei GROUP der Standardwert ist.
Steht der Schalter auf GROUP, so wird das Grouping in Group-Strukturen erzeugt.
Steht der Schalter auf TREE, so wird das Grouping in Positionen und SubPositionen erzeugt.
GroupedNodeGroupedNode ist ein Positionsname, der beim Target TREE optional angewandt wird.
Ist GroupedNode gesetzt, so werden alle gruppierten Positionen zu SubPositionen der unter GroupedNode angegebenen Position.
Ist GroupedNode nicht gesetzt, werden alle gruppierten Positionen auf der höchsten Ebene erzeugt.
  (Warnung) Bitte keine strukturierten Namen angeben.
NoneGroupedNodeNoneGroupedNode ist ein Positionsname, der beim Target TREE optional angewandt wird.
Ist GroupedNode gesetzt, so werden alle nicht gruppierten Positionen zu SubPositionen der unter NoneGroupedNode angegebenen Position.
Ist NoneGroupedNode nicht gesetzt, bleiben alle nicht gruppierten Positionen auf der höchsten Ebene.
  (Warnung) Bitte keine strukturierten Namen angeben.


Syntax

Grouping {

Target TREE
GroupedNode
GR
NoneGroupedNode
NGR
Group Collect {

StartPos CSTART
StopBeforePos CSTART

}

}

AutoPositioning Value

FieldOrValue
AutoPositioning ist ein Schalter mit den Werten 0 und 1, wobei 0 der Standard ist. Wenn AutoPositioning eingeschaltet ist, dann ist jede andere Positioning-Angabe ohne Wirkung. Ist AutoPositioning eingeschaltet, so erfolgt die Zuordnung der Felder der globalen Tabelle zu Positionen über die aus der XDP-Datei gelesenen Informationen. AutoPositioning arbeitet nur, wenn auf DocDef-Ebenen ein FormFileName angegeben wurde. Aus der angegebenen XDP-Datei werden alle SubForms gelesen und die Felder der globalen Tabelle mit den Feldern der SubForms verglichen. Passt ein Feld zu einer SubForm, so wird eine neue Position im ReportWriter eröffnet und das Feld dort hinein bewegt. Sind die folgenden Felder auch in der SubForm enthalten, so werden diese ebenfalls dorthin bewegt. Feldwiederholungen führen auch zur Wiederholung der Position. Passt ein Feld nicht in das zuletzt gefundene SubForm, so beginnt die Suche nach einem passenden SubForm erneut.


Positioning

Positioning wandelt Kopffelder in Positionen um. Es wird eine Liste erzeugt, in der die Schlüsselfelder und der Positionsname definiert sind. Schlüsselfelder sind die Namen der Felder, die eine Position erzeugen. Alle nachfolgenden Felder eines Schlüsselfeldes werden mit in die neue Position übernommen. Trifft der Algorithmus auf ein weiteres oder ein gleich benanntes Schlüsselfeld, so wird eine neue Position eröffnet.


Syntax

Positioning {

FieldName1 Position1
FieldName2 Position2
...

}


Recognition bzw. Rec

Die Recognition steuert, ob ein Objekt ausgeführt wird oder nicht. Die Funktionsweise ist im Kapitel „Interne Objekte" beschrieben.


Qualifier Value

FieldOrValue
Qualifier ist ein Textstring, der als FieldOrValue ausgelegt ist. Mit Hilfe der Qualifier und des Schalters SeparateCentralQualifiers können zentrale Dokumente nach einem Qualifier separiert werden. Es entstehen für jeden vorhandenen Qualifier separate Ausgabefiles.


XMLOutput Value

XMLOutput nimmt das Input-Dokument unabhängig vom Input-Format und erzeugt es als XML-Output in einem File, der alle XML-Output-Dokumente enthält. XMLOutput ist ein Schalter mit drei Werten, wobei NONE bzw. 0 der Standardwert ist:

0 oder NoneEs wird kein XML-Output erzeugt (Standard)
1 oder BeforeEs wird XML-Output erzeugt, das Dokument wird vor Positioning und Grouping nach XML konvertiert
2 oder AfterEs wird XML-Output erzeugt, das Dokument wird nach Positioning und Grouping nach XML konvertiert


SupplementWorkItem Value

SupplementWorkItem ist eine Namensrefernz auf das WorkItem, das zur Darstellung von Logical Supplements aus dem Redaktionssystem verwendet wird. Das SupplementWorkItem wird nur dann ausgeführt, wenn das Redaktionssystem Logical Supplements für das Dokument definiert.


EmbeddedFiles Value

FieldOrValue
EmbeddedFiles ist ein Schlüsselwort zum Einbetten von Files in das zu erzeugende Druckdokument. Dabei wird ein oder mehrere Files von einer Festplatte gelesen und auf die erste Seite des zu erzeugenden PDFs eingebettet. Der Empfänger des PDFs kann diesen File dann auspacken und separat verarbeiten. EmbeddedFiles kann mehrfach definiert werden und enthält eine semikolonseparierte Liste von Filereferenzen. Eine Filereferenz ist wiederum eine kommaseparierte Liste mit bis zu drei Werten:


1) FileName

Name des Files, der eingebettet werden soll. Wird die ein FeldName angegeben, so wird der Inhalt des eingebetteten Files aus dem Feldinhalt gespeist. Enthält der FileName keinen Pfad, so gilt folgende Suchreihenfolge:
Lokales Verzeichnis, FormsPath, ImagePath
 

2) Kommentar (optional)
 

3) FeldName (optional)

Ist dort ein FeldName angegeben, so wird der Inhalt des einzubettenden Files nicht aus dem angegeben File selbst gezogen, sondern der Inhalt des Feldes wird als File eingebettet. Dabei wird das Feld gesucht, der Inhalt nach UTF8 konvertiert und dann als Fileinhalt eingebettet.


Beispiel
c:\hello.xml                           Ein File
c:\hello.xml,Kommentar                 Ein File mit Kommentar:
c:\hello.xml,Kommentar;d:\world.pdf    Mehrere Files
hello.xml,Kommentar,$global.Embedded   Inhalt aus einem Feld gelesen
  • Keine Stichwörter