SyncServiceProviderExtensionJob30

Kurzbeschreibung

Der SyncServiceProviderExtensionJob30 erlaubt die Synchronisation der Marktpartnerdaten aus einem SAP IS-U mit der B2B. Er wird periodisch aufgerufen, um eine Extension in der B2B mit den Codenummern, eMail-Adressen und Namen von Marktpartnern zu pflegen.

Einrichtung

Der SyncServiceProviderExtensionJob30 ist ein Job, der über einen Scheduler eingerichtet wird. Zunächst wird daher gemäß der Dokumentation zu Scheduler Services ein Scheduler für den Synchronisationsjob eingerichtet. Als Service Eigenschat B3P_SCHEDULER_REGISTER_CLASSNAME wird der Klassenname org.b2bbp.service.inbound.scheduled.SyncServiceProviderExtensionJob30 gesetzt.

Alle weiteren Einstellungen sind der nachstehenden Tabellen von Service Eigenschaften zu entnehmen:

Extension MPID_SYNC

Im Standard schreibt die Marktpartnersynchronisation die verarbeiteten Daten in die Extension MPID_SYNC. Ein korrekter Eintrag kann nach der Synchronisation dann zum Beispiel aus drei Zeilen bestehend wie folgt aussehen:

9900496000005.9903231000008.NAME=energis GmbH
9900496000005.9903231000008.MAIL={[946594800000-253402297199000, marktpartner@mail.de]}
9900496000005.9903231000008.SID=SLF_ENER

Dabei entspricht NAME dem Namen des Serviceanbieter im IS-U, die SID der ID des Serviceanbieters und MAIL der synchronisierten Mailadresse (inkl. zeitlicher Begrenzung, Zeitscheibe) aus den Datenaustauschprozessen (Export) des Serviceanbieters.

Service Eigenschaften (Standard)

Name der Eigenschaft erlaubte Werte Beschreibung
SUPRESS_DUPLICATE_ERROR true, false (default) Wenn diese Eigenschaft mit dem Wert true gesetzt ist, werden Fehlermeldungen aufgrund von doppelten MPID-Einträgen in der MPID Extension unterdrückt.
B3P_MULTIPLE_SYSTEMS true, false (default) Wird gesetzt, wenn die MPID-Einträge mit mehreren IS-U Systemen synchronisiert werden soll. Weitere Details unterhalb dieser Tabelle.
B3P_PARTNERRELATION_WITHOUT_SYSTEM true, false (default) Wird gesetzt, wenn die MPID-Einträge ohne System-Nummer angelegt werden sollen. Weitere Details unterhalb dieser Tabelle.
B3P_USE_MPID_EDITOR true, false (default) Wird gesetzt, wenn die Extension durch den MPID Editor gelesen können werden soll. Von dieser Eigenschaft hängt das Trennzeichen ("." oder "_") in der Extension MPID_SYNC ab.
REMOVE_DUBLICATE_ENTRIES / REMOVE_DUPLICATE_ENTRIES true, false (default) Wird gesetzt um Duplikate aus der MPID Extension zu filtern.
B3P_EXTENSION_TYPE Zeichenkette [A-Za-z0-9_] der Länge 1..100 Der Name der Extension, die in der B2B gepflegt werden soll.
TABLE_NAME Zeichenkette der Länge 1..1000 (default: SPROV) Der Name der Tabelle im IS-U, mit der synchronisiert werden soll.
B3P_FUBA_NAME Zeichenkette der Länge 1..1000 (default: Z_GET_SERVICEPROV) Der Name des FUBA das durch den Job aufgerufen werden soll.
IGNORE_MISMATCHING_ILN_COMBINATION true, false (default) Es werden keine Kombinationen zwischen Gas- und Strommarktteilnehmern erstellt.
(Kombination von 9800000000000 mit 9900000000000 wird vermieden)

B3P_MULTIPLE_SYSTEMS

Die Ausführung der Synchronisation als Multi-System bietet inzwischen deutlich mehr Konfigurationsmöglichkeiten, wie zum Beispiel die Duplikatsprüfung, welche in der einfachen Ausführung (kein Multi-System) nicht vorhanden sind. Daher ist es empfohlen, diese Einstellung grundsätzlich auf true zu setzen. Sollte die Eigenschaft nicht gesetzt werden, wird der SimpleSystemExecutor verwendet, was nun zu einem Systemfehler führt. In einem der nächsten Release wird die Eigenschaft (inkl. der einfachen Ausführung der Synchronisation) entfernt und immer ein Multi-System angenommen.

B3P_PARTNERRELATION_WITHOUT_SYSTEM

