Ermittelt Einstellungen zu Elementen im „Anwendungs-Baum“, die zu dem Benutzer, der diese Prozedur aufruft, gespeichert sind.
Allgemeine Hinweise bzgl. Einstellungen :
Anmerkung zum Parameter „IDsInTwoIDs“ :
Die Möglichkeit, IDs über „tempdb.dbo.TwoID“s anzugeben, besteht aus Performance-Gründen, d.h. es wird nicht überprüft, ob die jeweiligen „ApplicationPartID“s auch zu den „ApplicationPartTreeID“s passen !
Außerdem wird in diesem Fall „GetValuesForCorrespondingPart“ nicht beachtet, bzw. so behandelt, als ob „1“ angegeben wäre ! (Sonst würde diese Übergabe von IDs ja auch keine Sinn machen…)
HTTP-Method | GET |
HTTP-Auth | Optional |
Alias | mi_GetApplicationPartsTreeSettings_Pu |
Tags | |
Engine-Kategorie | miscellaneous |
Engine-Typ | Daten-Ermittlung |
Letzte Aktualisierung | 7.0.7 (2015-01-29) |
Name 1) | Standard-Wert | Beschreibung 2) | SQL-Datentyp3) | ab Version |
---|---|---|---|---|
ApplicationPartTreeID | ID eines Elementes im „Anwendungs-Baum“. Bei Angabe von „NULL“ erwartet die Prozedur „ApplicationPartTreeID“s in „tempdb.dbo.OneID“ bzw. (falls „IDsInTwoIDs = 1“) in „tempdb.dbo.TwoIDs“ mit jeweils zugehörigen „ApplicationPartID“s. | integer | 4.0.12 | |
KeyVariable | NULL | Name eines Schlüssels, zu dem der für den Benutzer der diese Prozedur aufruft (bzw. für den „globalen“ Benutzer) hinterlegte Wert zurückgegeben werden soll. „NULL“ angeben, um die Werte zu ALLEN hinterlegten Schlüsseln zu bekommen. | varchar(100) | 4.0.12 |
SearchForKeyVariableWithLike | 0 | „0“ : Den Datensatz ausgeben, für den „KeyVariable = KeyVariable“ gilt „1“ : Die Datensätze ausgeben, für die „KeyVariable LIKE KeyVariable“ gilt (s. a. Beschreibung !) | bit | 4.0.12 |
GetValuesForGlobalUser | 1 | „0“ : Nur Einstellungen des Benutzers, der diese Prozedur aufruft, beachten „1“ : Auch „global“ definierte Einstellungen berücksichtigen „2“ : NUR „global“ definierte Einstellungen beachten (s. a. Beschreibung !) | tinyint | 4.0.12 |
GetValuesForCorrespondingPart | 1 | Es werden automatisch Einstellungen des jeweils zugehörigen Anwendungs-Teils (nur zu bei der jeweiligen „ApplicationPartTreeID“ NICHT vorhanden Schlüsseln) ermittelt, es sei denn, man übergibt hier „0“ (s. a. allgem. Hinweise in der Beschreibung !) | bit | 4.0.12 |
IDsInTwoIDs | 0 | Wird nur beachtet, wenn „ApplicationPartTreeID = NULL“ ist. Gibt man „1“ an, werden in „tempdb.dbo.TwoIDs“ „ApplicationPartTreeID“s (in „ID1“) mit jeweils zugehöriger „ApplicationPartID“ (in „ID2“) erwartet. (s.a. Beschreibung !) | bit | 4.0.12 |
Spaltenname | Beschreibung | SQL-Datentyp4) | ab Version |
---|---|---|---|
ApplicationPartTreeID | ID eines Elementes im „Anwendungs-Baum“, für das die Einstellung „Value“ zum Schlüssel „KeyVariable“ gilt | integer | 4.0.12 |
KeyVariable | Ein Schlüssel, zu dem der Wert „Value“ für den Benutzer, der diese Prozedur aufruft (bzw. für den „globalen“ Benutzer) hinterlegt ist | varchar(100) | 4.0.12 |
Value | Der Wert, der für „ApplicationPartTreeID“ zum Schlüssel „KeyVariable“ für den Benutzer, der diese Prozedur aufruft (bzw. für den „globalen“ Benutzer) hinterlegt ist | varchar(3500) | 4.0.12 |
ValueDerivedFromGlobalUser | „1“, falls die Einstellung nicht direkt zum Benutzer, der die Prozedur aufruft gespeichert ist, sondern zur „UserID = -1“ (also „global“ festgelegt ist). Immer „0“, wenn „GetValuesForGlobalUser = 0“ ist ! | bit | 4.0.12 |
ValueDerivedFromAppPartID | „1“, falls die Einstellung nicht direkt zur „ApplicationPartTreeID“ hinterlegt ist, sonder zum zugehörigen Anwendungs-Teil. Immer „0“, wenn „GetValuesForCorrespondingPart = 0“ und „IDsInTwoIDs = 0“ ist ! | bit | 4.0.12 |
(parameterunabängige Sortierung)
Die Prozedur hat keine Output-Parameter.
Code | Beschreibung | Quelle 5) |
---|---|---|
-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 |
-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 |
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] |
7.0.5 | 2014-05-26 | Doku angepasst. Rückgabespalte „Value“ hat nun als Datentyp „varchar[3500]“ und Datentyp der temporären Tabelle für diese Spalte entsprechend erweitert |
6.5.3 | 2013-03-18 | Anpassungen an den aktuellen Quellcode-Standard, u.a. wg. UTF8-Unterstützung |
6.0.0 | 2010-03-26 | Fehler im Fall „ApplicationPartTreeID is NULL“ und „IDsInTwoIDs = 1“ und „GetValuesForGlobalUser = 1“ : Evtl. vorhandene „ApplicationPartSettings“ wurden (aufgrund eines falschen „joins“) falsch ermittelt |
4.0.12 | 2004-04-30 | 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/mi_GetAppPartsTreeSettings_Pu?ApplicationPartTreeID=<value>'
Mit xmllint 6) formatierte Ausgabe:
curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/mi_GetAppPartsTreeSettings_Pu?ApplicationPartTreeID=<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'), 'mi_GetAppPartsTreeSettings_Pu', array( 'ApplicationPartTreeID' => <value>, // 'KeyVariable' => NULL, // 'SearchForKeyVariableWithLike' => 0, // 'GetValuesForGlobalUser' => 1, // 'GetValuesForCorrespondingPart' => 1, // 'IDsInTwoIDs' => 0 ) ); $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="mi_GetAppPartsTreeSettings_Pu"> <Parameters> <Parameter Name="ApplicationPartTreeID"><!-- integer value --></Parameter> <!-- <Parameter Name="KeyVariable">NULL</Parameter> --> <!-- <Parameter Name="SearchForKeyVariableWithLike">0</Parameter> --> <!-- <Parameter Name="GetValuesForGlobalUser">1</Parameter> --> <!-- <Parameter Name="GetValuesForCorrespondingPart">1</Parameter> --> <!-- <Parameter Name="IDsInTwoIDs">0</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>