Cloud-Adapter: Programmierhandbuch

1                     Übersicht

In diesem Dokument wird das Protokoll des MCS Cloud-Adapters beschrieben. Darüber hinaus dient es als Leitfaden zur Konfiguration des Adapters sowie zur Integration in den Service.

2                     Begriffsbestimmung

Laufzeit Bezeichnung
CEE Comarch ERP Enterprise
Cloud-Adapter Ein MCS-Adapter zur allgemeinen Verwendung für eine Webservice-basierte Integration.
MCS Multikanal-Vertrieb, eine CEE-Lösung zur Integration in Vertriebskanäle (Webshops, Callcenter usw.).
Client Das Fremdsystem, das mit dem Cloud-Adapter (z. B. Webshop) kommuniziert.

3                     Vertriebskanalkonfiguration

Die Konfiguration des Cloud-Adapters wird in der Anwendung „Vertriebskanäle“ durchgeführt. Der Adapter führt die neue Registerkarte „Cloud-Adapter“ ein, die alle erforderlichen Konfigurationsfelder enthält. Die Registerkarte befindet sich im Systemlayout „Cloud“.

Jede Konfiguration wird durch den Code des Vertriebskanals identifiziert, der für die entsprechende OLTP-Datenbank einzigartig ist. Der Code muss dem Client bekannt sein und sollte beim Öffnen jeder Datenübertragung als Parameter bereitgestellt werden.

Detaillierte Beschreibung der Felder auf der Registerkarte „Cloud-Adapter“:

Feld Erklärung
Währung In diesem Feld können Sie die Ziel-Währung für die Übertragung der Vertriebspreislisten festlegen. Die Preise werden in der Währung bereitgestellt, die in diesem Feld spezifiziert ist.

Wenn die Preisliste eine abweichende Währung verwendet, wird eine Umrechnung basierend auf den im Framework „Vertrieb“ spezifizierten Wechselkursen vorgenommen.

Inhaltssprache In diesem Feld können Sie die Sprache festlegen, die als Standardinhaltssprache für alle mehrsprachigen Eigenschaften verwendet wird.
Weitere Sprachen In diesem Feld können Sie festlegen, welche Sprachen als zusätzliche Sprachen bei der Übertragung der mehrsprachigen Eigenschaften berücksichtigt werden sollten.

Bitte beachten Sie, dass die Einstellung vieler Sprachen eine negative Auswirkung auf die Übertragungszeiten haben kann.

Zeitzone Geben Sie die verwendete Zeitzone in dem Fremdsystem an, das sich mit dem Adapter verbindet.

Diese Einstellung ist erforderlich, um die Eigenschaften für Datum/Uhrzeit korrekt zwischen den Systemen zu übertragen.

Der Cloud-Adapter verarbeitet die Unterschiede zwischen den Zeitzonen in CEE und dem Fremdsystem, sodass keine ausdrückliche Verschiebung der Zeitzonen erforderlich ist.

4                     SOAP API

4.1               Einführung

Der Cloud-Adapter stellt eine SOAP-basierte Webservice-Schnittstelle bereit, die zum Importieren und Exportieren der CEE-Daten verwendet wird. Die Schnittstelle nutzt die SOAP-Version 1.1.

Unten finden Sie eine Liste aller Arbeitsgänge, die durch den Adapter unterstützt werden. Abhängig von der Richtung der Datenübertragung können die Arbeitsgänge entweder als Import oder als Export klassifiziert werden:

  • Datenimport (Client Cloud-Adapter)
    • Artikel
    • Artikelpreise
    • Artikel-Verfügbarkeit
    • Artikelkategorien
    • Artikelmerkmals-Klassifikationen
    • Änderungen des Auftragsstatus
  • Datenexport (Client Cloud-Adapter)
    • Kunden
    • Vertriebsaufträge
    • Artikelkategorien

Jeder Arbeitsgang wird in Abhängigkeit der Richtung der Datenübertragung anhand von ein oder zwei SOAP-Meldungen durchgeführt.

  • Datenimport (Client Cloud-Adapter)
    • Meldungen, die mit ..
      beginnen, z. B. openItemTransfer
    • Meldungen, die mit ..
      beginnen, z. B. getItems
  • Datenexport (Client Cloud-Adapter)
    • Meldungen, die mit ..
      beginnen, z. B. setCustomers

4.1.1          Aufbau von Verbindungen

Der SOAP-Serviceendpunkt befindet sich unter der folgenden URL:

<CEE base URL>/services/soap/
com.sem.ext.app.cloud.soap.CloudService?oltp=<database alias>

Wobei:

  • <CEE base URL> eine Basis-URL des CEE-Servers ist,
  • <database alias> ein Alias für eine OLTP-Datenbank ist.

Auf die WSDL-Datei kann über die folgende URL zugegriffen werden:

<CEE base URL>/services/soap/
com.sem.ext.app.cloud.soap.CloudService?wsdl

Soweit nicht anders konfiguriert, erfordert der Aufbau einer HTTPS-Verbindung mit CEE, dass der Client eine Autorisierung über ein gültiges CEE-Benutzer-Zertifikat durchführt.

4.1.2          Datenimport

Bei Arbeitsgängen zu Datenimporten wird eine spezielles Protokoll verwendet, das aus zwei Meldungen besteht:

  • .. zum Erstellen einer Sitzung und zur Vorbereitung der Daten für die Übertragung. Diese Methode muss zuerst aufgerufen werden.
  • get… zum Abrufen der Ist-Daten – die Methode sollte in einer Schleife aufgerufen werden, bis ein leeres Array zurückgegeben wird. Dadurch wird angegeben, dass keine weiteren neuen Daten mehr vorhanden sind.

Unten ist ein Ablaufdiagramm dargestellt, in dem ein typisches Szenario zum Importieren von Artikeln veranschaulicht wird. Dieses unterstützt die Meldungen openItemTransfer und getItems.

Abb. 1 Ablaufdiagramm, in dem ein typischer open/get-Zyklus dargestellt ist.

Der Client initialisiert die Übertragung anhand des Arbeitsgangs openItemTransfer. Nach einem erfolgreichen Aufruf beginnt der Client möglicherweise damit, die Artikeldaten in nachfolgenden Aufrufen für getItems zu lesen. Bei jedem Aufruf wird eine Reihe von Artikeln zurückgegeben. Wenn ein leeres Ergebnis zurückgegeben wird, wird die Übertragung automatisch beendet.

