OS4X plugin os4xplugin set recipient by file

From OS4X
Jump to navigation Jump to search

Zweck

Bestimmen des Adresscodes des Empfängers eines Auftrags anhand der Rückgabe eines Scripts, welches den absoluten Filenamen der Datei(en) des Auftrags enthält. Der Adresscode, der aus dem Script ermittelt wird, wird als einzige Ausgabe auf stdout vom Plugin eingelesen und daraus der Empfänger des Auftrags in der Datenbank gesucht. Falls es mehrere User gibt, die dieses Adresscode nutzen, wird der letzte eingetragene genutzt. Falls die Standardausgabe des Scripts leer ist, wird kein Adresscode gesucht.

Voraussetzungen

  • Datei /etc/os4x.conf bzw. Konfigurationsdatei in der Umgebungsvariable $OS4X_CFGFILE definiert. Über die Datenbank, die hier konfiguriert ist, wird das temporäre Verzeichnis sowie das Lizenzfile bezogen.
  • OS4X Enterprise Lite-Lizenz oder höher
  • Das Script zur Bestimmung des Adresscodes ist selbst zu administrieren und hat folgenden absoluten (harten, nicht änderbaren) Pfad:
$OS4X_SCRIPT_DIR/file_addressing_recipient.sh
  • Das Script erhält folgende Parameter:
  1. abs. Filename
  2. Partnerkurzname

Falls mehrere Dateien im Auftrag enthalten sind, wird das Script für jede Datei einzeln aufgerufen. Es kann keine Garantie über die Reihenfolge der Dateien gegeben werden. Der letzte Adresscode, der ausgegeben wird, definiert damit den Adressaten des Auftrags.

Nützlicher Hinweis

Nachdem der Adressat definiert ist, ist lediglich der Datenbankwert aktualisiert. Dies ist deshalb so implementiert, um den Datenbank-Overhead so gering wie möglich zu halten, da bei jeder Änderug der XML-Information ein Statement abgesetzt wird. Daher ist es wichtig, am Ende der Adress-Bestimming das "OS4X plugin os4xplugin_set_rec_in_xml_by_db" zu nutzen, um diese Information (Datenbank -> XML) zu synchronisieren. Ein typischer Ablauf einer als "default receive plugin group" definierten Plugingruppe beinhaltet beispielhaft folgende Reihenfolge:

  • Set recipient by dynamic addresscode via file
  • optional: andere dynamische Adresscode-auflösende Plugin, wie z.B.:
    • Promata GmbH - set recipient by dynamic addresscode
    • Promata GmbH - set recipient by dynamic addresscode, v2
  • ENGDAT v2 decode
  • set recipient in XML by OS4X job database value
  • set sender in XML by OS4X job database value

Konfiguration

(keine)

Rückgabewerte

0: alles OK

1: Configfile (/etc/os4x.conf bzw. Inhalt der Variable "OS4X_CFGFILE") kann nicht gelesen werden oder die hier konfigurierte Datenbank kann nicht verbunden werden

2: Lizenzfehler

3: XML-Parameterfile kann nicht geparsed werden