Webservice für Marktpartnerdaten

Webservice zur Befüllung der Marktpartner

Alternativ zur Befüllung der Marktpartner aus der UI oder der Synchronisation mit einem IS-U ist es möglich, die Marktpartner über einen Webservice zu befüllen. Dieser Webservice stellt aktuell eine Methode zur Übergabe von einer Liste von Marktpartnern zur Verfügung.

Auslieferung

Der Webservice ist ein Content, welcher durch NLI bereitgestellt werden kann.

Einrichtung

Die Einrichtung und Konfiguration der Webservices ist in folgender Dokumentation allgemein beschrieben: Webservice (Receiver)

Folgende Konfiguration kann benutzt werden:

Eigenschaft Wert Beschreibung
Provider NLI
Version 1.0
Typ CXF
Format WebService
Fromat Version 1
Zielformat syncmapa
Document Die syncmapa jar

Customizing

Folgende GlobalProperty muss konfiguriert werden

B3P_MPID_DATA_FROM_DB "true" oder "false" (Default false) Ist dieser Wert auf “true“ gesetzt werden die Marktpartner aus der Databanktabelle B2BBP_DATA_MP ermittelt.

Sql-Skripte für die Datenbanktabelle B2BBP_DATA_MP können im Support erfragt werden.

Overrides & Erweiterungen

Falls die GlobalProperty B3P_MPID_DATA_FROM_DB auf true gesetzt ist, können Marktpartnerdaten aus der B2B heraus nicht mehr editiert werden. Es sollten die Funktionalitäten wie “Speichern”, “Löschen”, “Neuer Eintrag”, “1:1 Adresswechsel” und “Export” zum Editieren der Daten ausgeblendet werden.

Die Overrides sind hier zu finden:

Rollenattribute MPID-Editor