Hinweis
Der Cloud-Adapter von MCS nutzt einen HTTP-Cookie-Mechanismus, um den Zustand der Übertragung aufrechtzuerhalten. Der Client muss alle Cookies zurücksenden, die vom Cloud-Adapter zwischen nachfolgenden API-Aufrufen festgelegt wurden.

Beispiel für einen Cookie-String:
Cookie cid=0180CFB3F9C628109E49AC1BA86C0000; sid=0080CFB3F9C628109E49AC1BA86C0000

4.1.3          Notation

Unten ist eine Beschreibung aller Spalten aufgeführt, die in den Tabellen der nachfolgenden Kapitel enthalten sind.

Spaltenname Bezeichnung
Name Name des Parameters, Groß- und Kleinschreibung beachten.

* – Pflichtfeld

Art Datenart des Parameters; jede Art kann, wie durch das XML-Standardschema definiert, entweder einfach oder komplex sein:

  • Einfach – Ein Element, das nur Text enthält
    z. B. string(3),, wobei 3 eine Längenbeschränkung im CEE-Datenmodell ist

    • Keine Längenbeschränkung bedeutet, dass die Parameterlänge nur durch die Beschränkungen der Java-Sprache eingeschränkt wird.
    • Bei Nummern werden die vorangestellten Nullen ausgelassen.
    • Datum/Uhrzeit wird als string(19) im folgenden Format weitergegeben:
      yyyy-MM-dd HH:mm:ss
  • Komplex – Ein Element, das andere Elemente enthält,
    z. B. ein Array CEEItem[], wobei CEEItem ein ComplexType ist, der in einer separaten Tabelle beschrieben wird.
Bezeichnung Eindeutige Beschreibung des Parameters.

Je nach Abhängigkeit der Parameterart kann das Feld auch zusätzliche beschreibende Elemente enthalten:

  • Filter – Das Feld im CEE-Standard-Datenmodell, das mit dem entsprechenden Parameter übereinstimmt.
    • Der Filter kann è Symbole enthalten, die den Übergang zwischen Business Object-Beziehungen darstellen.
  • Bereich – Liste möglicher Werte.

4.1.4          Unterstützung für Texte in mehreren Sprachen

Texte in mehreren Sprachen werden an ComplexType CEENLS weitergegeben. Diese Meldung wird in der Tabelle unten beschrieben.

CEENLS besteht aus einem Haupttext sowie aus Texten in weiteren Sprachen (soweit spezifiziert).

Der Haupttext wird stets in der Inhaltssprache bereitgestellt, die in der Konfiguration des Adapters spezifiziert ist (siehe das Feld „Inhaltssprache“ 3).

Texte in weiteren Sprachen werden gemäß der Auswahl der zusätzlichen Sprachen bereitgestellt. Diese werden ebenfalls bei der Konfiguration des Adapters festgelegt (siehe das Feld „Weitere Sprachen“ im Abschnitt 3).

ComplexType CEENLS
Name Art Bezeichnung
value string Der Wert der Eigenschaft in der Inhaltssprache des Adapters.
entries CEENLSEntry[] Ein Eintrag für jede zusätzliche Sprache, die in der Konfiguration definiert ist.
ComplexType CEENLSEntry
Name Art Bezeichnung
value string Der Wert der Eigenschaft in der durch den Parameter language spezifizierten Sprache.
language string(3) ISO-Code der Sprache.

4.1.5          Zuordnungen von Entitäten

MCS führt nicht die Übertragung der Hilfsentitäten wie Zahlungen oder Steuerklassen durch. Der Cloud-Adapter führt eine spezielle Anwendung zum Zweck der Zuordnung der Hilfsentitäten zwischen den Systemen ein.

Jede Zuordnung wird im Umfang eines Vertriebskanals definiert, sodass jeder Cloud-Adapter seine eigenen Zuordnungen nutzen kann. Jede Zuordnung wird durch einen einzigartigen „Zuordnungs-Code“ identifiziert.

Der Cloud-Adapter unterstützt Zuordnungen für die folgenden Entitäten:

  • Zahlungskonditionen (Export von Vertriebsaufträgen)
  • Zahlungsarten (Export von Vertriebsaufträgen)
  • Versandbedingungen (Export von Vertriebsaufträgen)
  • Steuer-Klassifikationen (Artikelimport)

Für eine detaillierte Beschreibung der Zuordnungsanwendung lesen Sie sich die Dokumentation zur Online-Hilfe für die Anwendung „Cloud-Entity-Zuordnungen“ durch.

4.2               Artikel importieren

4.2.1          Nachricht – openItemTransfer

Parameter
Name Art Bezeichnung
salesChannelCode string(3) Code eines aktiven Vertriebskanals in CEE. Der Vertriebskanal muss den Cloud-Adapter verwenden.
fetchSize int Anzahl der Elemente, die in einem Datenblock gesendet wird. Der Wert muss größer als 0 sein.
logoEnabled boolean Aktiviert zusätzliche Daten (CEEItem.logo).
pricesInquiryEnabled boolean Aktiviert zusätzliche Daten (CEEItem.prices).
propertiesEnabled boolean Aktiviert zusätzliche Daten (CEEItem.properties).
availabilityEnabled boolean Aktiviert zusätzliche Daten (CEEItem.availability).
Rückgabewerte
Name Art Bezeichnung
openItemTransferResponse int Bereich:
1: Elemente können übertragen werden
0: keine neuen Elemente gefunden
100: ungültiger salesChannelCode
110: Vertriebskanal ist nicht aktiv
120: Vertriebskanal nutzt keine Cloud-Adapter

4.2.2          Meldung – getItems

Parameter

n.a.

Rückgabewerte
Name Art Bezeichnung
getItemsResponse CEEItem[]  
ComplexType CEEItem

Abkürzungen für Business Objects:
I – com.cisag.app.general.obj.Item
SI – com.cisag.app.sales.obj.SalesItem
IAD – com.cisag.app.financials.obj.ItemAccountingData
OUI – com.cisag.app.general.obj.OrganizationalUnitItem
EA – com.sem.ext.app.cloud.obj.EntityAssignment