Mit dieser Eigenschaft wird die Mandantentrennung (auch bei gesetzter Eigenschaft B3P_MULTIPLE_SYSTEMS) wieder aufgehoben. Die Partnerbeziehungen werden nicht mehr als Beziehungen zwischen System und Partner gespeichert, stattdessen werden nur noch die Nummern der Marktpartner verwendet. Diese Konfiguration führt im Standard (mehrere eigene/interne Nummern werden aus dem SAP übergeben) zu einer deutlichen Verkleinerung der Extension MPID_SYNC und damit zu höherer Geschwindigkeit bei der Anzeige der Daten im MPID-Editor.

Sollte ausschließlich die Synchronisation mit dem IS-U verwendet werden (keine manuelle Änderung im MPID-Editor) und nur ein SAP-System angebunden sein, macht diese Einstellung Sinn und kann problemlos vorgenommen (und ebenso wieder entfernt) werden.

Sollten zusätzlich zur Synchronisation mit dem IS-U Änderungen im MPID-Editor durchgeführt werden, gehen diese manuellen Änderungen verloren, wenn die Eigenschaft B3P_PARTNERRELATION_WITHOUT_SYSTEM aktiviert wird. Dementsprechend empfehlen wir ein vorheriges Backup der Extension MPID_SYNC. Im Fall von regelmäßigen Änderungen im MPID-Editor muss eine Migration ausgeführt werden.

Migration

Soll eine Migration der Extension MPID_SYNC durchgeführt werden, da zum Beispiel die B2B das führende System für E-Mail-Adressen ist, kann dies folgendermaßen gemacht werden:

In der Marktpartnerverwaltung (MPID-Editor) wird ein neuer Marktpartner angelegt, welcher den Namen MIGRATION_REMOVE_SYSTEMS hat. Dies triggert die Umstellung/Migration der Extension. Der Benutzer bekommt ein Feedback in der Oberfläche.

Service Eigenschaften (Experte)

Experteneigenschaften werden in der Regel nicht benötigt. Sie sind daher nur in Ausnahmefällen zu setzen.

Name der Eigenschaft erlaubte Werte Beschreibung
USE_ERROR_CHECK true, false (default) Diese Eigenschaft kann gesetzt werden um eine erweiterte Fehlerprüfung der Nachrichten zu aktivieren. Diese Eigenschaft ist zum Debuggen im Fall von Problemen gedacht.
ID_ADDITIONAL_INTERNAL_IDS Zeichenkette der Länge 1..1000 Aus dem IS-U werden die Nummern der eigenen Marktteilnehmer übertragen. Diese können hier kommasepariert durch weitere Nummern ergänzt werden.
(Anwendungsbeispiel: MSB, MDL werden in der Extension MPID_SYNC benötigt, sind im IS-U aber nicht als eigene Serviceanbieter markiert.)
ID_REMOVE_INTERNAL_IDS Zeichenkette der Länge 1..1000 Aus den aus dem IS-U übertragenen Nummern der eigenen Marktteilnehmer können mit dieser Eigenschaft Nummern entfernt werden.
(Anwendungsbeispiel: Die fiktiven Nummern für Monopolsparten sollen nicht mit synchronisiert werden.)
B3P_JS_MPID_ENTRY_FILTER Zeichenkette der Länge 1..1000 Ein JavaScript-Ausdruck, der auf jeden einzelnen Eintrag angewandt werden kann. An diesen Ausdruck wird ein Objekt mpidEntry vom Typ org.b2bbp.service.inbound.scheduled.MpidEntrySAP übergeben. In diesem Objekt gehalten sind die Daten eines Marktpartners vom IS-U System. Jede Veränderung dieser Daten ändert den entsprechenden Eintrag in der gepflegten MPID Extension in der B2B.
PREFER_ISU_FOR_DATA Zeichenkette der Länge 1..1000 (default NONE)

Sollten MPID-Editor (siehe Modul MPID-Editor) und Synchronisation parallel benutzt werden sollen, ist es möglich für folgende Werte eine IS-U-Präferierung der Daten einzustellen:
NAME, DELETE

Im Defaultfall (NONE) werden alle Daten aus dem IS-U als Duplikate markiert und damit nicht gesetzt, wenn der MPID-Editor vorher benutzt wurde (und dort Daten gespeichert wurden).

NAME
Mit dem Wert NAME wird konfiguriert, dass eine Änderung des Namens des Serviceanbieters im IS-U dann in der B2B greift.

DELETE
Mit dem Wert DELETE wird dafür gesorgt, dass im IS-U entfernte Serviceanbieter auch in der B2B entfernt werden.