WSDL

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions name="SyncMaPaService" targetNamespace="http://nextlevel.com/webservices/syncmapa" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://nextlevel.com/webservices/syncmapa" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
  <wsdl:types>
    <xs:schema elementFormDefault="unqualified" targetNamespace="http://nextlevel.com/webservices/syncmapa" version="1.0" xmlns:ns1="http://nextlevel.com/webservices/SyncResponse" xmlns:tns="http://nextlevel.com/webservices/syncmapa" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:import namespace="http://nextlevel.com/webservices/SyncResponse"/>

    <xs:element name="energyOperator" type="tns:energyOperator"/>
    <xs:element name="addEnergyOperators" type="tns:addEnergyOperators"/>
    <xs:element name="addEnergyOperatorsResponse" type="tns:addEnergyOperatorsResponse"/>

    <xs:complexType name="addEnergyOperators">
      <xs:sequence>
        <xs:element maxOccurs="unbounded" minOccurs="0" name="energyOperators" type="tns:energyOperator"/>
      </xs:sequence>
    </xs:complexType>

    <xs:complexType name="energyOperator">
      <xs:sequence>
        <xs:element name="referenceId" type="xs:int"/>
        <xs:element minOccurs="1" maxOccurs="1" name="name" type="xs:string"/>
        <xs:element minOccurs="0" name="partnerCode" type="xs:string"/>
        <xs:element minOccurs="1" maxOccurs="1" name="systemCode" nillable="true" type="xs:string"/>
        <xs:element minOccurs="0" name="one2oneAddress" type="xs:string"/>
        <xs:element minOccurs="1" maxOccurs="1" name="validFrom" nillable="true" type="xs:dateTime"/>
        <xs:element minOccurs="1" maxOccurs="1" name="validTo" nillable="true" type="xs:dateTime"/>
        <xs:element minOccurs="0" name="role" type="tns:role-type"/>
        <xs:element minOccurs="0" name="sector" type="tns:sector-type"/>
        <xs:element minOccurs="0" name="contact" type="tns:contact"/>
      </xs:sequence>
    </xs:complexType>

    <xs:complexType name="contact">
      <xs:sequence>
        <xs:element minOccurs="0" name="type" type="xs:string"/>
        <xs:element minOccurs="1" maxOccurs="1" name="firstName" nillable="true" type="xs:string"/>
        <xs:element minOccurs="1" maxOccurs="1" name="lastName" nillable="true" type="xs:string"/>
        <xs:element minOccurs="0" name="email" type="xs:string"/>
        <xs:element minOccurs="1" maxOccurs="1" name="telephoneNumber" nillable="true" type="xs:string"/>
        <xs:element minOccurs="1" maxOccurs="1" name="validFrom" nillable="true" type="xs:dateTime"/>
        <xs:element minOccurs="1" maxOccurs="1" name="validTo" nillable="true" type="xs:dateTime"/>
      </xs:sequence>
    </xs:complexType>

    <xs:complexType name="addEnergyOperatorsResponse">
      <xs:sequence>
        <xs:element minOccurs="0" name="return" type="ns1:SyncResponse"/>
      </xs:sequence>
    </xs:complexType>

    <xs:complexType name="energyOperatorSyncResult">
      <xs:sequence>
        <xs:element minOccurs="0" name="faultMessage" type="xs:string"/>
        <xs:element name="referenceId" type="xs:int"/>
        <xs:element minOccurs="0" name="successful" type="xs:boolean"/>
      </xs:sequence>
    </xs:complexType>

    <xs:simpleType name="role-type">
      <xs:restriction base="xs:string">
        <xs:enumeration value="BIKO"/>
        <xs:enumeration value="BKV"/>
        <xs:enumeration value="EIV"/>
        <xs:enumeration value="LF"/>
        <xs:enumeration value="MGV"/>
        <xs:enumeration value="MSB"/>
        <xs:enumeration value="NB"/>
        <xs:enumeration value="RB"/>
        <xs:enumeration value="UNB"/>
        <xs:enumeration value="GWA"/>
      </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="sector-type">
      <xs:restriction base="xs:string">
        <xs:enumeration value="ELECTRICITY"/>
        <xs:enumeration value="GAS"/>
      </xs:restriction>
    </xs:simpleType>

    </xs:schema>
      <xs:schema targetNamespace="http://nextlevel.com/webservices/SyncResponse" version="1.0" xmlns:ns1="http://nextlevel.com/webservices/syncmapa" xmlns:xs="http://www.w3.org/2001/XMLSchema">

      <xs:import namespace="http://nextlevel.com/webservices/syncmapa"/>

      <xs:complexType name="SyncResponse">
        <xs:sequence>
          <xs:element name="success" type="xs:boolean"/>
          <xs:element minOccurs="0" name="faultMessage" type="xs:string"/>
          <xs:element maxOccurs="unbounded" minOccurs="0" name="syncStatusList" nillable="true" type="ns1:energyOperatorSyncResult"/>
        </xs:sequence>
      </xs:complexType>

    </xs:schema>
    </wsdl:types>
      <wsdl:message name="addEnergyOperatorsResponse">
        <wsdl:part name="parameters" element="tns:addEnergyOperatorsResponse"></wsdl:part>
      </wsdl:message>

      <wsdl:message name="addEnergyOperators">
        <wsdl:part name="parameters" element="tns:addEnergyOperators"></wsdl:part>
      </wsdl:message>

      <wsdl:portType name="SyncMaPa">
        <wsdl:operation name="addEnergyOperators">
          <wsdl:input name="addEnergyOperators" message="tns:addEnergyOperators">
        </wsdl:input>
          <wsdl:output name="addEnergyOperatorsResponse" message="tns:addEnergyOperatorsResponse">
        </wsdl:output>
        </wsdl:operation>
      </wsdl:portType>

      <wsdl:binding name="SyncMaPaServiceSoapBinding" type="tns:SyncMaPa">
        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
        <wsdl:operation name="addEnergyOperators">
          <soap:operation soapAction="" style="document"/>
          <wsdl:input name="addEnergyOperators">
            <soap:body use="literal"/>
          </wsdl:input>
          <wsdl:output name="addEnergyOperatorsResponse">
            <soap:body use="literal"/>
          </wsdl:output>
        </wsdl:operation>
      </wsdl:binding>
    <wsdl:service name="SyncMaPaService">
      <wsdl:port name="SyncMaPaPort" binding="tns:SyncMaPaServiceSoapBinding">
        <soap:address location="http://localhost:8080/SyncMaPa/services"/>
      </wsdl:port>
    </wsdl:service>