Name Art Bezeichnung
number string(25) Filter: I.number
description CEENLS(65) Filter: I.description
longDescription CEENLS(130) Filter: I.longDescription
eans string[4](14) Filter: I.eans
weightAmount string Filter: I.measurements.grossWeight.amount
weightUom CEENLS(10) Filter: I.measurements.grossWeight.uomèUnitOfMeasure.code
text CEENLS Filter: SI.textèText.text
salesUom CEENLS(10) Filter: SI.uomèUnitOfMeasure.code
salesClassifications string[5](125) Filter:
SI.classification1..5
èSalesItemHierarchy1..5.path,
status string(80) Filter: OUI.salesStatus

Bereich: {„RELEASED”, „ON_HOLD”}

replacementStatus string(80) Filter: OUI.status

Bereich: {„IN_ENTRY”, „RELEASED”, „ON_HOLD”, „REPLACED”, „DELETED”, „REPLACED_WHEN_ZERO”, „DELETED_WHEN_ZERO”}

isDeleted boolean Filter: SI.updateInfo.deleteTime
taxClassAssignmentCode string(125) Wird verwendet, um die Zielsteuer-Klassifikation (siehe Abschnitt 4.1.5) zu klären.

Filter: IAD.outputTaxClassificationèEA.assignmentCode

categories CEECategory[]  
logo CEEItemLogo Wird nur festgelegt, wenn der Parameter logoEnabled gleich TRUE ist.
prices CEEItemPrice Wird nur festgelegt, wenn der pricesInquiryEnabled gleich TRUE ist..
availability CEEItemAvailability Wird nur festgelegt, wenn der availabilityEnabled gleich TRUE ist.
properties CEEItemPropertySet Wird nur festgelegt, wenn der propertiesEnabled gleich TRUE ist.
Name Art Bezeichnung
number string(25) Filter: I.number
content string Image-Inhalte (base64-codiert)
type string(255) Image-Art (MIME-Art gemäß RFC 2045 und HTTP/1.1).
ComplexType CEEItemPropertySet

Abkürzungen für Business Objects:
IPH – com.cisag.app.general.obj.ItemPropertyHierarchy

Name Art Bezeichnung
id string(5) Filter: IPH.code
properties CEEItemProperty[]  
ComplexType CEEItemProperty

Abkürzungen für Business Objects:
EE – com.cisag.app.general.extension.obj.EntityExtension
DT – com.cisag.app.general.extension.obj.Datatype

Name Art Bezeichnung
id string(40) Filter: EE.name
type string(80) Filter: DT.type

Bereich: {
„STRING”,
„EMAIL”,
„URL”,
„DATE”,
„TIME”,
„CLASSIFICATION”,
„FOREIGNAMOUNT”,
„FOREIGNPRICE”,
„DOMESTICAMOUNT”,
„DOMESTICPRICE”,
„DECIMAL”,
„QUANTITY”,
„VALUESET”,
„BUSINESSOBJECT”}

value   String-Darstellung des Eigenschaftswert, je nach Art der Eigenschaft.

4.3               Artikelpreise importieren

4.3.1          Meldung – openItemPriceTransfer

Parameter
Name Art Bezeichnung
salesChannelCode string(3) Code eines aktiven Vertriebskanals in CEE. Der Vertriebskanal muss den Cloud-Adapter verwenden.
fetchSize int Anzahl der Elemente, die in einem Datenblock gesendet wird. Der Wert muss größer als 0 sein.
Rückgabewerte
Name Art Bezeichnung
openItemPriceTransferResponse int Bereich:
1: Elemente können übertragen werden
0: keine neuen Elemente gefunden
100: ungültiger salesChannelCode
110: Vertriebskanal ist nicht aktiv
120: Vertriebskanal nutzt keine Cloud-Adapter

4.3.2          Meldung – getItemPrices

Der Cloud-Adapter führt ein benutzerdefiniertes Preismodell ein, das ausgehend vom Standardmodell, das in CEE verwendet wird, viel einfacher ist. Gemäß diesem Modell werden die folgenden Arten von Preisen anerkannt:

  • Standardpreis – Ein Standardpreis für eine Einheit des Artikels (z. B. ein Teil).
  • Sonderpreis (mit Gültigkeitszeitraum) – Ein Preis, der nur innerhalb eines bestimmten Gültigkeitszeitraums gültig ist (z. B. Wochenendangebote).
  • Staffelpreise – Preise, die für vorgegebene Zielmengen (Staffelungen) definiert sind.
  • Preise für Kundengruppen – Vergleichbar mit Staffelpreisen, jedoch ist hier eine Klassifizierung der Kundenpreise enthalten (nur Blätter).

Die Preise werden ausgehend vom CEE-Standardmodell festgelegt und basieren auf den bestehenden Preisdefinitionen. Preisdefinitionen werden in der Anwendung „Vertriebspreislisten“ verwaltet. Aufgrund der Vereinfachungen des Cloud-Modells werden nur ausgewählte Ebenen der Preisliste bei der Bestimmung eines Artikelpreises berücksichtigt:

  • Preis, Sonderpreis, Staffelpreise:
    • Artikel,
  • Gruppenpreise:
    • Kundenpreis-Klassifikation,
    • Kundenpreis-Klassifikation + Artikel
    • Kundenpreis-Klassifikation + Artikelpreisgruppe.

Beachten Sie, dass alle Preise in der Währung des Cloud-Adapters spezifiziert werden, die bei der Konfiguration festgelegt wurde (siehe das Feld „Währung“ im Abschnitt 3).

Die Dimension jedes Preises beinhaltet eine Einheit in der ersten Vertriebs-Maßeinheit des Artikels.

Parameter

n.a.

Rückgabewerte
Name Art Bezeichnung
getItemPricesResponse CEEItemPrice[]  
ComplexType CEEItemPrice

Abkürzungen für Business Objects:

PD – com.cisag.app.sales.obj.PriceDefinition

PL – com.cisag.app.sales.obj.PriceList
I – com.cisag.app.general.obj.Item

