Erweiterungen im

Aus openM2-Wiki
Wechseln zu: Navigation, Suche

Durch den TYPE="EXTKEY" ist die die Referenzierung von Objekten innerhalb eines Importdokumentes ohne der Kenntnis der openM2 OID möglich.
Referenz eines Reiters, um den Import von Objekten direkt in den Reiter eines Objektes zu ermöglichen.

Referenz über externen Schlüssel

Der externe Schlüssel, welcher sich aus der ID-Domain und der ID zusammensetzt, wird gegen die KeyMapper Tabelle in der Datenbank geprüft und es wird, sofern der Wert gefunden wurde, die zugeordnete openM2 OID ausgelesen. Diese OID definiert das gewünschte Container-Objekt. Im nachfolgenden Beispiel wird in der KeyMapper Tabelle nach der ID-Domain „ Kunden " und dem ID-Wert „ 666 " gesucht. Konnte die entsprechende OID aufgelöst werden, wird das Objekt in diesem Fall im Container mit dieser OID angelegt.

...
<OBJECT TYPE="Test">
  <SYSTEM>
    ...
    <CONTAINER TYPE="EXTKEY">
      <ID DOMAIN="Kunden">666<ID>
    <CONTAINER>
  <SYSTEM>
  ...
<OBJECT>
...

Damit ist es möglich, ohne Kenntnis der openM2 OIDs Importdokumente aus Fremdapplikationen zu generieren, welche die Schlüssel aus der Fremdapplikation verwenden.

Referenz eines Objektreiters

Das <CONTAINER> Tag wurde dabei zusätzlich um das Attribut TABNAME erweitert. TABNAME stellt dabei immer den Namen eines Reiters dar. Damit wird ein Reiterobjekt mit dem Namen aus TABNAME gesucht, der zum angegeben Container-Objekt gehört.

...
<CONTAINER TYPE="EXTKEY" TABNAME="Verweise">
  <ID DOMAIN="Kunden">666<ID>
</CONTAINER>
...

In diesem Beispiel wird in der Datenbank zuerst nach Objekt mit dem KeyMapping „Kunden/666" gesucht. Wird dieses im openM2 System gefunden, wird danach das Reiterobjekt mit dem Namen „Verweise" herausgesucht.

Gibt es mehr als einen Tab mit denselben Namen, kann die Container Definition nicht aufgelöst werden.
Die Bezeichnung des Reiters ist nicht sprachunabhängig! D.h. das untenstehende Beispiel kann nur auf einem deutschsprachigen openM2 System aufgelöst werden, nicht jedoch auf einem englischsprachigen.

Dies ist unabhängig von der Verwendung eines externen Schlüssels und funktioniert auch mit:

<CONTAINER TYPE="PATH" TABNAME="Verweise">Gruppe/Infos</CONTAINER>
<CONTAINER TYPE="ID" TABNAME="Verweise">0x010174010000010D</CONTAINER>
<CONTAINER TYPE="INHERIT" TABNAME="Verweise"/>

Icon Info.png
Info
Beispiele zur Erweiterung des <CONTAINER> Tag finden Sie im Anhang.