</wsdl:definitions>

XML Aufruf Bespiel

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:syn="http://nextlevel.com/webservices/syncmapa">
<soapenv:Header/>
<soapenv:Body>
  <syn:addEnergyOperators>
    <!--Zero or more repetitions:-->
    <energyOperators>
      <referenceId>1</referenceId>
      <name>Markpartner Name</name>
      <!--Optional:-->
      <partnerCode>1234567890123</partnerCode>
      <systemCode>3210987654321</systemCode>
      <!--Optional:-->
      <one2oneAddress>o@o.de</one2oneAddress>

      <!--Optional:-->
      <role>BIKO</role>
      <!--Optional:-->
      <sector>ELECTRICITY</sector>
      <!--Optional:-->
      <contact>
        <!--Optional:-->
        <type>CIN</type>
        <firstName>Ionut</firstName>
        <lastName>Popescu</lastName>
        <!--Optional:-->
        <email>i@p.ro</email>
        <telephoneNumber>03213551651</telephoneNumber>
        <validFrom>2001-10-26T19:32:52Z</validFrom>
        <validTo>2020-10-26T19:32:52Z</validTo>
      </contact>
    </energyOperators>
  </syn:addEnergyOperators>
</soapenv:Body>
</soapenv:Envelope>

Beschreibung der Paramater

Element EnergyOperator

EnergyOperator

referenceId Refernz auf ein Objekt des Kunden. Hiermit kann der Kunde das Synchronisationsergebniss zum einzelenen Objekt im eigenen System bearbeiten
name Name des Marktpartners
partnerCode BDEW Code des Partners
systemCode Eigene BDEW Code
one2oneAddress Kommunikationsadresse
validFrom Gueltig ab
validTo Gueltig bis. Wenn nich angegegen dann 31.12.9999
role-type Rolle des Marktpartners lt. BDEW Richtlinien. Moegliche Optionen:
  • BIKO
  • BKV
  • EIV
  • LF
  • MGV
  • MSB
  • NB
  • RB
  • UNB
  • GWA
sector-type Marktsegment:
  • ELECTRICITY
  • GAS
Contact Ansprechspartner. Typ: Contact, siehe unten.

Element Contact

Contact

type Art der Kontaktperson. Muss mit der einstellung in B2BBP passen.
firstname Vorname
lastname Nachname
email E-Mail-Adresse der Kontaktperson
telephoneNumber Telefonnummer der Kontakperson
validFrom Gueltig ab
validTo Gueltig bis. Wenn nich angegegen dann 31.12.9999

Element SyncResponse

SyncResponse

success True oder False. Weisst auf ein Grundlegendes Fehler hin. Z.B. wenn DB Zugriff nicht moeglich ist. Wenn mindestens ein EnergyOperator erfolgreich eingetragen dann ist der Wert true.
faultMessage Generelle Fehlernachricht. Z.B. DB Zugriff nicht moeglich.
syncStatusList Eine Liste mit status zu der Synchornisation der einzelenen Energy Operator. Typ: energyOperatorSyncResult

Element energyOperatorSyncResult

energyOperatorSyncResult

success True oder False, je nachdem, ob die Synchronisation des Energy Operators erfoglreich war.
faultMessage Fehlernachricht. Wenn erfolgreich, dann leer.
referenceId Referenz ID zum Objekt zu dem der Status der Synchronisation gemeldet wird.Referenz ID zum Objekt zu dem der Status der Synchronisation gemeldet wird.
Tags:
View Me   Edit Me