Name Art Bezeichnung
itemNumber string(25) Filter: PD.itemKeyèI.number
price decimal(21,6) Preis für Staffelung = 1.
specialPrice decimal(21,6) Sonderpreis für Staffelung = 1.
specialValidFrom string(19) Datum/Uhrzeit

Filter: PD.priceListèPL.priceListValidFrom

tierPrices CEEItemTierPrice[] Preise für Mengen (Staffelung) größer als 1.
groupPrices CEEItemGroupPrice[] Gruppenpreise für Mengen (Staffelungen) größer als 1.
ComplexType CEEItemTierPrice
Name Art Bezeichnung
price decimal(21,6) Preis für Staffelung, spezifiziert durch quantity.
quantity int Mengenstaffel
ComplexType CEEItemGroupPrice
Name Art Bezeichnung
price decimal(21,6) Preis für Staffelung, spezifiziert durch quantity.
quantity int Mengenstaffel
customerPriceHierarchy string(125) Pfad der Kundenpreis-Klassifikation (Kundengruppe).

Filter:
PD.partnerKeyèCPH.path

4.4               Statusänderungen des Auftrags importieren

4.4.1          Meldung – openOrderEventsTransfer

Parameter
Name Art Bezeichnung
salesChannelCode string(3) Code eines aktiven Vertriebskanals in CEE. Der Vertriebskanal muss den Cloud-Adapter verwenden.
fetchSize int Anzahl der Elemente, die in einem Datenblock gesendet wird. Der Wert muss größer als 0 sein.
Rückgabewerte
Name Art Bezeichnung
openOrderEventsTransferResponse int Bereich:
1: Elemente können übertragen werden
0: keine neuen Elemente gefunden
100: ungültiger salesChannelCode
110: Vertriebskanal ist nicht aktiv
120: Vertriebskanal nutzt keine Cloud-Adapter

4.4.2          Meldung – getOrderEvents

Parameter

n.a.

Rückgabewerte
Name Art Bezeichnung
getOrderEventsResponse CEEOrderEvent[]  
ComplexType CEEOrderEvent

Abkürzungen für Business Objects:
ET – com.sem.ext.app.cloud.order.OrderEventEntryEventType
SCO – com.sem.ext.app.mcs.order.obj.SalesChannelOrder

SO – com.cisag.app.sales.obj.SalesOrder
SHO – com.cisag.app.sales.obj.ShippingOrder
ROG – com.cisag.app.purchasing.obj.ReceiptOfGoods
CI – com.cisag.app.sales.obj.CustomerInvoice

SOT – com.cisag.app.sales.obj.SalesOrderType
SHOT – com com.cisag.app.sales.obj.DeliverySlipType
ROGT – com.cisag.app.purchasing.obj.ReceiptOfGoodsType
CIT – com.cisag.app.sales.obj.InvoiceType

Name Art Bezeichnung
eventType string(80) Filter: ET.eventType

Bereich: {
“ORDER_CREATED”, “ORDER_RELEASED”, “ORDER_HELD”, “ORDER_COMPLETED”, “ORDER_CANCELED”, “ORDER_PARTIALLY_CANCELLED”, “PICKING_STATUS_CHANGED”, “DELIVERY_STATUS_COMPLETE”, “DELIVERY_STATUS_INCOMPLETE”, “INVOICING_STATUS_COMPLETE”, “INVOICING_STATUS_INCOMPLETE”, “RECEIPT_RELEASED”, “INVOICE_COMPLETED”, “INVOICE_CANCELLED”, “SHIPPING_COMPLETED”, “SHIPPING_CANCELLED”, “INVOICE_CREATED”, “SUBTYPE_SALES_ORDER”, “SUBTYPE_CUSTOMER_INVOICE”, “SUBTYPE_RECIPT_OF_GOODS”, “SUBTYPE_SHIPPING_ORDER”
}

externalNumber string(64) Filter: SCO.number
externalId string(255) Filter: SCO.externalOrderId
number string(10) Filter: (SO/SHO/ROG/CI).number

Hängt vom der Kategorie des Ereignisses ab.

type string(3) Filter: (SO/SHO/ROG/CI).typeè (SOT/SHOT/ROGT/CIT).code

Hängt vom Typ des Ereignisses ab.

details CEEOrderEventDetail[]  
extensionData CEEExtensionAttribute[] Zusätzliche Erweiterungseigenschaften, siehe Abschnitt 5 für Beispielanwendungen.
ComplexType CEEOrderEventDetail

Abkürzungen für Business Objects:
SCOD – com.sem.ext.app.mcs.order.obj.SalesChannelOrderDetail
SOD – com.cisag.app.sales.obj.SalesOrderDetail
SHOD – com.cisag.app.sales.obj.ShippingOrderDetail
ROGD – com.cisag.app.purchasing.obj.ReceiptOfGoodsDetail
CID – com.cisag.app.sales.obj.CustomerInvoiceDetail

Name Art Bezeichnung
number int Filter: SCOD.number
amount decimal(21,6) Filter:
(SOD/SHOD/ROGD).totalQuantity.amount
OR
CID.quantity.amount
ComplexType CEEExtensionAttribute
Name Art Bezeichnung
name string Verwendung hängt von der Erweiterung ab.
Siehe Abschnitt 5 für Beispielanwendungen.
value string Verwendung hängt von der Erweiterung ab.
Siehe Abschnitt 5 für Beispielanwendungen.

4.5               Artikelmerkmals-Klassifikationen importieren

4.5.1          Meldung – openItemPropertyMetaDataSetTransfer

Parameter
Name Art Bezeichnung
salesChannelCode string(3) Code eines aktiven Vertriebskanals in CEE. Der Vertriebskanal muss den Cloud-Adapter verwenden.
fetchSize int Anzahl der Elemente, die in einem Datenblock gesendet wird. Der Wert muss größer als 0 sein.
datatypeEnabled boolean Aktiviert zusätzliche Daten (CEEItemPropertyMetaData.datatype).
Rückgabewerte
Name Art Bezeichnung
openItemPropertyMetaDataSetTransferResponse int Bereich:
1: Elemente können übertragen werden
0: keine neuen Elemente gefunden
100: ungültiger salesChannelCode
110: Vertriebskanal ist nicht aktiv
120: Vertriebskanal nutzt keine Cloud-Adapter

