Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
engine:procedures:mi_getapplicationparts_ad [11.01.2016 ] |
engine:procedures:mi_getapplicationparts_ad [11.01.2016 ] (aktuell) |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ===== mi_GetApplicationParts_Ad ===== | ||
+ | |||
+ | Prozedur zur Ausgabe von sogenannten "Teilen" registrierter "dStore-Anwendungen".\\ | ||
+ | |||
+ | Was sich letztlich hinter einem Anwendungs-Teil verbirgt, ist für den "dStore" vollkommen bedeutungslos. Es kann sich hierbei um ein "Objekt" handeln, oder um ein "Frame", oder um eine Kombination von Fenstern, etc. Hintergrund hierfür ist die Möglichkeit für die Anwendung, zu diesen Teilen bestimmte Einstellungen hinterlegen zu können - siehe dazu [[dstoreproc>mi_ModifyAppPartSettings_Ad]].\\ | ||
+ | |||
+ | |||
+ | |||
+ | Anmerkung zum Parameter "UserID" und GetPartsForUserID:\\ | ||
+ | |||
+ | Anwendungs-Teile können "global" (zur "UserID = -1") als auch für speziell für einen Benutzer definiert sein. Ist "ApplicationPartID" "NULL", werden sowohl die Anwendungs-Teile zur "UserID = -1" als auch zu dem Benutzer, der die Prozedur aufruft, herangezogen - sofern man "UserID = NULL" angibt. Setzt man diesen Parameter, bekommt man auch nur Anwendungs-Teile, die zu diesem Benutzer definiert sind.\\ | ||
+ | |||
+ | Setzt man allerdings GetPartsForUserID und ApplicationPartID = NULL, bekommt man immer die Anwendungteile\\ zur übergebenen GetPartsForUserID und die zum "GlobalUser"(also zur UserID = -1).\\ Der Parameter UserID wird in dem Fall, dass GetPartsForUserID angegeben wurde, ignoriert.\\ | ||
+ | |||
+ | |||
+ | |||
+ | Anmerkung zum Parameter "SearchForAppPartWithLike" :\\ Ist "1" angegeben, d.h. soll mit dem "LIKE"-Operator gesucht werden, kann "ApplicationPart" die in T-SQL erlaubten "wildcards" ("%" für eine beliebige Zeichenkette, "_" für ein beliebiges Zeichen) enthalten.\\ | ||
+ | |HTTP-Method|GET | | ||
+ | |HTTP-Auth|Optional | | ||
+ | |Tags|{{tag>[mi Get Application Parts Ad]}}| | ||
+ | |Engine-Kategorie|basics | | ||
+ | |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 ^ | ||
+ | |__ApplicationPartID__| |ID eines Teils einer "dStore"-Anwendung. Bei Angabe von "NULL" werden alle definierten bzw. nur die "ApplicationPart" entsprechenden Teile der Anwendung "ApplicationID" zurückgegeben.\\ |integer|4.0.8| | ||
+ | |ApplicationID|NULL |ID einer registrierten "dStore"-Anwendung, zu der ein oder mehrere Teil(e) ermittelt werden sollen. Anmerkung : Ist "NULL" angegeben, muß "ApplicationPartID" angegeben sein (sonst gibt es den Fehler "-500") !\\ |smallint|4.0.8| | ||
+ | |UserID|NULL |Wird nur beachtet, wenn "ApplicationPartID = NULL" ist ! ID eines "dStore"-Benutzers, der in "UserInfo" registriert ist (siehe [[dstoreproc>mi_GetUserInfo_Ad]]). Falls angegeben, werden nur die Anwendungs-Teile dieses Benutzers ausgegeben (s.a. Beschreibung !).\\ |smallint|4.0.8| | ||
+ | |ApplicationPart|NULL |Wird nur beachtet, wenn "ApplicationPartID = NULL" ist ! Je nach "SearchForAppPartWithLike" wird der Teil ausgegeben, der genauso heißt ("="-Operator) oder aber die Teile, die so "ähnlich" heißen ("LIKE"-Operator).\\ |varchar(250)|4.0.8| | ||
+ | |SearchForAppPartWithLike|0 |Wird nur beachtet, wenn "ApplicationPartID = NULL" ist !\\ "0" : Den Datensatz ausgeben, für den "ApplicationPart = ApplicationPart" gilt\\ "1" : Die Datensätze ausgeben, für die "ApplicationPart LIKE ApplicationPart" gilt\\ |bit|4.0.8| | ||
+ | |OutputIntoOneID|0 |Soll eine Ergebnismenge geliefert werden oder sollen die ermittelten "ApplicationPartID" in "tempdb.dbo.OneID" gespeichert werden ?\\ "0" : NUR eine Ergebnismenge\\ "1" : SOWOHL eine Ergebnismenge ALS AUCH Speicherung der IDs\\ "2" : NUR Speicherung der IDs\\ |tinyint|4.0.8| | ||
+ | |GetPartsForUserID|NULL |Wird nur beachtet, wenn "ApplicationPartID = NULL" ist! ID eines in "UserInfo" registrierten "dStore"-Benutzers. Falls angegeben, wird "UserID" ignoriert und es werden die Anwendungsteile des angegebenen sowie des "globalen" Benutzers berücksichtigt.\\ |smallint|6.0.1| | ||
+ | ==== Rückgabe ==== | ||
+ | |||
+ | === wenn OutputIntoOneID IN (0,1) === | ||
+ | |||
+ | ^Spaltenname ^Beschreibung ^SQL-Datentyp((siehe [[:webservice:engine_datatypes|Datentypen im Bereich "engine"]])) ^ab Version ^ | ||
+ | |ApplicationPartID|ID eines Teils der Anwendung "ApplicationID"\\ |integer|4.0.8 | | ||
+ | |ApplicationID|ID der "dStore"-Anwendung, zu der der Teil "ApplicationPartID" gehört (entspricht "ApplicationID", falls angegeben)\\ |smallint|4.0.8 | | ||
+ | |UserID|ID eines "dStore"-Benutzers, der in "UserInfo" registriert ist und zu dem "ApplicationPartID" gehört ("-1" bedeutet, daß es sich um einen globalen Anwendungs-Teil handelt)\\ |smallint|4.0.8 | | ||
+ | |ApplicationPart|Bezeichnung des Anwendung-Teils "ApplicationPartID"\\ |varchar(250)|4.0.8 | | ||
+ | |||
+ | == Sortierung der Rückgabe == | ||
+ | |||
+ | (parameterunabängige Sortierung) | ||
+ | * UserID (aufsteigend) | ||
+ | * ApplicationPart (aufsteigend) | ||
+ | |||
+ | ==== 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")) ^ | ||
+ | |-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| | ||
+ | ==== 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]\\ | | ||
+ | |6.5.3 |2013-03-18|Anpassungen an den aktuellen Quellcode-Standard, u.a. wg. UTF8-Unterstützung\\ | | ||
+ | |6.0.1 |2010-07-20|Holger Wies : Neuer Parameter GetPartsForUserID\\ | | ||
+ | |4.0.9 |2004-03-03|1. Verwendung von "_mi_ChooseParamValueSeperator" als Vorbereitung von "_mi_StartProcedure"\\ 2. Ausführen von "set transaction isolation level 1" und "set rowcount 0" zu Beginn der Prozedur\\ | | ||
+ | |4.0.8 |2004-02-20|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=mi_GetApplicationParts_Ad|mi_GetApplicationParts_Ad im Engine Playground öffnen]] | ||
+ | == cURL == | ||
+ | Unformatierte Ausgabe: | ||
+ | <code bash> | ||
+ | curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/mi_GetApplicationParts_Ad?ApplicationPartID=<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/mi_GetApplicationParts_Ad?ApplicationPartID=<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'), | ||
+ | 'mi_GetApplicationParts_Ad', | ||
+ | array( | ||
+ | 'ApplicationPartID' => <value>, | ||
+ | // 'ApplicationID' => NULL, | ||
+ | // 'UserID' => NULL, | ||
+ | // 'ApplicationPart' => NULL, | ||
+ | // 'SearchForAppPartWithLike' => 0, | ||
+ | // 'OutputIntoOneID' => 0, | ||
+ | // 'GetPartsForUserID' => NULL | ||
+ | ) | ||
+ | ); | ||
+ | |||
+ | $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="mi_GetApplicationParts_Ad"> | ||
+ | <Parameters> | ||
+ | <Parameter Name="ApplicationPartID"><!-- integer value --></Parameter> | ||
+ | <!-- <Parameter Name="ApplicationID">NULL</Parameter> --> | ||
+ | <!-- <Parameter Name="UserID">NULL</Parameter> --> | ||
+ | <!-- <Parameter Name="ApplicationPart">NULL</Parameter> --> | ||
+ | <!-- <Parameter Name="SearchForAppPartWithLike">0</Parameter> --> | ||
+ | <!-- <Parameter Name="OutputIntoOneID">0</Parameter> --> | ||
+ | <!-- <Parameter Name="GetPartsForUserID">NULL</Parameter> --> | ||
+ | </Parameters> | ||
+ | </Procedure> | ||
+ | </Batch> | ||
+ | </ListOfBatches></code> | ||