SOG-Helpcenter Logo SOG Business - Software

Mappingdefinition


Jeder Service muss über eine Mappingdefinition verfügen.
In dieser wird festgelegt wie die Soap-Anfragen und Antworten serialisiert und deserialisiert werden.
Das heisst, wie die Elemente der Soap-Anfrage heissen müssen, damit sie korrekt an das Objekt weiter geleitet werden können.

Für jeden Service müssen also zwei Dateien in config angelegt werden:

{SERVICENAME}_soaprequest.xml
und
{SERVICENAME}_soapresponse.xml

Diese müssen folgende Inhaltsstruktur haben:



<?xml version="1.0" encoding="utf-8"?>
<XmlObjectDefinition elementName="Request" className="{OBJEKTKLASSE}">
    <Group elementName="{SERVICENAME}">
...
...
...
    </Group>
</XmlObjectDefinition>



XmlObjectDefinition muss bei request das Attribute elementName="Request" besitzen, analog bei soapOut elementName="Response".
Darauf muss in der Hirarchie ein Group-Element Folgen, das den elementName="{SERVICENAME}" hat.


Für den Service Kundenanmeldung sieht das Mapping so aus:


Kundenanmeldung_soaprequest.xml

<?xml version="1.0" encoding="utf-8"?>
<XmlObjectDefinition elementName="Request" className="ShopAuftrag">
<Group elementName="Kundenanmeldung">
       <Property name="Satz" className="AuftragsLeitsatz">
           <Property name="m_konto" elementName="Kundennummer" />
           <Property name="m_spr" elementName="Sprache" />
           <Property name="m_waehr" elementName="Waehrung" />
           <Property name="m_lnr" elementName="Ansprechpartner" />
       </Property>
       <Property name="Mandant" elementName="Mandant" />
</Group>
</XmlObjectDefinition>

.




Kundenanmeldung_soapresponse.xml

<?xml version="1.0" encoding="utf-8"?>
<XmlObjectDefinition elementName="Response" className="ShopAuftrag">
<Group elementName="Kundenanmeldung" >
   <Group elementName="Kunde" >
       <Property name="Ansprechpartner"  className="Ansprechpartner">
           <Property name="m_konto" elementName="Ansprechpartner" />
       </Property>
       <Property name="Kunde" className="Kundenstamm">
           <Property name="m_konto" elementName="Kundennummer" />
           <Property name="m_spr" elementName="Sprache" />
           <Property name="m_waehr" elementName="Waehrung" />
       </Property>
   </Group>

   <Property name="Mandant" elementName="Mandant" />

   <Property name="Error" className="ShopError">
       <Group elementName="Fehlerstatus" >
           <Property name="ErrorCode" elementName="Fehlercode" />
           <Group elementName="Meldung">
               <Property name="ErrorText" elementName="Text" />
           </Group>
       </Group>
   </Property>


   <Property name="Kurs" elementName="Kurs" />


   <Property name="Sachbearbeiter" elementName="Sachbearbeiter"  className="Sachbearbeiter">
       <Property name="m_name" elementName="Name" />
       <Property name="m_telefon" elementName="Telefon" />
       <Property name="m_tfx" elementName="Fax" />
       <Property name="m_email_vk" elementName="Email" />
   </Property>

   <Group elementName="Vertreter1">
       <Property name="Name1Vtr1" elementName="Name1" />
       <Property name="Vertreter1"  className="VertreterStamm">
           <Property name="m_vertr" elementName="Nummer" />
       </Property>

       <Property name="Vertreter1Stamm" className="Kundenstamm">
           <Property name="m_name2" elementName="Name2" />
           <Property name="m_name3" elementName="Name3" />
           <Property name="m_str" elementName="Strasse" />
           <Property name="m_ort" elementName="Ort" />
           <Property name="m_tel" elementName="Telefon" />
           <Property name="m_tfx" elementName="Fax" />
           <Property name="m_email" elementName="Email" />
       </Property>
   </Group>

   <Group elementName="Vertreter2">
       <Property name="Name1Vtr2" elementName="Name1" />
       <Property name="Vertreter2" className="VertreterStamm">
           <Property name="m_vertr" elementName="Nummer" />
       </Property>

       <Property name="Vertreter2Stamm" className="Kundenstamm">
           <Property name="m_name2" elementName="Name2" />
           <Property name="m_name3" elementName="Name3" />
           <Property name="m_str" elementName="Strasse" />
           <Property name="m_ort" elementName="Ort" />
           <Property name="m_tel" elementName="Telefon" />
           <Property name="m_tfx" elementName="Fax" />
           <Property name="m_email" elementName="Email" />
       </Property>
   </Group>

   <Group elementName="Vertreter3">
       <Property name="Name1Vtr3" elementName="Name1" />
       <Property name="Vertreter3" className="VertreterStamm">
           <Property name="m_vertr" elementName="Nummer" />
       </Property>

       <Property name="Vertreter3Stamm" className="Kundenstamm">
           <Property name="m_name2" elementName="Name2" />
           <Property name="m_name3" elementName="Name3" />
           <Property name="m_str" elementName="Strasse" />
           <Property name="m_ort" elementName="Ort" />
           <Property name="m_tel" elementName="Telefon" />
           <Property name="m_tfx" elementName="Fax" />
           <Property name="m_email" elementName="Email" />
       </Property>
   </Group>
</Group>
</XmlObjectDefinition>