4.5.2          Meldung – getItemPropertyMetaDataSet

Parameter

n.a.

Rückgabewerte
Name Art Bezeichnung
getItemPropertyMetaDataSetResponse CEEItemPropertyMetaDataSet[]  
ComplexType CEEItemPropertyMetaDataSet

Abkürzungen für Business Objects:

IPH – com.cisag.app.general.obj.ItemPropertyHierarchy

Name Art Bezeichnung
desc CEENLS(65) Filter: IPH.description
id string(5) Filter: IPH.path
properties CEEItemPropertyMetaData[]  
ComplexType CEEItemPropertyMetaData

Abkürzungen für Business Objects:
EE – com.cisag.app.general.extension.obj.EntityExtension

D – com.cisag.app.general.extension.obj.Datatype

Name Art Bezeichnung
datatype CEEItemPropertyDatatype Wird nur festgelegt, wenn der datatypeEnabled gleich TRUE ist.
datatypeId string(6) Filter: EE.datatypeèD.code
desc CEENLS(65) Filter: EE.description
id string(40) Filter: EE.id
name CEENLS(50) Filter: EE.label
sequence short Filter: EE.sequence
required boolean Filter: EE.required
ComplexType CEEItemPropertyDatatype

Abkürzungen für Business Objects:
DT – com.cisag.app.general.extension.obj.Datatype

Name Art Bezeichnung
desc CEENLS(65) Filter: DT.description
id string(6) Filter: DT.code
name CEENLS(50) Filter: DT.label
type string(80) Filter: DT.type

Bereich: {
„STRING”,
„EMAIL”,
„URL”,
„DATE”,
„TIME”,
„CLASSIFICATION”,
„FOREIGNAMOUNT”,
„FOREIGNPRICE”,
„DOMESTICAMOUNT”,
„DOMESTICPRICE”,
„DECIMAL”,
„QUANTITY”,
„VALUESET”,
„BUSINESSOBJECT”}

maxLength int Filter: DT.maxLength
valueSetEntries CEEItemPropertyDatatypeValueSetEntry[]  
ComplexType CEEItemPropertyDatatypeValueSetEntry

Abkürzungen für Business Objects:
DVSV – com.cisag.app.general.extension.obj.DatatypeValueSetValues

Name Art Bezeichnung
desc string(65) Filter: DVSV.description
id short Filter: DVSV.id
name CEENLS(255) Filter: DSDV.label
isDefault boolean „True“, wenn der Eintrag der Standardwert dieses Sollwerts ist.

4.6               Daten zur Artikel-Verfügbarkeit importieren

4.6.1          Meldung – openItemAvailabilityTransfer

Parameter
Name Art Bezeichnung
salesChannelCode string(3) Code eines aktiven Vertriebskanals in CEE. Der Vertriebskanal muss den Cloud-Adapter verwenden.
fetchSize int Anzahl der Elemente, die in einem Datenblock gesendet wird. Der Wert muss größer als 0 sein.
Rückgabewerte
Name Art Bezeichnung
openItemAvailabilityTransferResponse int Bereich:
1: Elemente können übertragen werden
0: keine neuen Elemente gefunden
100: ungültiger salesChannelCode
110: Vertriebskanal ist nicht aktiv
120: Vertriebskanal nutzt keine Cloud-Adapter

4.6.2          Meldung – getItemAvailability

Parameter

n.a.

Rückgabewerte
Name Art Bezeichnung
getItemAvailabilityResponse CEEItemAvailability[]  
ComplexType CEEItemAvailability

Abkürzungen für Business Objects:
SC – com.sem.ext.app.mcs.obj.SalesChannel
IMS – com.sem.ext.app.mcs.item.availability.obj.InventoryManagementSettings
TI – com.sem.ext.app.mcs.item.assortment.obj.TransferredItem
I – com.cisag.app.general.obj.Item

Name Art Bezeichnung
itemNumber string(25) Filter: TI.itemèI.number
quantityAmount decimal(21,6) Filter: TI.quantity.amount
quantityUom CEENLS(10) Filter: TI.quantity.uomèUnitOfMeasure.code
inventoryManagement boolean Filter: IMS.inventoryManagement
allowNegativeAvailability boolean Filter: IMS.inventoryManagement
availabilityQuantityAmount decimal(21,6) Filter: (IMS/SC).availabilityQuantity.amount
availabilityQuantityUom CEENLS(10) Filter: (IMS/SC).availabilityQuantity.uomèUnitOfMeasure.code
availabilityDate string(19) Datum/Uhrzeit

Filter: TI.availabilityDate

4.7               Artikelkategorien importieren

4.7.1          Meldung – openCategoryTreeTransfer

Parameter
Name Art Bezeichnung
salesChannelCode string(3) Code eines aktiven Vertriebskanals in CEE. Der Vertriebskanal muss den Cloud-Adapter verwenden.
fetchSize int Anzahl der Elemente, die in einem Datenblock gesendet wird. Der Wert muss größer als 0 sein.
imageEnabled boolean Aktiviert zusätzliche Daten (CEEOutCategoryNode.image).
Rückgabewerte
Name Art Bezeichnung
openCategoryTreeTransferResponse int Bereich:
1: Elemente können übertragen werden
0: keine neuen Elemente gefunden
100: ungültiger salesChannelCode
110: Vertriebskanal ist nicht aktiv
120: Vertriebskanal nutzt keine Cloud-Adapter

4.7.2          Meldung – getCategoryTrees

Parameter

n.a.

Rückgabewerte
Name Art Bezeichnung
getCategoryTreesResponse CEEOutCategoryTree[]  
ComplexType CEEOutCategoryTree

Abkürzungen für Business Objects:
CT – com.sem.ext.app.mcs.item.category.obj.CategoryTree

Name Art Bezeichnung
code string(32) CT.code
name CEENLS(65) CT.name
description CEENLS(255) CT.description
status string(80) Filter: CT.status

Bereich: {“NEW”, “RELEASED”}

allowMultipleItems boolean CT.allowMultipleItems
allowNonLeafItems boolean CT.allowSubordinateItems
categoryNodes CEEOutCategoryNode[]  
ComplexType CEEOutCategoryNode

