Einrichtung der B2BbP als EAI für die Verwendung der WiM initXml zum Aufruf des MBSE WFM

Zusammenfassung uns Szenario

Über die bestehende initXml Struktur der WiM sollen für das MBSE WfM der Ausbau und Einbau von Geräten getriggert werden soll. Da das WiM Fastlane ausschließlich für die Prozessteuerung und Mako verwendet werden soll wird eine Implementierung auf Basis der B2BbP EAI Funktionalitäten gewählt.

B2BbP EAI Dokumentation und Voraussetzungen

Die vorliegende Konfiguration bespricht eine minimalistische Konfiguration der B2BbP als EAI Plattform in diesem Szenario. Die folgenden Dokumentationen sind Voraussetzungen bzw. können nützlich im Zusammenhang mit Kundenindividuellen Systemlandschaften und Anforderungen sein. Wenn zum Beispiel noch ein Proxyuser oder Passwort beim Versenden von Request notwendig ist.

Konfiguration

Für die Konfiguration wird das Customizing B2BbPInitXmlToMbseWfm.zip benötigt. Bitte überprüfen Sie vor dem Einspielen der zip die ActionIds und die entsprechende Channelkonfiguration. Im folgenden werden die Schritte beschrieben, die nicht über das CustomizigngUpload eingespielt werden können.

Channel Distribution

Das Routing wird auf Grund der bestehenden Dialect über die EdiConditionDistributorAll-Presentations vorgenommen. Hierzu muss in der Extension EXT_CHANNEL_DIST die ChannelDistribution entsprechend im Eingang registriert werden. Über den Beispielausdruck

"INBOUND_MBSE_WFM" <== $messagecontext.FORMAT.attributes.processPart == "NLIWWFMTASK"; 

in der GENERIC_EDICONDITION_DISTRIBUTION erfolgt dann das entsprechende Routing.

Extension Konfiguration

Bitte passen sie noch folgende Einträge in der Extension EAI_OUTBOUND_SERVICE_CONFIG entsprechend Ihren Bedingungen an:

WFM_NLIWWFMTASK_URL=http://server:port/api/wfm-task/meterReplaceRequest?client-name={clientname eintragen}
WFM_NLIWWFMTASK_USERNAME=
WFM_NLIWWFMTASK_PASSWORD=

initXml und ZielMapping

MBSE /api/wfm-task/meterReplaceRequest

Das Zielinterface ist die MBSE WFM Schnittstelle …/api/wfm-task/meterReplaceRequest

Beispiel:

{
   "processId":"57f7bdd1-c7a0-11ea-aefd-9242f1c89b53",
   "orderType":"UPGRADE_TO_SMART_METERING_SYSTEM",
   "msbIln":"1111111111111",
   "partnerIln":"1111111111112",
   "meteringLocation":"DE2020032507307029990000000009961",
   "meterNumberOld":"1ITT0013660491",
   "earliestAppointment":"2020-07-16T22:20:58.606+02:00",
   "latestAppointment":null,
   "equipmentType":"AHZ",
   "equipmentBasicType":[
      null   
],
   "smartMeterGatewayNumber":null,
   "priority":"HIGH",
   "obisDeinstallationList":[
      "1-0:1.8.0"   
],
   "articleNr":null,
   "orderSubType":"IMS-ET-TAF7",
   "annotation":"Beachten Eintarif!",
   "installGateway":"yes"
}

Quellbeschreibung

Als Quelldokument dient die initXml aus der WiM Implementierung.

Pflichtfelder für die Verarbeitung innerhalb der B2BbP

Grundlage bildet die initXml. Für das korrekte Verarbeitung innerhalb der B2BbP muss zusätzlich zu den unten stehenden Mappingfeldern folgende Felder mindestens befüllt werden:

Pflichtfeld Beschreibung Beispiel
/BdewTemplateInit/WimProcessList/WimProcessData/processOverview/ownILN Eigene ILN Nummer für Systemsicht in der B2BbP 9900000VNB
/BdewTemplateInit/WimProcessList/WimProcessData/processOverview/partnerILN Partner ILN Nummer für die Partnersicht in der B2BbP 9900000gMSB
/BdewTemplateInit/WimProcessList/WimProcessData/processOverview/processPart Processpart zur Identifikation des Interfaces, Mappings und Routings. Dies ist ein Festwert. NLIWFMTASK

Beispiel:

