**Eigenschaft:** ==== Vergleichswert ==== \\ **Beschreibung:** Mit diesem Wert wird festgelegt, gegen welchen Wert der unter **Prüfung** referenzierte Wert auf Gleichheit oder Ungleichheit getestet werden soll. Die maximale Länge des Vergleichswerts ist auf 255 Zeichen beschränkt. {{print2forms:objekte:prozess:opsval.png}} Bei der Eingabe des Vergleichswertes sind alle Klein- und Grossbuchstbaben, länderspezifischen Sonderzeichen, Ziffern und alle Sonderzeichen (ausser den weiter unten aufgeführten Metazeichen) erlaubt. Insbesondere ist die Verwendung von Leerstellen zulässig. Steuerzeichen wie Tabulator, Zeilen- oder Seitenvorschub können zwar hexadezimal eingegeben werden, sind aber nicht nutzbar, weil nur die Textbestandteile des Dokuments durchsucht werden. Mittels der Fluchsymbole '\' und '^' können, neben einigen besondere Variablen, auch bei der Mustererkennung gefundene Texte mit in die Zeichenkette mit dem Prozessnamen aufgenommen werden. Die Fluchtsymbole werden innerhalb der Schablone wie folgt verwendet: ^ Symbol ^ Bedeutung ^ | ''%%^%%X:Y'' | Das Circumflex fordert einen durch einen **Dokumentprozess** ermittelten Text an. ((Das sind hier konkret die Texte, die in der Bedingungsliste ermittelt worden sind. Dabei kann sowohl die Bedingungsliste des aktuellen Bearbeitungsschritts genutzt werden, aber auch die Bedingungslisten aller anderen Bearbeitungsschritte.\\ \\ )) Die durch den Doppelpunkt voneinander getrennten Zahlen wählen die Nummer der Bedingung (X, im Bereich 1 bis 99) und die Nummer des ermittelten Textes (Y, im Bereich 1 bis 9). So bezieht sich '%%^%%1:2' auf die erste Bedingung (die zum Aufruf des Formatprozesses geführt hat, der jetzt dieses Formular aufruft) und dort auf den zweiten Text (zweites Klammerpaar). Hat die angesprochene Bedingung einen Namen, kann statt der Bedingungsnummer (X) auch der Name angegeben werden. | | ''\\'' | Erzeugt den umgedrehten Schrägstrich. | | ''\^'' | Erzeugt das Circumflex. | | ''\~'' | Erzeugt die Tilde. | | ''\c'' | Erzeugt die IP-Adresse oder den Namen des Computers, der den Druckauftrag generiert hat. | | ''\e'' | Erzeugt die Nummer des Etiketts auf dem aktuellen Etikettenbogen. | | ''\f'' | Erzeugt die Dateibezeichnung des Druckauftrags (Nur wenn im %%PJL%%-Header enthalten). | | ''\i'' | Erzeugt die interne Kennung des Clients oder Gateways als Hexadezimalzahl. | | ''\j'' | Erzeugt den Namen des Druckauftrags (Nur wenn im %%PJL%%-Header enthalten). | | ''\k'' | Erzeugt eine verschüsselte Zeichenkette, die in der Regel an aufgerufene Programme in Systemfeldern übergeben wird, um diese Programme an diesen Client oder dieses Gateway binden zu können. | | ''\m'' | Erzeugt den Namen des Druckers, auf dem der Druckauftrag ausgeführt wird. | | ''\n'' | Erzeugt den Benutzernamen des Druckauftrags (Nur wenn im %%PJL%%-Header enthalten). | | ''\t'' | Erzeugt die Anzahl der Seiten im Dokument. | | (sp)''\uHH''(sp)\\ (sp)''\uHHHH''(sp)\\ (sp)''\uHHHHHH''(sp) | Gestattet die Aufnahme eines beliebigen Unicode-Zeichens in den Vergleichswert durch die Angabe seines 8-Bit, 16-Bit oder 24-Bit Hexadezimalwertes (also zwei, vier oder sechs Ziffern). Es können alle Zeichen von '\x00' bis '\xFF' erzeugt werden. Die Hexadezimalziffern A bis F können wahlweise als Gross- oder Kleinbuch(-)staben geschrieben werden. ((Die hier anzugebenden Werte sind wirklich die Unicode-Zeichenwerte gemäss **ISO 10646** und nicht etwa die UTF-8 Repräsentation dieser Zeichenwerte! (p2f) konvertiert diese Werte im Laufe der weiteren Verarbeitung selbst nach UTF-8.\\ \\ )) | | ''\xHH'' | Gestattet die Aufnahme eines beliebigen Zeichens in den Vergleichswert durch die Angabe seines Hexadezimalwertes (immer zwei Ziffern). Es können alle Zeichen von '\x00' bis '\xFF' erzeugt werden. Die Hexadezimalziffern A bis F können wahlweise als Gross- oder Kleinbuchstaben geschrieben werden. | Alle anderen Zeichen stehen innerhalb des Vergleichswerts für sich selbst. Es sind beliebige Mischformen aus konstanten und variablen Inhalten darstellbar. \\ \\ **Hinweise:** * Innerhalb des Vergleichswerts kann der sonst unterstützte umgedrehte Schrägstrich natürlich nicht für Variablen aus den Druckdaten benutzt werden, da der Schrägstrich die Daten referenziert, die von einem Druck- oder Etikettenprozess ermittelt worden sind. Variable Inhalte müssen immer vom Dokumentenprozess innerhalb der Bedingungsliste ermittelt werden. * Innerhalb des Vergleichswerts kann die sonst unterstützte Tilde nicht benutzt werden, da diese der Kennzeichnung von HTTP- oder ODBC-Referenzen dient, die im Dokumentenprozess nicht zur Verfügung stehen. Um eine Tilde, einen umgedrehten Schrägstrich oder das Circumflex innerhalb des Benutzernamens zu verwenden, müssen die Zeichen literal, das heist als '\\', '\^' oder '\~' kodiert werden. * Bei der Kodierung länderspezifischer Sonderzeichen ist zu berücksichtigen, dass alle Eingaben und Anzeigen innerhalb des (p2f)-Systems im Zeichensatz Unicode erfolgen. Deshalb kann es beim Einfügen von Nutzdaten in den Vergleichswert notwendig werden, solche Zeichen umzukodieren. Das durch (p2f) erledigen zu lassen, ist nicht vorgesehen. * Eine ausführliche Abhandlung und viele Beispiele zum Einsatz von Vergleichswerten und Mustern findet sich im (p2f) Handbuch über **Reguläre Ausdrücke** und hier im Wiki unter [[print2forms:regex:regex|Reguläre Ausdrücke]]. * Als schnelle Übersicht und Gedächtnisstütze kann hier das vollständige Syntaxdiagramm für reguläre Ausdrücke abgerufen werden: [[print2forms:regex:Komplettes Syntaxdiagramm]]. \\ \\