Abkürzungen für Business Objects:
CN – com.sem.ext.app.mcs.item.category.obj.CategoryNode

Name Art Bezeichnung
code string(32) CN.code
name CEENLS(65) CN.name
description CEENLS(255) CN.description
parent string(32) CN.parentèCN.code
path string(125) CN.path
leaf boolean CN.leaf
level int CN.level
active boolean CN.active
metaTitle CEENLS(255) CN.metaTitle
metaDescription CEENLS(255) CN.metaDescription
keywords CEENLS(255) CN.keywords
image CEEOutCategoryNodeImage Wird nur festgelegt, wenn der imageEnabled gleich TRUE ist.
itemNodes CEEOutItemNode[]  
ComplexType CEEOutCategoryNodeImage
Name Art Bezeichnung
code string(32) CN.code
content string Image-Inhalte (base64-codiert)
type string(255) Image-Art (MIME-Art gemäß RFC 2045 und HTTP/1.1).
ComplexType CEEOutItemNode

Abkürzungen für Business Objects:
IN – com.sem.ext.app.mcs.item.category.obj.ItemNode

I – com.cisag.app.general.obj.Item

Name Art Bezeichnung
item string(25) IN.salesItemèI.number
parent string(32) IN.parentèCN.code
path string(125) IN.path
level int IN.level

4.8               Artikelkategorien exportieren

4.8.1          Meldung – setCategoryTree

Parameter
Name Art Bezeichnung
salesChannelCode string(3) Code eines aktiven Vertriebskanals in CEE. Der Vertriebskanal muss den Cloud-Adapter verwenden.
ceeCategoryTreeArray CEEInCategoryTree[]  
Rückgabewerte

n.a.

ComplexType CEEInCategoryTree

Abkürzungen für Business Objects:

CT – com.sem.ext.app.mcs.item.category.obj.CategoryTree

Name Art Bezeichnung
id string(125) Externe ID der Baumstruktur.
code* string(32) Filter: CT.code
name* CEENLS(65) Filter: CT.name
description CEENLS(255) Filter: CT.description
status* string(80) Filter: CT.status

Bereich: {“NEW”, “RELEASED”}

allowMultipleItems boolean Filter: CT.allowMultipleItems
allowNonLeafItems boolean Filter: CT.allowNonLeafItems
categoryNodes CEEInCategoryNode[]  
ComplexType CEEInCategoryNode

Abkürzungen für Business Objects:

CN – com.sem.ext.app.mcs.item.category.obj.CategoryNode

Name Art Bezeichnung
code* string(32) Filter: CN.code
name* CEENLS(65) Filter: CN.name
description CEENLS(255) Filter: CN.description
path* string(125) Filter: CN.path
leaf boolean Filter: CN.leaf
active boolean Filter: CN.active
metaTitle CEENLS(255) Filter: CN.metaTitle
metaDescription CEENLS(255) Filter: CN.metaDescription
keywords CEENLS(255) Filter: CN.keywords
imageContent string Image contents (base64-encoded)
itemNodes CEEInItemNode []  
ComplexType CEEInItemNode

Abkürzungen für Business Objects:
I – com.cisag.app.general.obj.Item
SI – com.cisag.app.sales.obj.SalesItem
IN – com.sem.ext.app.mcs.item.category.obj.ItemNode

Name Art Bezeichnung
itemNumber* string(25) Filter: I.numberèSI.itemèIN.salesItem
path* string(125) Filter: IN.path

4.9               Kunden exportieren

4.9.1          Meldung – setCustomers

Parameter
Name Art Bezeichnung
salesChannelCode* string(3) Code eines aktiven Vertriebskanals in CEE. Der Vertriebskanal muss den Cloud-Adapter verwenden.
ceeCustomerArray CEECustomer[]  
Rückgabewerte

n.a.

ComplexType CEECustomer
Name Art Bezeichnung
id string(125) Externe ID des Kunden.
personData CEECustomerPersonData  
financialData CEECustomerFinancialData  
communicationData CEECustomerCommunicationData  
primaryAddress CEECustomerAddressData  
additionalAddresses CEECustomerAddressData[]  
ComplexType CEECustomerPersonData

Abkürzungen für Business Objects:

P – com.cisag.app.general.obj.Partner

Name Art Bezeichnung
givenName string(20) Filter: P.person.givenName
middleName string(65) Filter: P.person.middleName
surname string(30) Filter: P.person.surname
gender string(80) Filter: P.person.gender

Bereich: {
“FEMALE”, “MALE”, “UNKNOWN”}

ComplexType CEECustomerFinancialData

Abkürzungen für Business Objects:

PAD – com.cisag.app.financials.obj.PartnerAccountingData
PTI – com.cisag.app.financials.obj.PartnerTaxIdentification
PTH – com.cisag.app.financials.obj.PartnerTaxHierarchy

Name Art Bezeichnung
taxClassificationPath string(125) Filter: PTH.pathèPAD.outputTaxClassification
taxIdentificationNumber string(20) Filter: PTI.taxIdentificationNumber
dateOfBirth string(19) Datum/Uhrzeit

Filter: PAD.dateOfBirth

ComplexType CEECustomerCommunicationData

Abkürzungen für Business Objects:

CD – com.cisag.app.general.obj.CommunicationData

Name Art Bezeichnung
email string(65) Filter: CD.commData
telephone string(65) Filter: CD.commData
fax string(65) Filter: CD.commData
ComplexType CEECustomerAddressData

Abkürzungen für Business Objects:
PAD – com.cisag.app.general.obj.PartnerAddressData
AD – com.cisag.app.general.obj.AddressData
C – com.cisag.app.general.obj.Country
R – com.cisag.app.general.obj.Region

Name Art Bezeichnung
name string(256) Filter: PAD.name
street string(256) Filter: AD.street
city string(256) Filter: AD.city
postalCode string(16) Filter: AD.postalCode
countryCode string(2) Filter: C.isoCodeèAD.country
regionCode string(3) Filter: R.codeèAD.region
invoice boolean TRUE, falls Standard-Rechnungsadresse
delivery boolean TRUE, falls Standard-Lieferadresse

4.10          Vertriebsaufträge exportieren

4.10.1       Meldung – setSalesOrders