<?xml version="1.0" encoding="UTF-8"?>
<BdewTemplateInit>
	<WimProcessConfiguration>
		<id>Irgendwas</id>
	</WimProcessConfiguration>
	<WimProcessList>
		<WimProcessData>
			<processData>
				<meteringPoint>DE20200709090000XR20007XNEU000580</meteringPoint>
				<msbIln>1111111111111</msbIln>
				<processName>WFM Task</processName>
				<processPart>NLIWFMTASK</processPart>
				<terminationDate>2020-07-09</terminationDate>
			</processData>
			<processOverview>
				<group>GroupName</group>
				<meteringPoint>DE20200709090000XR20007XNEU000580</meteringPoint>
				<ownILN>1111111111111</ownILN>
				<partnerILN>1111111111112</partnerILN>
				<processName>WFM Task</processName>
				<processPart>NLIWFMTASK</processPart>
			</processOverview>
			<masterDataVo>
				<deviceDirectionDatas>
					<deviceDirectionData>
						<deviceNumber>deviceNumber</deviceNumber>
						<meterType>meterType</meterType>
						<smartmeterGateway-Ref>smartMeterref</smartmeterGatewayRef>
					</deviceDirectionData>
				</deviceDirectionDatas>
				<obisMeters>
					<obisMeter>
						<obisNumber>obis1</obisNumber>
					</obisMeter>
					<obisMeter>
						<obisNumber>obis2</obisNumber>
					</obisMeter>
				</obisMeters>
			</masterDataVo>
			<additionalDataList>
				<additionalData>
					<key>orderType</key>				
					<value>orderType</value>
				</additionalData>
				<additionalData>
					<key>orderSubType</key>
					<value>OrderSubType</value>
				</additionalData>
				<additionalData>
					<key>priority</key>
					<value>priorioty</value>
				</additionalData>
				<additionalData>
					<key>installGateway</key>
					<value>installGateway</value>
				</additionalData>
				<additionalData>
					<key>annotation</key>
					<value>Schlüssel für Keller im Zimmer 502 abho-len.</value>
				</additionalData>
				<additionalData>
					<key>articelNr</key>
					<value>articelNr</value>
				</additionalData>
			</additionalDataList>
		</WimProcessData>
	</WimProcessList>
</BdewTemplateInit>

Mappingtabelle

Bestimmte Parameter können nicht in der initXml auf definierte Felder geschrieben werden. Hier wird die generischen additionalDatas(http://wim.next-level-help.org/wim_dev_xml_upload_additionalData.html) verwendet. Die Feldbeschreibungen für die additionalDatas des WFM sind hier beschrieben.

Zielfeld Quellfeld Beschreibung Festwert oder Beispiel
processId WimProcessConfiguration/id Id für des WFM  
orderType WimProcessList/WimProcessData/additionalDataList/additionalData[/key==’orderType’)/value Art des Auftrages siehe
msbIln WimProcessList/WimProcessData/processData/msbIln ILN Nummer des MSB am Gerät 9900000gMSB
partnerIln WimProcessList/WimProcessData/processOverview/partnerILN    
meteringLocation WimProcessList/WimProcessData/processData/meteringPoint MeLo des Gerätes  
meterNumberOld WimProcessList/WimProcessData/masterDataVo/deviceDirectionDatas/deviceDirectionData/deviceNumber Gerätenummer des zu tauschenden Gerätes  
earliestAppointment   Frühester Tauschzeitpunkt Hier wird beim Aufruf der Systemzeitpunkt verwendet
latestAppointment WimProcessList/WimProcessData/processData/terminationDate Spätester Wechselzeitpunkt im Format yyyy-mm-dd 2020-07-09
equipmentType WimProcessList/WimProcessData/masterDataVo/deviceDirectionDatas/deviceDirectionData/meterType Zählertyp aus UTILMD CCI+++E13’  
equipmentBasicType   Aktuell wird hier ein Defaultwert gesetzt. ZAEHLEINRICHTUNG
smartMeterGatewayNumber WimProcessList/WimProcessData/masterDataVo/deviceDirectionDatas/deviceDirectionData/smartmeterGatewayRef Gerätenummer des Smartmetergateways  
priority WimProcessList/WimProcessData/additionalDataList/additionalData[/key==’priority’)/value Priorität des Auftrages siehe
obisDeinstallationList WimProcessList/WimProcessData/masterDataVo/obisMeters/obisMeter/obisNumber Liste der betroffenen OBIS-Daten  
articleNr WimProcessList/WimProcessData/additionalDataList/additionalData[/key==’articleNr’)/value    
orderSubType WimProcessList/WimProcessData/additionalDataList/additionalData[/key==’orderSubType’)/value    
annotation WimProcessList/WimProcessData/additionalDataList/additionalData[/key==’annotation’)/value Hinweis für den Wechsel  
installGateway WimProcessList/WimProcessData/additionalDataList/additionalData[/key==’installGateway’)/value Installation eines Gateways siehe
View Me   Edit Me