Neue Serviceanbieter kommen automatisch korrekt in der B2B an.

Eine Änderung der E-Mail Adresse im IS-U, so dass diese in der B2B aktualisiert wird, ist bei paralleler Nutzung des MPID-Editors aktuell noch nicht möglich.

B3P_SAID_CHECK_PATTERN regulärer Audruck der Länge 1..1000 (siehe Oracle Tutorial zu regulären Ausdrücken) Ein regulärer Ausdruck, dem vom SAP übergebene Service-IDs entsprechen müssen, um als gültig akzeptiert zu werden.
B3P_JCO_FIELD_SERVICE_ID Zeichenkette der Länge 1..1000 (default "SERVICEID") Der Name der Service-ID Spalte in der vom IS-U übergebenen Tabelle (i.d.R. sollte dieser Wert nicht gesetzt werden).
B3P_JCO_FIELD_NAME
Zeichenkette der Länge 1..1000 (default "NAME") Der Name der Namens-Spalte in der vom IS-U übergebenen Tabelle (i.d.R. sollte dieser Wert nicht gesetzt werden).
B3P_JCO_FIELD_EXTERNALID
Zeichenkette der Länge 1..1000 (default "EXTERNALID") Der Name der externdn ID Spalte in der vom IS-U übergebenen Tabelle (i.d.R. sollte dieser Wert nicht gesetzt werden).
B3P_JCO_FIELD_EMAIL
Zeichenkette der Länge 1..1000 (default "EMAIL") Der Name der eMail-Spalte in der vom IS-U übergebenen Tabelle (i.d.R. sollte dieser Wert nicht gesetzt werden).
B3P_JCO_FIELD_DATETO
Zeichenkette der Länge 1..1000 (default "DATETO") Der Name der Enddatums-Spalte in der vom IS-U übergebenen Tabelle (i.d.R. sollte dieser Wert nicht gesetzt werden).
B3P_JCO_FIELD_DATEFROM
Zeichenkette der Länge 1..1000 (default "DATEFROM") Der Name der Startdatums-Spalte in der vom IS-U übergebenen Tabelle (i.d.R. sollte dieser Wert nicht gesetzt werden).
B3P_MPID_DATE_FORMAT Zeichenkette der Länge 1..1000 (default "yyyyMMdd") Das Datumsformat zum parsen der vom IS-U übergebenen Datumswerte.
B3P_MPID_DEFAULT_START_DATE Standardwert für den Beginn der Gültigkeit im Format yyyyMMdd (default "19700101") Das Standarddatum für den Start der Gültigkeit, falls vom IS-U kein Wert übergeben wurde.
B3P_MPID_DEFAULT_STOP_DATE Standardwert für den Beginn der Gültigkeit im Format yyyyMMdd (default "99991231") Das Standarddatum für das Ende der Gültigkeit, falls vom IS-U kein Wert übergeben wurde.

MpidEntrySAP

Das Objekt vom Typ MpidEntrySAP ist kann in einen definierten JavaScript-Filter zu Bearbeitung eines Marktpartner-Eintrages genutzt werden. Es Unterstützt die folgenden Aufrufe:

Aufruf Beschreibung
var email = mpidEntry.getEmail(); speichert die eMail-Adresse als Zeichenkette in der Variable email.
var name = mpidEntry.getName(); speichert den Namen des Marktpartners in der Variable name.
var serviceid = mpidEntry.getServiceId(); speichert die ServiceId des Marktpartners in der Variable serviceid.
var startdate = mpidEntry.getStartDate(); speichert das Startdatum in Millisekunden seit dem 01.01.1970 für die Gültigkeit der Marktpartnerbeziehung in der Variable startdate.
var stopdate = mpidEntry.getStopDate(); speichert das Enddatum in Millisekunden seit dem 01.01.1970 für die Gültigkeit der Marktpartnerbeziehung in der Variable stopdate.
mpidEntry.setValid([true / false]); markiert den Eintrag global als gültig [true (default)] oder ungültig [false].
mpidEntry.setEmail(“test@test.org”); Setzt die eMail-Adresse auf den Wert test@test.org.
mpidEntry.setName(“a name”); Setzt den Namen auf den Wert a name.
mpidEntry.setServiceId(“12345”) Setzt die Service-ID auf den Wert 12345.
mpidEntry.setStartDate(86400000) setzt das Startdatum auf den 02.01.1970.
mpidEntry.setStartDate(86400000 * 10) setzt das Startdatum auf den 10.01.1970.

See Also

Synchronisationsmechanismen mit I-SU

View Me   Edit Me