Parameter
Name Art Bezeichnung
salesChannelCode* string(3) Code eines aktiven Vertriebskanals in CEE. Der Vertriebskanal muss den Cloud-Adapter verwenden.
ceeSalesOrderArray CEESalesOrder []  
Rückgabewerte

n.a.

ComplexType CEESalesOrder
Name Art Bezeichnung
id string(125) Externe technische ID des Auftrags.
number string(125) Externe Nummer des Auftrags (kann angezeigt werden).
customerId string(125) Externe ID des Kunden.
timestamp string(19) Datum/Uhrzeit

Uhrzeit der Änderung im Fremdsystem.

baseData CEESalesOrderBaseData  
customerData CEESalesOrderCustomerData  
customerOrderData CEESalesOrderCustomerOrderData  
deliveryCustomerData CEESalesOrderDeliveryCustomerData  
deliveryData CEESalesOrderDeliveryData  
detailData CEESalesOrderDetailData[]  
intrastatData CEESalesOrderIntrastatData  
invoiceCustomerData CEESalesOrderInvoiceCustomerData  
invoicingData CEESalesOrderInvoicingData  
extensionData CEEExtensionAttribute[] Zusätzliche Erweiterungseigenschaften, siehe Abschnitt 5 für Beispielanwendungen.
ComplexType CEESalesOrderBaseData

Abkürzungen für Business Objects:
SO – com.cisag.app.sales.obj.SalesOrder
SCO – com.sem.ext.app.mcs.obj.SalesChannelOrder

Name Art Bezeichnung
priceDate string(19) Datum/Uhrzeit

Filter: SO.priceDate

date string(19) Datum/Uhrzeit

Filter: SO.date

telephone string(32) Filter: SCO.telephone
email string(64) Filter: SCO.email
status string(80) Filter: SO.status

Bereich: {
“ORDER_ENTERED”, “ORDER_RELEASED”, “ORDER_HELD”, “ORDER_CANCELED”}

ComplexType CEESalesOrderCustomerData

Abkürzungen für Business Objects:
OCDI – com.cisag.app.sales.obj.OrderCustomerDataInfo

Name Art Bezeichnung
addressData CEESalesOrderAddressData  
name string(200) Filter: OCDI.name
ComplexType CEESalesOrderAddressData

Abkürzungen für Business Objects:
AD – com.cisag.app.general.obj.AddressData
C – com.cisag.app.general.obj.Country
R – com.cisag.app.general.obj.Region

Name Art Bezeichnung
street string(256) Filter: AD.street
city string(256) Filter: AD.city
postalCode string(16) Filter: AD.postalCode
countryCode string(2) Filter: C.isoCodeèAD.country
regionCode string(3) Filter: R.codeèAD.region
district string(256) Filter: AD.district
ComplexType CEESalesOrderCustomerOrderData

Abkürzungen für Business Objects:
SO – com.cisag.app.sales.obj.SalesOrder

Name Art Bezeichnung
date string(19) Datum/Uhrzeit

Filter: SO.customerOrderData.date

purchaseOrder string(30) Filter: SO.customerOrderData.purchaseOrder
ComplexType CEESalesOrderDeliveryCustomerData

Abkürzungen für Business Objects:
OCDI – com.cisag.app.sales.obj.OrderCustomerDataInfo

Name Art Bezeichnung
addressData CEESalesOrderAddressData  
name string(200) Filter: OCDI.name
ComplexType CEESalesOrderDeliveryData
Name Art Bezeichnung
billingItemNumber string(25) Nummer des Verrechnungs-Artikels, der die Versandkosten darstellt.
shippingGrossPrice decimal(21,6) Filter: SOD.(grossPrice/retailGrossPrice).amount

Je nach Kundenart (Einzelhandel/kein Einzelhandel).

shippingPriceCurrencyIsoCode string(3) Filter: SOD.(grossPrice/retailGrossPrice).currency

Je nach Kundenart (Einzelhandel/kein Einzelhandel).

shippingTermAssignmentCode string(125) Wird verwendet, um die Ziel-Versandbedingungen (siehe Abschnitt 4.1.5) zu klären.

Filter: EA.assignmentCodeèDDI.shippingTerms

ComplexType CEESalesOrderDetailData

Abkürzungen für Business Objects:
SOD – com.cisag.app.sales.obj.SalesOrderDetail

Name Art Bezeichnung
costOfGoodsAmount1 decimal(21,6) Filter: SOD.costOfGoods.amount1
costOfGoodsAmount2 decimal(21,6) Filter: SOD.costOfGoods.amount2
costOfGoodsAmount3 decimal(21,6) Filter: SOD.costOfGoods.amount3
number string(20) Filter: SOD.number
reference string(65) Filter: SOD.reference
totalQuantityAmount decimal(21,6) Filter: SOD.totalQuantity.amount
grossPrice decimal(21,6) Filter: SOD.(grossPrice/retailGrossPrice).amount

Je nach Kundenart (Einzelhandel/kein Einzelhandel).

grossPriceCurrencyIsoCode string(3) Filter: SOD.(grossPrice/retailGrossPrice).currency

Je nach Kundenart (Einzelhandel/kein Einzelhandel).

externalNumber int Filter: SOD.externalNumber
salesDiscountUses CEESalesDiscountUseData[4] Filter: SOD.discountUse
ComplexType CEESalesOrderIntrastatData

Abkürzungen für Business Objects:
IDI – com.cisag.app.general.obj.IntrastatDataInfo

Name Art Bezeichnung
transactionTypeCode string(4) Filter: IDI.code
ComplexType CEESalesOrderInvoiceCustomerData

Abkürzungen für Business Objects:
OCDI – com.cisag.app.sales.obj.OrderCustomerDataInfo

Name Art Bezeichnung
addressData CEESalesOrderAddressData  
name string(200) Filter: OCDI.name
ComplexType CEESalesOrderInvoicingData

Abkürzungen für Business Objects:
C – com.cisag.app.general.obj.Currency
IDI – com.cisag.app.general.obj.InvoicingDataInfo

Name Art Bezeichnung
paymentMethodAssignmentCode string(125) Wird verwendet, um die Ziel-Zahlungsart (siehe Abschnitt 4.1.5) zu klären.

Filter: EA.assignmentCodeèIDI.paymentMethod

