Gibt den Inhalt des Warenkorbes zu einem Besucher zurück. Der Unterschied zur Prozedur om_GetTrolley_Pu liegt in der Formatierung der Ausgabe :
Die Artikel des Warenkorbes werden nicht einfach untereinander aufgelistet, sondern sind nach Produkten gruppiert, wobei die ausgewählten Varianten zu dem jeweiligen Produkt in Form einer Matrix zurückgegeben werden (analog zu im_GetVariantMatrix). Einträge, die die gleiche „ProductTreeNodeID“ (siehe Rückgabemenge) besitzen, gehören dabei zur gleichen Matrix. Innerhalb eines solchen Blocks werden die Einträge zeilenweise von links nach rechts ausgegeben. Einträge mit gleichem Wert für „YAxisValueIDs“ gehören zur gleichen Zeile, Einträge mit der gleichen „XAxisValueID“ zur gleichen Spalte. Kombinationen, zu denen es keine Variante gibt, enthalten dann in den Rückgabe-Spalte „VariantTreeNodeID“ den Wert „NULL“.
Wichtig : Das zugehörige Produkt der Varianten, die in dieser Matrix-Form dargestellt werden sollen, muß zur Erkennung der Merkmale, aus denen sich die Varianten zusammensetzen, eine Eigenschaft zum Merkmal „Variantenmerkmale“ (ID „17“) besitzen !
Hinweis zur Preisermittlung (falls „CalculatePrices = 1“ ist):
Gibt es einen „Settings“-Eintrag zum Schlüssel „PriceInTrolleyIsValidForXSeconds“ (eine Zahl größer als „0“), werden die Preise nicht zum aktuellen Zeitpunkt (des Aufrufs dieser Prozedur), sondern zu dem Zeitpunkt, an dem sie jeweils in den Warenkorb gelegt wurden, ermittelt - sofern nicht die konfigurierte Anzahl Sekunden überschritten ist !
Fügt also z.B. ein Kunde einen Artikel seinem Warenkorb hinzu, das zu einem „Aktionspreis“ angeboten wird, und ruft er die Warenkorb-Anzeige zu einem späteren Zeitpunkt auf, an dem die Aktion aber bereits beendet ist, bekommt er trotzdem den Aktionspreis angezeigt - und zu diesem Preis kann er dann auch bestellen, siehe om_CopyFromTrolleyToOrder_Pu.
Anmerkungen zur Ausgabespalte „ProductTreeNodeID“ :
Im Warenkorb werden immer „HTreeNodeID“s gespeichert. Eine „HTreeNodeID“ ist ein Element im „Artikelbaum“ mit Gültigkeitszeitraum. Jedes Element im „Artikelbaum“ besitzt einen/mehrere Gültigkeitszeitraum/-zeiträume. Für gelöschte Elemente ist dieser Zeitraum abgeschlossen, für momentan gültige (unabhängig davon ob aktiviert oder nicht !!!) Elemente ist dieser Zeitraum OFFEN. Bekommt ein Element eine andere Position im Artikelbaum (d.h. wird es „verschoben“), so existieren mindestens ZWEI Gültigkeitszeiträume : die alte(n) Position(en) im Baum haben natürlich abgeschlossene Zeiträume, die neue (nach dem Verschieben) hat entsprechend einen offenen Zeitraum.
Besonderheit : DERZEIT hat jedes Artikel-Element („NodeID“) eine EINDEUTIGE Position im Artikelbaum („TreeNodeID“). Es ist jedoch vorgesehen, ein Element MEHRFACH im Baum einordnen zu können. Dies hat zur Folge, daß man ein Artikel-Element nicht unbedingt EINDEUTIG in der Hierarchie einordnen kann. DESWEGEN gibt es zu jeder „NodeID“ GENAU EINE
„HTreeNodeID“ mit einem offenen Gültigkeitszeitraum, wobei die „TreeNodeID“ unbekannt ist (Weil dieses Element aber in jedem Fall unterhalb des „Wurzel-Elementes“ liegt, ist als „TreeNodeID“ die „0“ angegeben !)
Es kann also sein, daß sich im Warenkorb des Besuchers eine „HTreeNodeID“ befindet, deren zugehörige „TreeNodeID“ „0“ ist. In diesem Fall wird als „ProductTreeNodeID“ die KLEINSTE „TreeNodeID“ gewählt, die der entsprechenden „NodeID“ zugeordnet ist (z.Zt. gibt es, wie erwähnt, nur EINE „TreeNodeID“, die das erfüllt).
Falls gewünscht, können bei der Anzeige des Warenkorbes die Preise der Artikel errechnet werden (→ „CalculatePrices“); außerdem können dabei evtl. vorhandene „Surcharges“ (also Aufschläge bzw. Rabatte) einer bestimmten Person (→ „PersonID“) berücksichtigt werden. Grundsätzliches zu „Surcharges“ :
1. Der „dStore“ versteht „Surcharges“ („Aufschläge“) als Prinzip, um zusätzlich entstehende Kosten oder aber Formen von Rabatten abzubilden - diese können sowohl relativ (also prozentual) als auch absolut angegeben werden (siehe om_GetSurchargeTypes_Ad). Rabatte zeichnen sich einfach dadurch aus, daß die Kosten mit negativem Vorzeichen behaftet sind.
2. Mögliche „Surcharges“ bei der Preisermittlung für Auftrags-Positionen (→ om_GetPrices_Pu) werden aus den Tabellen „PersonSurcharges“ (für Personen) und „GroupSourcharges“ (für Gruppen) ermittelt. „Surcharges“ sind in diesem Kontext immer für bestimmte Elemente des Artikelbaums definiert, wobei diese sich immer auf die NACHFOLGER übertragen und nicht - wie bei den Artikeleigenschaften - auf die „ERBEN“ (d.h. hier wird die „Predecessor“-Spalte aus „TreeView“ herangezogen und nicht die „InheritsFrom“-Spalte) !
Es gelten hierbei folgende Prioritäten:
3. Es gibt seit Version 6.0.2 auch das Konzept von „Surcharges“ für einen gesamten Warenkorb bzw. Auftrag (→ om_GetTrolleySurcharges_Pu, om_GetOrderSurcharges_Ad). Dabei handelt es sich um Dinge wie Versandkosten, Skonti, Guthabenverrechnung oder ein (Gesamt-)Auftrags-Rabatt. Letzterer kann zwar auch in den meisten Fällen als Rabatt für alle Auftrags-Positionen abgebildet werden (s. 2.), aber bei absoluten Rabatten ist dies steuerlich nicht korrekt, falls unterschiedliche Steuersätze im Auftrag vorkommen !
Anmerkungen zum Parameter „PriceNodeCharacteristicID“ :
1. Dieser Parameter durchbricht ein wenig das Sicherheits-Konzept der „public“-Prozeduren (alle Prozeduren, deren Name NICHT auf „_Ad“ endet und nicht mit „_“ beginnt). Normalerweise kann ein öffentlicher Benutzer, der sich DIREKT auf dem Datenbank-Server anmeldet (was i.d.R. schon schwierig genug sein sollte…) NUR Daten einsehen oder verändern, für die Zugriffsrechte vorhanden sind. Beispielsweise kann (siehe im_ModifyLockedNodeCharacs_Ad) verhindert werden, daß der „publicuser“ Eigenschaften zu bestimmten Merkmalen einsehen kann - insbesondere bestimmte „Preise“ („Händler-EK“s o.ä.). Evtl. wird es in einer zukünftigen „dStore“-Version daher die Möglichkeit geben, Berechtigungen für Merkmale an den Personen-TYP zu binden o.ä.
2. Ist eine „PriceNodeCharacteristicID“ angegeben, werden KEINE Staffelpreise und KEINE „Surcharges“ berücksichtigt ! Kann zu einigen Elementen kein Preis über das angegebene Merkmal ermittelt werden, wird doch wieder die herkömmliche Preisermittlung durchgeführt, allerdings werden dann ebenfalls KEINE Staffelpreise und KEINE Rabatte ermittelt !
Anmerkung zum Parameter „RepairEntriesWithSameNodeID“ :
Der Parameter „RepairEntriesWithSameNodeID“ gibt an, ob der Fehler „-311“ zurückgegeben wird (wenn „NULL“ oder „0“ angegeben ist), falls im Warenkorb mehrere „HTreeNodeID“s mit gleicher „NodeID“ vorhanden sind, oder ob die betroffenen Datensätze „repariert“ werden sollen. Solche fehlerhaften Datensätze treten im Regelfall nicht auf, aber durch das „Zusammenlegen von Warenkörben“ beim Identifizierungsvorgang - siehe pm_CheckPersonIdentity_Pu - kann es in sehr, sehr seltenen Fällen auftreten !
„Reparieren“ sieht je nach übergebenem Wert so aus :
Anmerkung zum Parameter „DeliveryPersonID“ :
Über „DeliveryPersonID“ kann optional die ID einer Lieferanschrift übergeben werden, um z.B. eine „Brutto=Netto“-Berechnung im Falle einer Lieferung an ein Land außerhalb der EU (unter der Annahme, daß die Ware aus einem EU-Land heraus geliefert wird) zu ermöglichen.
Hinweis : Letzteres ist nämlich KEIN Standard-Verhalten, sondern muß in „_ac_om_GetBasicPrices“ bzw. „_ac_om_ComputePrices“ implementiert werden !
HTTP-Method | GET |
HTTP-Auth | Optional |
Tags | |
Engine-Kategorie | order management |
Engine-Typ | Daten-Ermittlung |
Letzte Aktualisierung | 7.0.7 (2015-01-29) |
Name 1) | Standard-Wert | Beschreibung 2) | SQL-Datentyp3) | ab Version |
---|---|---|---|---|
UniqueID | Eindeutige ID eines Besuchers (aus „Visitors“), dessen „Warenkorb“ (Tabelle „Trolley“) angezeigt werden soll | varchar(100) | 3.5.0 | |
PersonID | NULL | ID einer Person, die dem Besucher „UniqueID“ aktuell zugeordnet sein muß. Wenn angegeben, werden bei der Preisermittlung (falls „CalculatePrices = 1“) evtl. vorhandene „Surcharges“ (Rabatte/Aufschläge) berücksichtigt. | integer | 3.5.0 |
CalculatePrices | 1 | „0“ : KEINE Preise für Warenkorbspositionen ermitteln (Preisspalten sind dann immer „NULL“) „1“ : Preise für Warenkorbspositionen ermitteln „2“ : Wie „1“ mit evtl. zusätzlichen Infos „SurchargeReason“ und „SurchargeGeneratedByCampIDs“ | tinyint | 3.5.0 |
CheckAvailability | 1 | „1“ angeben, um überprüfen zu lassen, ob die Artikel im Warenkorb verfügbar sind. Nicht verfügbare Artikel (solche, die die Eigenschaft „Nicht lieferbar“ [„ValueID = -1“] zum Merkmal „Verfügbarkeit“ [ID „9“] besitzen) werden gekennzeichnet (→ „Removed“) | bit | 3.5.0 |
PriceNodeCharacteristicID | NULL | ID eines Merkmals. Die Preisermittlung läuft i.d.R. über die rekursiven Merkmale „Verkaufspreis…“. Möchte man aber z.B. sowohl Einzel- als auch Großhandel über denselben Artikelstamm abwickeln, kann man hierdurch ein anderes „Preis-Merkmal“ angeben. | smallint | 3.5.5 |
RepairEntriesWithSameNodeID | 0 | „NULL“ oder „0“ : falls im Warenkorb mehrere „HTreeNodeID“s mit gleicher „NodeID“ vorhanden sind, gibt es „-311“ „1“, „2“, „3“, „4“ : Die Daten werden „repariert“ (s. Beschreibung) | tinyint | 4.0.7 |
DeliveryPersonID | NULL | ID einer Person, an die die Ware geliefert werden soll. Falls angegeben, wird diese ID an die interne Preis-Ermittlung weitergereicht (derzeit ohne Funktionalität), um z.B. in „_ac_om_GetBasicPrices“ verwendet werden zu können (s. Beschreibung). | integer | 6.0.0 |
OutputIntoTrolleySurchInterf | 0 | Nur beachtet, wenn „CalculatePrices > 0“ ! „1“ angeben, um den Gesamt-Warenkorbwert nach Steuersätzen aufget. in die Input-Schnittst. von om_GetTrolleySurcharges_Pu einzufügen (um diese anschl. mit „NULL“ für die „…Sum“-Parameter aufruf. zu können). | bit | 6.5.2 |
PaymentTypeID | NULL | ID einer Zahlungsart, mit der voraussichtlich der Auftrag platziert wird - relevant für evtl. Reduzierungen von Artikelpreisen durch Verkaufs-Aktionen mit Bedingungen, die von der Zahlungsart abhängen | smallint | 6.5.2 |
ShippingTypeID | NULL | ID einer Versandart, mit der voraussichtlich der Auftrag platziert wird - relevant für evtl. Reduzierungen von Artikelpreisen durch Verkaufs-Aktionen mit Bedingungen, die von der Versandart abhängen | tinyint | 6.5.2 |
Spaltenname | Beschreibung | SQL-Datentyp4) | ab Version |
---|---|---|---|
VariantSortNo5) | Wird zur Sortierung der Rückgabemenge benötigt, aber nicht ausgegeben. Bestimmt die Reihenfolge der Variante innerhalb aller Varianten von „ProductTreeNodeID“. Diese richtet sich letztlich nach den „SortNo“s der Eigenschaften zu den Variantenmerkmalen. | integer | 3.5.0 |
ProductTreeNodeID | ID eines Elementes im Artikelbaum (aus dem Warenkorb des Besuchers „UniqueID“). Wichtiger Hinweis : siehe Beschreibung ! | integer | 3.5.0 |
ProductDescription | Bezeichnung der „ProductTreeNodeID“ in der Sprache, die der Besucher „UniqueID“ bevorzugt (falls vorhanden steht hier evtl. die Eigenschaft zum Merkmal „Produktbezeichnung“, s.a. im_GetNodeDescriptions_Pu) | varchar(1000) | 3.5.0 |
VariantTreeNodeID | ID eines Elementes im Artikelbaum, das eine Variante von „ProductTreeNodeID“ darstellt. „NULL“, falls „ProductTreeNodeID“ keine Varianten hat oder die Variante mit den Eigenschaften „YAxisValues“ und „XAxisValue“ nicht existiert bzw. im Warenkorb liegt. | integer | 3.5.0 |
YAxisValues | Eigenschaften (durch '¶' getrennt) von „VariantTreeNodeID“ zu den „Varianten-Merkmalen“ (bis auf das letzte Merkmal, siehe „XAxisValue“), die als Eigenschaft zur Merkmal-ID „17“ zum Element „ProductTreeNodeID“ hinterlegt sind | varchar(255) | 3.5.0 |
YAxisValueIDs | Die zu den Eigenschaften „YAxisValues“ korrespondierenden „ValueID“s (ebenfalls durch '¶' getrennt) | varchar(255) | 3.5.0 |
XAxisValue | Eigenschaft von „VariantTreeNodeID“ zum letzten „Varianten-Merkmal“ der Merkmale, die als Eigenschaft zur Merkmal-ID „17“ zum Element „ProductTreeNodeID“ hinterlegt sind | varchar(100) | 3.5.0 |
XAxisValueID | Die zur Eigenschaft „XAxisValue“ korrespondierende „ValueID“ | integer | 3.5.0 |
Quantity | Anzahl des Produktes „ProductTreeNodeID“ bzw. der Produkt-Variante „VariantTreeNodeID“, die der Besucher „UniqueID“ in seinen „Warenkorb gelegt“ hat | integer | 3.5.0 |
UnitNettoPrice | Netto-Verkaufspreis (für das Produkt „ProductTreeNodeID“ bzw. für die Produkt-Variante „VariantTreeNodeID“) pro Stück in der vom Besucher „UniqueID“ bevorzugten Währung | money | 3.5.0 |
UnitBruttoPrice | Brutto-Verkaufspreis (für das Produkt „ProductTreeNodeID“ bzw. für die Produkt-Variante „VariantTreeNodeID“) pro Stück in der vom Besucher „UniqueID“ bevorzugten Währung | money | 3.5.0 |
RelativeSurcharge | Relativer Rabatt/Aufschlag in Prozent. Ein negativer Wert bedeutet einen Rabatt, sonst beinhaltet der Verkaufspreis einen Aufschlag. Falls KEINE „PersonID“ angegeben wurde, steht hier immer „0“ (bzw. „NULL“) ! | decimal(16,6) | 3.5.0 |
AbsoluteUnitNettoSurcharge | Absoluter Netto-Rabatt (negativer Wert) bzw. -Aufschlag (positiver Wert) pro Stück. Entspricht also „UnitNettoPrice * RelativeSurcharge / 100“. Falls KEINE „PersonID“ angegeben wurde, steht hier immer „0“ (bzw. „NULL“) ! | money | 3.5.0 |
AbsoluteUnitBruttoSurcharge | Absoluter Brutto-Rabatt (negativer Wert) bzw. -Aufschlag (positiver Wert) pro Stück. Entspricht also „UnitBruttoPrice * RelativeSurcharge / 100“. Falls KEINE „PersonID“ angegeben wurde, steht hier immer „0“ (bzw. „NULL“) ! | money | 3.5.0 |
UnitSymbol | Symbol (im Regelfall der ISO-Code) der Währung, die der Besucher „UniqueID“ bevorzugt und in der die Werte „UnitNettoPrice“ usw. angegeben sind | varchar(10) | 3.5.0 |
InputDateAndTime | Zeitpunkt, zu dem der Besucher „UniqueID“ das Element „ProductTreeNodeID“ bzw. „VariantTreeNodeID“ in den Warenkorb gelegt hat. Gibt es mehrere Varianten zur „ProductTreeNodeID“ ist dieser Wert für alle Varianten gleich (der kleinste aller Varianten). | datetime | 3.5.0 |
Removed | „<> 0“, wenn „HTreeNodeID“ entfernt wurde: * 1: Allg. Grund * 2: Keine aktive „Campaign“ zur „BonusItemForItemSetID“ * 3: Bonus Art. erfüllt keine der Bedingungen * 4: Zu viele Bonus Art. aus einem Set * 5: Komb. von Bon-Art. unters. Sets nicht möglich | tinyint | 3.5.0 |
PriceNodeCharacteristicID | ID des Merkmals; die Eigenschaft von „NodeID“ zu diesem Merkmal hat den Preis („UnitNettoPrice“) bestimmt | smallint | 4.0.7 |
SurchargeReason | „Grund“ für einen evtl. vorhandenen Rabatt (z.B. ein „Aktionsname“, der letztlich von der individuellen Rabatt-Ermittlung durch „_ac_om_GetSurcharges“ stammt). Immer „NULL“, wenn „CalculatePrices < 2“ ist ! | varchar(100) | 6.5.2 |
SurchargeGeneratedByCampIDs | Liste von „CampaignID“s der Verkaufsaktionen, die zur Rabattierung der Position geführt haben. Immer „NULL“, wenn „CalculatePrices < 2“ ist ! | varchar(255) | 6.5.2 |
(parameterunabängige Sortierung)
Die Prozedur hat keine Output-Parameter.
Code | Beschreibung | Quelle 6) |
---|---|---|
-1204 | Fehlender oder falscher Eintrag in CampaignSettings | nur indirekt |
-655 | Die VisitorID steht nicht mit der PersonID in Verbindung | nur indirekt |
-621 | Fehlender oder falscher Eintrag in PersonTypeSettings | nur indirekt |
-600 | Es konnte keine gültige VisitorID ermittelt werden | nur direkt |
-599 | Lizenz ist ungültig oder abgelaufen | nur indirekt |
-569 | Der Benutzer hat kein Ausführungsrecht für die Prozedur | nur indirekt |
-567 | Die Prozedur darf z. Zt. nicht ausgeführt werden | nur indirekt |
-566 | Die Prozedur darf mit den übergebenen Parametern nicht ausgeführt werden | nur indirekt |
-550 | Fehlender oder falscher Eintrag in Settings | nur indirekt |
-540 | Falsches Format | nur indirekt |
-535 | Das Datum liegt nicht in der Vergangenheit | nur indirekt |
-530 | Der Wert ist nicht konvertierbar | nur indirekt |
-510 | Der Benutzer ist nicht registriert | nur indirekt |
-504 | Es ist ein Problem aufgetreten, das nicht gelöst werden kann, Prozedur wird daher abgebrochen | nur indirekt |
-503 | Fehlerhafte Daten in einer Tabelle - genauere Fehlermeldung auf der Standardausgabe | nur indirekt |
-502 | Die Parameter-Werte der Prozedur können nicht verarbeitet werden (kein passendes Trennzeichen) | nur indirekt |
-500 | Falsche Parameter | direkt und indirekt |
-333 | Ein benötigter Steuersatz ist nicht bekannt oder konnte nicht ermittelt werden | nur indirekt |
-312 | Fehlerhafte Daten im Warenkorb konnten nicht repariert werden | nur indirekt |
-311 | Fehlerhafte Daten im Warenkorb : Es sind mehrere „HTreeNodeID“s mit gleicher „NodeID“ vorhanden | nur indirekt |
-310 | Der Besucher hat keine gültigen Artikel im Warenkorb | nur indirekt |
-286 | Der Benutzer hat nicht die Berechtigung(en), Eigenschaften zu diesem(n) Merkmal(en) zu lesen/ändern | nur indirekt |
-284 | Der Benutzer hat keine Berechtigung, Eigenschaften zu diesem(n) Merkmal(en) zu modifizieren | nur indirekt |
-283 | Der Benutzer hat keine Berechtigung, Eigenschaften zu diesem(n) Merkmal(en) zu ermitteln | nur indirekt |
-230 | Nicht alle Knoten haben Eigenschaften zu den angegebenen Merkmalen | nur indirekt |
-221 | Es konnte kein rekursives Merkmal mit der Standardwährung als Einheit ermittelt werden | nur indirekt |
-220 | Es konnte keine Merkmal-ID für die Produktbezeichnung ermittelt werden | nur indirekt |
-210 | Das (die) Element(e) hat (haben) keine Eigenschaft zum angegebenen Merkmal | nur direkt |
-120 | Der Benutzer hat keine Berechtigung für das (die) Element(e) | nur indirekt |
-110 | Das (die) Element(e) ist (sind) nicht vorhanden | nur indirekt |
Die Rückgabe erfolgt als XML-Dokument welches gegen das Schema Response/EngineProcedure_v1_0.xsd validiert.
7.0.7 | 2015-01-29 | „Start-/Finish-Procedure“-Logik eingebaut, s. Ticket #3670 |
7.0.4 | 2014-03-19 | Doku bzgl. Rückgabespalte „Removed“ angepasst |
7.0.2 | 2013-08-29 | Doku-Hinweis bzgl. Parameter „PersonID“, der nun auch relevant für Verkaufsaktionen ist |
7.0.1 | 2013-08-07 | 1. Interne Anpassungen aufgrund der Datentyp-Erweiterung der „Value“-Spalte von „NodeCharacteristicValues“ 2. Datentyp der Rückgabespalte „ProductDescription“ hat sich erweitert ⇒ Auch Anpassung der Doku |
6.5.4 | 2013-04-29 | Bugfix: „OutputIntoTrolleySurchInterf“ wurde fälschlicherweise auch beachtet, wenn „CalculatePrices = 0“ war. |
6.5.2 | 2013-02-26 | 1. Neue Parameter „OutputIntoTrolleySurchInterf“, „PaymentTypeID“, „ShippingTypeID“ 2. Parameter „CalculatePrices“ ist nun „tinyint“, neuer möglicher Wert „2“ |
6.0.2 | 2011-06-08 | Keine Änderung, lediglich eine Anpassung der Doku bzgl. „Surcharges“ (zu diesem Thema gab es Änderungen) |
6.0.0 | 2010-03-26 | Neuer Parameter „DeliveryPersonID“ |
5.1.1 | 2006-04-05 | Optimierung des Zugriffs auf „NodeProperties“ (bedingt durch die Änderung dieser Tabelle in 5.1.0) |
5.0.1 | 2005-03-29 | 1. Umstellung der Ausgabe von „_om_GetTrolley“ auf die neue „Schnittstellen“-Datenbank „dstoreifout“ 2. Konsequente Fehlerbehandlung |
4.0.7 | 2004-01-16 | 1. Neue Rückgabespalte „PriceNodeCharacteristicID“ 2. Neuer Parameter „RepairEntriesWithSameNodeID“ |
4.0.6 | 2003-11-14 | 1. Die intern verwendete Prozedur „_om_GetTrolley“ hat sich geändert, daher waren auch hier [kleine] Änderungen notwendig 2. Hinweis in der Doku auf den neuen Settings-Eintrag „PriceInTrolleyIsValidForXSeconds“ |
3.5.19 | 2002-06-17 | |
3.5.5 | 2001-03-30 | |
3.5.4 | 2001-03-11 | |
3.5.0 | 2000-11-23 | Erstmalig in dieser Version erstellt |
Der folgende Link öffnet in einem separaten Fenster den Engine Playground der fest mit dem dbap-demo System verbunden ist:
Unformatierte Ausgabe:
curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/om_GetTrolleyAsMatrix_Pu?UniqueID=<value>'
Mit xmllint 7) formatierte Ausgabe:
curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/om_GetTrolleyAsMatrix_Pu?UniqueID=<value>' | xmllint --format -
use dStore_php\WebService; $service = new WebService\Service( WebService\Scheme::HTTP,'<partner>-<project>.dstore.de', 80); $request = new WebService\Requests\Engine\Procedure\Request( new WebService\Requests\AccessData('default'), 'om_GetTrolleyAsMatrix_Pu', array( 'UniqueID' => '<value>', // 'PersonID' => NULL, // 'CalculatePrices' => 1, // 'CheckAvailability' => 1, // 'PriceNodeCharacteristicID' => NULL, // 'RepairEntriesWithSameNodeID' => 0, // 'DeliveryPersonID' => NULL, // 'OutputIntoTrolleySurchInterf' => 0, // 'PaymentTypeID' => NULL, // 'ShippingTypeID' => NULL ) ); $service->execute($request); $xml_result = $request->getResponse()->getBody()->toSimpleXmlDocument(); $ResultSet = $xml_result->getRowsAsArray();
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="om_GetTrolleyAsMatrix_Pu"> <Parameters> <Parameter Name="UniqueID"><!-- varchar value --></Parameter> <!-- <Parameter Name="PersonID">NULL</Parameter> --> <!-- <Parameter Name="CalculatePrices">1</Parameter> --> <!-- <Parameter Name="CheckAvailability">1</Parameter> --> <!-- <Parameter Name="PriceNodeCharacteristicID">NULL</Parameter> --> <!-- <Parameter Name="RepairEntriesWithSameNodeID">0</Parameter> --> <!-- <Parameter Name="DeliveryPersonID">NULL</Parameter> --> <!-- <Parameter Name="OutputIntoTrolleySurchInterf">0</Parameter> --> <!-- <Parameter Name="PaymentTypeID">NULL</Parameter> --> <!-- <Parameter Name="ShippingTypeID">NULL</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>