Benutzer-Werkzeuge

Webseiten-Werkzeuge


engine:procedures:if_om_modifytrolleycontentinfo

if_om_ModifyTrolleyContentInfo

Fügt Daten in die Input-Schnittstelle von om_ModifyTrolleyContentInfo_Pu ein (wobei aber auch den beiden Prozeduren om_UpdateTrolley_Pu und om_InsertIntoTrolley_Pu Daten über diese Schnittstelle übergeben werden können).

Dies geschieht über die „…List“-Parameter dieser Prozedur, die jeweils eine Menge von Werten enthalten. Zueinander gehörende Werte (d.h. die sich in der gleichen Position der jeweiligen Liste befinden) werden in die folgenden Spalten eingefügt :

  • HTreeNodeID integer

→ ID eines Elementes im historischen Artikelbaum (und damit eine Warenkorbs-Position)

  • InformationTypeID smallint

→ ID einer Informations-Art

  • Information varchar(1000)

→ Die Information, die für „HTreeNodeID zur „InformationTypeID“ hinterlegt werden soll. '' angeben, um eine evtl. vorhandene Information zu löschen

Hinweis :

Ist in „InformationList“ zweimal direkt hintereinander „Separator“ enthalten oder kommt „Separator“ ganz zu Beginn oder am Ende vor, dann enthält die Liste quasi ein „leeres Element“. Dies wird aber nicht als „NULL“, sondern als '' interpretiert (was „vorhandene Information löschen“ bedeutet) !

Anmerkung zum Parameter „HTreeNodeIDList“ :

Wird die Input-Schnittstelle für einen Aufruf von om_InsertIntoTrolley_Pu benötigt, gibt es noch eine Besonderheit : Bei dieser Prozedur fügt man nämlich nicht „HTreeNodeID“s sondern „NodeID“s oder „TreeNodeID“s in den Warenkorb, es wird dann intern nämlich die „HTreeNodeID“ ermittelt !
Aus diesem Grund kann man in dieser Prozedur hier in „HTreeNodeIDList“ auch eine Menge von „NodeID“s bzw. „TreeNodeID“s übergeben - sofern man anschließend auch om_InsertIntoTrolley_Pu aufruft (bei den anderen gäbe es dann i.d.R. einen Fehler, weil die IDs ungültig sind) !

Anmerkung zum Parameter „CheckByteLengthForStrings“ :

Die Werte in „InformationList“ sind „string“-Werte und haben daher eine maximale Länge, nämlich 1000 Bytes (nicht etwa Zeichen). Falls ein Element diese Grenze überschreitet, würde das Einfügen in die Input-Schnittstelle zwar trotzdem gelingen, aber es würden unbemerkt Zeichen (am Ende) abgeschnitten und somit verloren gehen. Mit „CheckByteLengthForStrings“ kann daher gesteuert werden, ob dieses unbemerkte „truncate“n ok ist („0“) oder ob vorher geprüft und gegebenenfalls ein Fehler geworfen werden soll („1“).

HTTP-MethodPOST
HTTP-AuthOptional
Aliasif_om_ModifyTrolleyContentInformation
Tags
Engine-Kategorieorder management
Engine-TypDaten-Änderung
Letzte Aktualisierung7.0.5 (2014-05-26)

Parameter

Name 1) Standard-Wert Beschreibung 2) SQL-Datentyp3) ab Version
HTreeNodeIDList Eine Liste von IDs (durch das in „Separator“ angegebene Zeichen getrennt) von Elementen im historischen Artikelbaum (und damit „Warenkorbs-Positionen“), die in die Spalte „HTreeNodeID“ (s. Beschreibung) der Input-Schnittstelle eingefügt werden
varchar(255)5.5.2
InformationTypeIDList Eine Liste von IDs (durch das in „Separator“ angegebene Zeichen getrennt) von Informations-Arten (mögliche Werte s. om_GetTrolleyContInfoTypes_Ad), die in die Spalte „InformationTypeID“ (s. Beschreibung) der Input-Schnittstelle eingefügt werden
varchar(255)5.5.2
InformationList Liste von Werten (durch das in „Separator“ angegebene Zeichen getrennt), die in die Spalte „Information“ (s. Beschreibung) der Input-Schnittstelle eingefügt werden
varchar(16384)5.5.2
Delete0 Möchte man zuvor die Input-Schnittstelle leeren, setzt man „Delete“ auf „1“.
bit5.5.2
Separator'¶' Gibt an, durch welche Zeichenkette die Werte in den „Listen-„Parametern (“…List“) getrennt sind
varchar(4)5.5.2
CheckByteLengthForStrings0 Gibt an, ob für die einzelnen Elemente in „InformationList“ geprüft werden soll, ob die maximale Anzahl Bytes überschritten ist („1“) oder nicht („0“)
bit7.0.5

Rückgabe

Die Prozedur hat keine Rückgaben.

Output-Parameter

InputNestingLevelGibt an, zu welchem „NestingLevel“ die Daten eingefügt wurden (ein DIREKTER Aufruf führt immer zum Wert „2“). Diese Info braucht man für einen anschließenden Aufruf von om_ModifyTrolleyContentInfo_Pu/om_UpdateTrolley_Pu/om_InsertIntoTrolley_Pu.

Mögliche Return-Codes

Code Beschreibung Quelle 4)
-500Falsche Parameterdirekt und indirekt

XML-Schema

Die Rückgabe erfolgt als XML-Dokument welches gegen das Schema Response/EngineProcedure_v1_0.xsd validiert.

Historie

7.0.5 2014-05-261. Datentyp-Erweiterung diverser Parameter und Variablen wg. der „OrderContentInformation“-Erweiterung [Ticket
#3653]
2. Neuer Parameter „CheckByteLengthForStrings“
7.0.0 2013-06-04Kleiner Doku-Fehler [verwendete Prozeduren]
6.5.4 2013-04-29Änderungen an der Dokumentation. Direkte Aufrufer dürfen nun davon ausgehen, dass „InputNestingLevel“ nach dem
Aufruf mit „2“ belegt ist.
6.5.3 2013-03-181. „Separator“ wurde erweitert [von „1“ auf „4“]
2. Interne Quellcode-Überarbeitung
5.5.2 2008-10-21Erstmalig in dieser Version erstellt

Code-Snippets

Es handelt sich um eine Methode zum Füllen von Schnittstellentabelle wie in Hintergrundinformationen zu Engine-Prozeduren erläutert. Die Methode kann ausschließlich per engine/execute in einem gemeinsamen Batch mit komplementären Prozeduren verwendet werden.

engine/execute

XML zur Ausführung mit der Methode engine/execute, z.B. per

curl --header 'Content-Type: application/xml' -X POST 'http://<partner>-<kunde>.dstore.de/default/engine/execute' -d '<xml-daten>'
<?xml version="1.0" encoding="UTF-8"?>
<ListOfBatches>
	<Batch No="0">
		<Procedure Name="if_om_ModifyTrolleyContentInfo">
			<Parameters/>
		</Procedure>
	</Batch>
</ListOfBatches>
1)
Pflichtparameter sind unterstrichen
4)
direkt meint „von der Prozedur selber“ und indirekt meint „von intern aufgerufenen Unterprozeduren“
engine/procedures/if_om_modifytrolleycontentinfo.txt · Zuletzt geändert: 11.01.2016 (Externe Bearbeitung)