Prozedur für eine einfache Darstellung eines Teilbereichs des Artikelbaums. Im Gegensatz zu im_GetDirectSuccessors_Ad werden nicht nur die direkten Nachfolger eines Elementes („TreeNodeID“) ausgegeben, sondern auch die „Nachbar“-Elemente sowie die Vorgänger und deren „Nachbar“-Elemente.
Die Ergebnismenge enthält die Elemente des Teilbereichs in der Reihenfolge, wie sie bei einer Traversierung des Artikelbaums entsteht.
| HTTP-Method | GET | 
| HTTP-Auth | Optional | 
| Tags | |
| Engine-Kategorie | item management | 
| Engine-Typ | Daten-Ermittlung | 
| Letzte Aktualisierung | 7.0.7 (2015-01-29) | 
| Name 1) | Standard-Wert | Beschreibung 2) | SQL-Datentyp3) | ab Version | 
|---|---|---|---|---|
| TreeNodeID | ID eines Elementes im Artikelbaum, für den der zugehörige Teilbereich des Artikelbaums angezeigt werden soll | integer | 3.5.0 | |
| LanguageID | 0 | ID einer Sprache, in der die Bezeichnungen der Artikelelemente erscheinen sollen | tinyint | 3.5.0 | 
| OnlyActive | 1 | „0“ : Alle Elemente des Artikelbaums werden angezeigt „1“ : Es werden nur die Elemente des Artikelbaums angezeigt, die momentan aktiv sind (solche, für die in „TreeView“ „Active = 1“ ist)  | bit | 3.5.0 | 
| OnlyNotDeleted | 1 | „0“ : Alle Elemente des Artikelbaums werden angezeigt „1“ : Gelöscht Elemente des Artikelbaums werden nicht mitberücksichtigt (solche, für die in „TreeView“ „Deleted = 1“ ist)  | bit | 3.5.0 | 
| IncludeColumnLocked | 0 | (Wird nur noch aus Kompatibilitätsgründen aufgenommen, in späteren Versionen aber nicht mehr berücksichtigt.) | bit | 3.5.0 | 
| CheckLockedTreeNodesForUserID | NULL | Optionale Angabe einer „UserID“, zu der überprüft werden soll, ob der Benutzer zugriff auf die Objekte hat oder nicht | smallint | 3.5.0 | 
| Spaltenname | Beschreibung | SQL-Datentyp4) | ab Version | 
|---|---|---|---|
| NodeDescription | Bezeichnung der „NodeID“ | varchar(100) | 3.5.0 | 
| TreeNodeID | ID eines Elementes im Artikelbaum | integer | 3.5.0 | 
| NodeID | ID des zur „TreeNodeID“ zugehörigen Artikelelementes | integer | 3.5.3 | 
| Predecessor | ID des Vorgängers von „TreeNodeID“ | integer | 3.5.0 | 
| LevelNo | Nummer der Hierarchie der „NodeID“ | tinyint | 3.5.0 | 
| TreeLevel | Anzahl Vorgänger von „TreeNodeID“ plus 1 | tinyint | 3.5.0 | 
| HasSuccessors | Hat „TreeNodeID“ selbst Nachfolger ? | bit | 3.5.0 | 
| HasNextSibling | Gibt es ein nächstes „Geschwister-Element“, also ein anderes Element des Artikelbaums, das ebenfalls „Predecessor“ als Vorgänger hat und dessen „SortNo“ um 1 niedriger ist als die „SortNo“ von „TreeNodeID“ ? | bit | 3.5.0 | 
| Active | Ist „TreeNodeID“ z.Zt. aktiviert ? („0“ : Nein, „1“ : Ja) | bit | 3.5.0 | 
| Deleted | Ist „TreeNodeID“ bereits gelöscht ? („0“ : Nein, „1“ : Ja) | bit | 3.5.0 | 
| LockedForUserID | Ist dieses Element für den Benutzer „CheckLockedTreeNodesForUserID“ gesperrt ? | bit | 3.5.0 | 
Die Prozedur hat keine Output-Parameter.
| Code | Beschreibung | Quelle 5) | 
|---|---|---|
| -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 | 
| -500 | Falsche Parameter | nur indirekt | 
| -120 | Der Benutzer hat keine Berechtigung für das (die) Element(e) | nur direkt | 
| -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 | Interne Änderung : Datentyp-Erweiterung des „ReferenceKey“ [für „_mi_StartProcedure“-Aufruf] | |
| 5.1.2 | 2006-06-26 | Die [entscheidende] Sortierung der Rückgabemenge ist im ASE 15 ohne explizites „ORDER BY“ nicht gewährleistet, | daher mußten intern in dieser Prozedure entsprechende Änderungen vorgenommen werden | 
	
|---|---|---|---|
| 4.0.11 | 2004-03-31 | 1. Aufruf der Prozeduren „_mi_StartProcedure“ und „_mi_FinishProcedure“ 2. Ausführen von „set transaction isolation level 1“ und „set rowcount 0“ zu Beginn der Prozedur 3. Konsequente Fehlerbehandlung  | |
| 3.5.19 | 2002-06-17 | ||
| 3.5.6 | 2001-04-17 | ||
| 3.5.3 | 2001-02-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/im_GetDirectSuccessors_Tree_Ad?TreeNodeID=<value>'
Mit xmllint 6) formatierte Ausgabe:
curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/im_GetDirectSuccessors_Tree_Ad?TreeNodeID=<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'), 'im_GetDirectSuccessors_Tree_Ad', array( 'TreeNodeID' => <value>, // 'LanguageID' => 0, // 'OnlyActive' => 1, // 'OnlyNotDeleted' => 1, // 'IncludeColumnLocked' => 0, // 'CheckLockedTreeNodesForUserID' => 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="im_GetDirectSuccessors_Tree_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="IncludeColumnLocked">0</Parameter> --> <!-- <Parameter Name="CheckLockedTreeNodesForUserID">NULL</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>