Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
engine:procedures:im_getdirectsuccessors_ad [11.01.2016 ] |
engine:procedures:im_getdirectsuccessors_ad [11.01.2016 ] (aktuell) |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ===== im_GetDirectSuccessors_Ad ===== | ||
+ | |||
+ | Liefert zu einem Element des Artikelbaums (-> "TreeNodeID") alle direkten Nachfolger. Die Elemente, die für den Benutzer, der diese Prozedur aufruft, gesperrt sind, werden dabei natürlich nicht berücksichtigt.\\ | ||
+ | |HTTP-Method|GET | | ||
+ | |HTTP-Auth|Optional | | ||
+ | |Tags|{{tag>[im Get Direct Successors Ad]}}| | ||
+ | |Engine-Kategorie|item management | | ||
+ | |Engine-Typ|Daten-Ermittlung | | ||
+ | |Letzte Aktualisierung|7.0.7 (2015-01-29)| | ||
+ | |||
+ | ==== Parameter ==== | ||
+ | |||
+ | ^Name ((Pflichtparameter sind unterstrichen)) ^Standard-Wert ^Beschreibung ((siehe [[webservice:engine_parameterconventions|Parameter-Konventionen engine/<Prozedur-Name>]])) ^SQL-Datentyp((siehe [[:webservice:engine_datatypes|Datentypen im Bereich "engine"]])) ^ab Version ^ | ||
+ | |__TreeNodeID__| |ID eines Elementes im Artikelbaum, zu dem die Nachfolger ermittelt werden sollen\\ |integer|3.5.0| | ||
+ | |LanguageID|0 |ID einer Sprache, in der die Artikelbeschreibungen ausgegeben werden sollen\\ |tinyint|3.5.0| | ||
+ | |OnlyActive|1 |"0" : Aktive und inaktive Elemente des Artikelbaums werden ausgegeben\\ "1" : Nur die aktiven Elemente des Artikelbaums werden ausgegeben\\ |bit|3.5.0| | ||
+ | |OnlyNotDeleted|1 |"0" : Gelöschte und bestehende Elemente des Artikelbaums werden ausgegeben\\ "1" : Es werden nur momentan existierende Elemente des Artikelbaums ausgegeben (solche, für die in "TreeView" "Deleted = 0" ist)\\ |bit|3.5.0| | ||
+ | |GroupByCharacteristicID|NULL |Ermöglicht die Ermittlung zusätzlicher Ausgabemerkmale zu den gefundenen Elemente und bewirkt eine Sortierung des Ergebisses anhand dieses Merkmals\\ |smallint|3.5.17| | ||
+ | |BinaryCharacteristicValueID|NULL |ID einer Eigenschaft die "Binaries" haben können (eine Dateigröße z.B.). Ermöglicht die zusätzliche Suche von BinaryCodeIDs, welche die hier angegebene Eigenschaft besitzen\\ |integer|3.5.17| | ||
+ | |FilterByCharacteristicID|NULL |Nur Nachfolger, die "FilterByCharacValue" als Eigenschaft zum Merkmal "FilterByCharacteristicID" haben. (Achtung: Hierbei wird keine Vererbung berücksichtigt)\\ |smallint|3.5.17| | ||
+ | |FilterByCharacValue|NULL |Nur Nachfolger, die "FilterByCharacValue" als Eigenschaft zum Merkmal "FilterByCharacteristicID" haben. (Achtung: Hierbei wird keine Vererbung berücksichtigt)\\ |varchar(1000)|3.5.17| | ||
+ | |NegateFilterByParams|0 |Wird nur berücksichtigt, falls die "FilterBy..."-Parameter angegeben sind ! Bei Angabe von "1" für diesen Parameter sind nur Elemente in der Rückgabemenge, die die Eigenschaft "FilterByCharacValue" zum Merkmal "FilterByCharacteristicID" NICHT haben.\\ |bit|4.0.2| | ||
+ | ==== Rückgabe ==== | ||
+ | |||
+ | === wenn GroupByCharacteristicID = NULL === | ||
+ | |||
+ | ^Spaltenname ^Beschreibung ^SQL-Datentyp((siehe [[:webservice:engine_datatypes|Datentypen im Bereich "engine"]])) ^ab Version ^ | ||
+ | |NodeID|ID des zur "TreeNodeID" zugehörigen Artikel-Elementes\\ |integer|3.5.0 | | ||
+ | |TreeNodeID|ID eines Elementes im Artikelbaum, das Nachfolger von "TreeNodeID" ist\\ |integer|3.5.0 | | ||
+ | |InheritsFrom|ID eines Elementes im Artikelbaum, VON dem "TreeNodeID" Eigenschaften erbt (im Regelfall ist dies das Vorgänger-Element, also "TreeNodeID")\\ |integer|3.5.0 | | ||
+ | |NodeDescription|Bezeichnung der "NodeID"\\ |varchar(100)|3.5.0 | | ||
+ | |Active|Ist "TreeNodeID" z.Zt. aktiviert ? ("0" : Nein, "1" : Ja)\\ |bit|3.5.0 | | ||
+ | |CountSuccessors|Wieviele Nachfolger hat "TreeNodeID"; es werden nur die "OnlyActive" bzw. "OnlyNotDeleted" entsprechenden Elemente berücksichtigt !\\ |integer|3.5.0 | | ||
+ | |SymbolID|ID eines Symbols, das der "NodeID" zugeordnet ist\\ |tinyint|3.5.0 | | ||
+ | |LevelNo|Nummer der Hierarchie der "NodeID"\\ |tinyint|3.5.0 | | ||
+ | |SortNo|Bestimmt die Reihenfolge von "TreeNodeID" innerhalb aller Nachfolger von "TreeNodeID"\\ |smallint|3.5.0 | | ||
+ | |BinaryCodeID|ID eines "Binaries", das der "NodeID" zugeordnet ist, und das "BinaryCharacteristicValueID" als Eigenschaft besitzt. Da es prinzipiell mehrere "Binaries" mit dieser Eigenschaft geben könnte, wird immer das Binärobjekt mit der KLEINSTEN ID zurückgegeben\\ |integer|3.5.0 | | ||
+ | |||
+ | == Sortierung der Rückgabe == | ||
+ | |||
+ | (parameterunabängige Sortierung) | ||
+ | * SortNo (absteigend) | ||
+ | |||
+ | === wenn GroupByCharacteristicID <> NULL === | ||
+ | |||
+ | ^Spaltenname ^Beschreibung ^SQL-Datentyp((siehe [[:webservice:engine_datatypes|Datentypen im Bereich "engine"]])) ^ab Version ^ | ||
+ | |NodeID|ID des zur "TreeNodeID" zugehörigen Artikel-Elementes\\ |integer|3.5.0 | | ||
+ | |TreeNodeID|ID eines Elementes im Artikelbaum, das Nachfolger von "TreeNodeID" ist\\ |integer|3.5.0 | | ||
+ | |InheritsFrom|ID eines Elementes im Artikelbaum, VON dem "TreeNodeID" Eigenschaften erbt (im Regelfall ist dies das Vorgänger-Element, also "TreeNodeID")\\ |integer|3.5.0 | | ||
+ | |NodeDescription|Bezeichnung der "NodeID"\\ |varchar(100)|3.5.0 | | ||
+ | |Active|Ist "TreeNodeID" z.Zt. aktiviert ? ("0" : Nein, "1" : Ja)\\ |bit|3.5.0 | | ||
+ | |CountSuccessors|Wieviele Nachfolger (egal ob aktiv oder nicht) hat "TreeNodeID"\\ |integer|3.5.0 | | ||
+ | |SymbolID|ID eines Symbols, das der "NodeID" zugeordnet ist\\ |tinyint|3.5.0 | | ||
+ | |LevelNo|Nummer der Hierarchie der "NodeID"\\ |tinyint|3.5.0 | | ||
+ | |SortNo|Bestimmt die Reihenfolge von "TreeNodeID" innerhalb aller Nachfolger von "TreeNodeID"\\ |smallint|3.5.0 | | ||
+ | |BinaryCodeID|ID eines "Binaries", das der "NodeID" zugeordnet ist, und das "BinaryCharacteristicValueID" als Eigenschaft besitzt. Da es prinzipiell mehrere "Binaries" mit dieser Eigenschaft geben könnte, wird immer das Binärobjekt mit der KLEINSTEN ID zurückgegeben\\ |integer|3.5.0 | | ||
+ | |Value|(Direkte !) Eigenschaft der "TreeNodeID" zum Merkmal "GroupByCharacteristicID"\\ |varchar(1000)|3.5.17 | | ||
+ | |ValueID|ID der Eigenschaft "Value"\\ |integer|3.5.17 | | ||
+ | |ValueSortNo|Bestimmt die Reihenfolge von "Value" innerhalb aller Eigenschaften zum Merkmal "GroupByCharacteristicID". Enthält "-1", wenn "TreeNodeID" KEINE Eigenschaft zum Merkmal "GroupByCharacteristicID" besitzt\\ |smallint|3.5.17 | | ||
+ | |||
+ | == Sortierung der Rückgabe == | ||
+ | |||
+ | (parameterunabängige Sortierung) | ||
+ | * ValueSortNo (absteigend) | ||
+ | * Value (aufsteigend) | ||
+ | * SortNo (absteigend) | ||
+ | |||
+ | ==== Output-Parameter ==== | ||
+ | |||
+ | Die Prozedur hat keine Output-Parameter.==== Mögliche Return-Codes ==== | ||
+ | |||
+ | ^Code ^Beschreibung ^Quelle ((direkt meint "von der Prozedur selber" und indirekt meint "von intern aufgerufenen Unterprozeduren")) ^ | ||
+ | |-621|Fehlender oder falscher Eintrag in PersonTypeSettings|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| | ||
+ | |-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| | ||
+ | |-502|Die Parameter-Werte der Prozedur können nicht verarbeitet werden (kein passendes Trennzeichen)|nur indirekt| | ||
+ | |-500|Falsche Parameter|direkt und indirekt| | ||
+ | |-283|Der Benutzer hat keine Berechtigung, Eigenschaften zu diesem(n) Merkmal(en) zu ermitteln|nur direkt| | ||
+ | |-120|Der Benutzer hat keine Berechtigung für das (die) Element(e)|nur indirekt| | ||
+ | ==== XML-Schema ==== | ||
+ | |||
+ | Die Rückgabe erfolgt als XML-Dokument welches gegen das Schema [[http://resources.dstore.de/xsd/webservice_SmartGate/Response/EngineProcedure_v1_0.xsd|Response/EngineProcedure_v1_0.xsd]] validiert. | ||
+ | ==== Historie ==== | ||
+ | |||
+ | |7.0.7 |2015-01-29|Interne Änderung : Datentyp-Erweiterung des "ReferenceKey" [für "_mi_StartProcedure"-Aufruf]\\ | | ||
+ | |7.0.1 |2013-08-07|1. Datentyp-Erweiterung des Parameters "FilterByCharacValue" [von 100 auf 1000]\\ 2. Datentyp der Rückgabespalte "Value" hat sich erweitert\\ 3. Interne Anpassungen [u.a. Quellcode an den aktuellen Standard]\\ | | ||
+ | |6.5.3 |2013-03-18|Anpassungen an aktuellen Code-Standard, u.a. wg. UTF8-Unterstützung)e\\ | | ||
+ | |5.1.5 |2006-08-29|Fehler : "LockedNodeCharacteristics" wurde bisher GAR NICHT beachtet !\\ | | ||
+ | |5.1.1 |2006-04-05|Optimierung des Zugriffs auf "NodeProperties" (bedingt durch die Änderung dieser Tabelle in 5.1.0)\\ | | ||
+ | |4.0.11 |2004-03-31|1. Aufruf der Prozeduren "_mi_StartProcedure", "_mi_FinishProcedure" und "_mi_ChooseParamValueSeperator"\\ 2. "set transaction isolation level 1", "set rowcount 0" zu Beginn d. Prozedur\\ 3. Konsequente Fehlerbehandlung\\ | | ||
+ | |4.0.2 |2003-06-11|Neuer Parameter "NegateFilterByParams"\\ | | ||
+ | |4.0.1 |2003-05-16|Ab jetzt wird berücksichtigt, daß in "NodeProperties" auch Gültigkeitszeiträume in der Zukunft vorhanden sein können !\\ | | ||
+ | |4.0.0 |2003-04-03|1. Code-Vereinfachungen bzgl. "OnlyActive", "OnlyNotDeleted" und "FilterByValueID"\\ 2. Bei "CountSuccessors" wird jetzt ebenfalls "OnlyActive" bzw. "OnlyNotDeleted" berücksichtigt !\\ 3. Diverse Fehler in der Doku\\ | | ||
+ | |3.5.17 |2002-05-02|\\ | | ||
+ | |3.5.0 |2000-11-23|Erstmalig in dieser Version erstellt\\ | | ||
+ | |||
+ | ==== Code-Snippets ==== | ||
+ | |||
+ | == Engine Playground == | ||
+ | Der folgende Link öffnet in einem separaten Fenster den Engine Playground der fest mit dem dbap-demo System verbunden ist: | ||
+ | * [[http://playground.dstore.de/index.php?proc=im_GetDirectSuccessors_Ad|im_GetDirectSuccessors_Ad im Engine Playground öffnen]] | ||
+ | == cURL == | ||
+ | Unformatierte Ausgabe: | ||
+ | <code bash> | ||
+ | curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/im_GetDirectSuccessors_Ad?TreeNodeID=<value>'</code>Mit xmllint ((I.d.R. auf Unix-artigen Systemen bereits installiert, Bestandteil der libxml2, siehe http://www.xmlsoft.org)) formatierte Ausgabe: | ||
+ | <code bash> | ||
+ | curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/im_GetDirectSuccessors_Ad?TreeNodeID=<value>' | xmllint --format -</code>== dStore_php == | ||
+ | <code php> | ||
+ | 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'), | ||
+ | 'im_GetDirectSuccessors_Ad', | ||
+ | array( | ||
+ | 'TreeNodeID' => <value>, | ||
+ | // 'LanguageID' => 0, | ||
+ | // 'OnlyActive' => 1, | ||
+ | // 'OnlyNotDeleted' => 1, | ||
+ | // 'GroupByCharacteristicID' => NULL, | ||
+ | // 'BinaryCharacteristicValueID' => NULL, | ||
+ | // 'FilterByCharacteristicID' => NULL, | ||
+ | // 'FilterByCharacValue' => NULL, | ||
+ | // 'NegateFilterByParams' => 0 | ||
+ | ) | ||
+ | ); | ||
+ | |||
+ | $service->execute($request); | ||
+ | |||
+ | $xml_result = $request->getResponse()->getBody()->toSimpleXmlDocument(); | ||
+ | $ResultSet = $xml_result->getRowsAsArray(); | ||
+ | |||
+ | </code> | ||
+ | == engine/execute == | ||
+ | XML zur Ausführung mit der Methode [[:webservice:engine:execute|engine/execute]], z.B. per | ||
+ | curl --header 'Content-Type: application/xml' -X POST 'http://<partner>-<kunde>.dstore.de/default/engine/execute' -d '<xml-daten>' | ||
+ | |||
+ | <code xml> | ||
+ | <?xml version="1.0" encoding="UTF-8"?> | ||
+ | <ListOfBatches> | ||
+ | <Batch No="0"> | ||
+ | <Procedure Name="im_GetDirectSuccessors_Ad"> | ||
+ | <Parameters> | ||
+ | <Parameter Name="TreeNodeID"><!-- integer value --></Parameter> | ||
+ | <!-- <Parameter Name="LanguageID">0</Parameter> --> | ||
+ | <!-- <Parameter Name="OnlyActive">1</Parameter> --> | ||
+ | <!-- <Parameter Name="OnlyNotDeleted">1</Parameter> --> | ||
+ | <!-- <Parameter Name="GroupByCharacteristicID">NULL</Parameter> --> | ||
+ | <!-- <Parameter Name="BinaryCharacteristicValueID">NULL</Parameter> --> | ||
+ | <!-- <Parameter Name="FilterByCharacteristicID">NULL</Parameter> --> | ||
+ | <!-- <Parameter Name="FilterByCharacValue">NULL</Parameter> --> | ||
+ | <!-- <Parameter Name="NegateFilterByParams">0</Parameter> --> | ||
+ | </Parameters> | ||
+ | </Procedure> | ||
+ | </Batch> | ||
+ | </ListOfBatches></code> | ||