paymentTermAssignmentCode string(125) Wird verwendet, um die Ziel-Zahlungskonditionen (siehe Abschnitt 4.1.5) zu klären.

Filter: EA.assignmentCodeèIDI.paymentTerms

currencyIsoCode string(3) Filter: C.isoCodeèIDI.currency

ComplexType CEESalesDiscountUseData

Abkürzungen für Business Objects:
SOD – com.cisag.app.sales.obj.SalesOrderDetail

Name Art Bezeichnung
type string(80) Filter: èSOD.discounts[].type

Bereich: {

“QUANTITY_VALUE”,

“MONETARY_VALUE”,

“PERCENT_VALUE”}

amount decimal(21,6) Filter: SOD.discounts[].value
ComplexType CEEExtensionAttribute
Name Art Bezeichnung
name string Verwendung hängt von der Erweiterung ab.
Siehe Abschnitt 5 für Beispielanwendungen.
value string Verwendung hängt von der Erweiterung ab.
Siehe Abschnitt 5 für Beispielanwendungen.

5                     SOAP API-Erweiterungen

5.1               Cloud-V-LOG

Cloud-V-LOG ist eine API-Erweiterung für den Cloud-Adapter, der Teil der CloudVlog-App ist.

Cloud-V-LOG optimiert den Prozess zum Importieren von Statusänderungen zu Vertriebsaufträgen durch zusätzliche Ereignisse, die V-LOG-Informationen zur Sendungsverfolgung enthalten (Nummer zur Nachverfolgung, URL zur Nachverfolgung und Code des Spediteurs).

Das Ereignis wird bei der Verarbeitung des Versandauftrags ausgelöst und entspricht der Art von „SUBTYPE_SHIPPING_ORDER“.

Die V-LOG-Daten werden an die Eigenschaft CEEOrderEvent.extensionData weitergeleitet. Hierbei handelt es sich um ein Array von ComplexType CEEExtensionAttribute:

ComplexType CEEExtensionAttribute

Name Art Bezeichnung
name string(80) Name der Erweiterungseigenschaft.

Siehe Tabelle Cloud-V-LOG-Eigenschaften, um eine Liste verfügbarer Eigenschaften zu erhalten.

Hinweis: Cloud-V-LOG-Eigenschaften können durch das Präfix ‘sem_cloudvlg’ identifiziert werden.

value string(255) Wert der Erweiterungseigenschaft

Cloud-V-LOG-Eigenschaften

Abkürzungen für Business Objects:
CCA – com.sem.ext.app.cloudvlg.obj.CloudCarrierAssignment
FCD – com.sem.ext.app.vlog.obj.FreightCarrierData

Name der Eigenschaft Bezeichnung
sem_cloudvlg_freightCarrier Cloud-Spediteur wie in der Zuordnung der Anwendung „Spediteur-Zuordnungen für die Cloud“ definiert.

ODER

Direkter V-LOG-Spediteur-Code, falls keine Zuordnung vorhanden ist.

Filter:
CCA.assignmentCode/FCD.freightCarrier

sem_cloudvlg_trackingNumber Nummer zur Sendenachverfolgung
sem_cloudvlg_trackingURL URL zur Sendenachverfolgung

5.2               Cloud-Paygate

Cloud-Paygate ist eine API-Erweiterung für den Cloud-Adapter, der Teil der CloudPaygate-App ist.

Cloud-Paygate optimiert den Prozess zum Exportieren von Vertriebsaufträgen mit zusätzlichen Paygate-Bewegungsdaten. Der Client kann die Bewegungsdaten zusammen mit dem exportierten Vertriebsauftrag bereitstellen. Die Bewegungsdaten werden an die Paygate-App zur weiteren Verarbeitung der Kundenzahlung weitergeleitet.

Diese Erweiterung sollte nur bei Fremdsystemen verwendet werden, die Zahlungen über Paygate unterstützen.

Die Daten werden an die Eigenschaft CEESalesOrder.extensionData weitergeleitet. Hierbei handelt es sich um ein Array von ComplexType CEEExtensionAttribute:

ComplexType CEEExtensionAttribute

Name Art Bezeichnung
name string(80) Name der Erweiterungseigenschaft.

Siehe Tabelle Cloud-Paygate-Eigenschaften, um eine Liste verfügbarer Eigenschaften zu erhalten.

Hinweis: Cloud-Paygate-Eigenschaften können durch das Präfix ‘sem_cloudpay’ identifiziert werden.

value string(255) Wert der Erweiterungseigenschaft

Cloud-Paygate-Eigenschaften

Abkürzungen für Business Objects:
SO – com.cisag.app.sales.obj.SalesOrder
C – com.cisag.app.general.obj.Currency

Name Bezeichnung
sem_cloudpay_transactionNumber Transaktions-ID, die für jede Transaktion einzigartig sein sollte (Autorisierung, Erfassung usw.).

Filter: SO.sem_paygate_transactionNumber

sem_cloudpay_referenceNumber Einzigartige Referenznummer für Ihre Konten.

Filter: SO.sem_paygate_referenceNumber

sem_cloudpay_requestId Ein alphanumerischer Wert, der Ihre Transaktion identifiziert und nur einmalig zugeordnet werden kann.

Filter: SO.sem_paygate_requestId

sem_cloudpay_paymentNumber Zahlungs-ID, die Paygate zugeordnet ist.

Filter: SO.sem_paygate_paymentNumber

sem_cloudpay_transactionStatus Filter: SO.sem_paygate_transactionStatus

Bereich: {
“NEW”,
”REQUESTED”,
“OK”,
“CANCELLED”,
“DELIVERED” }

sem_cloudpay_preauthorizeDate Filter: SO.sem_paygate_preauthorizeDate
sem_cloudpay_preauthorizedAmount Betrag in der kleinsten Währungseinheit (z. B. EUR Cent).

Filter: SO.sem_paygate_preauthorizedAmount.amount

sem_cloudpay_capturedAmount Filter: SO.sem_paygate_capturedAmount.amount
sem_cloudpay_currency Filter: C.isoCodeèSO.sem_paygate_preauthorizedAmount.currency,
C.isoCodeèSO.sem_paygate_capturedAmount.currency,

Czy ten artykuł był pomocny?