Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
engine:procedures:do_getprocedurenames_ad [11.01.2016 ] |
engine:procedures:do_getprocedurenames_ad [11.01.2016 ] (aktuell) |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ===== do_GetProcedureNames_Ad ===== | ||
+ | |||
+ | Gibt eine Liste der dokumentierten Prozeduren zurück. Optional kann über die Prozedur-Kategorie, den Prozedur-Typ oder die aktuelle dStore-Version eingeschränkt werden.\\ | ||
+ | |HTTP-Method|GET | | ||
+ | |HTTP-Auth|Optional | | ||
+ | |Tags|{{tag>[do Get Procedure Names Ad]}}| | ||
+ | |Engine-Kategorie|documentation | | ||
+ | |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 ^ | ||
+ | |ProcedureCategoryID|NULL |Wird nur beachtet wenn "GetProcsWithMissingDocu = 0" UND "ProcedureName is NULL" gilt ! ID einer Kategorie, nach der eingeschränkt werden soll (siehe [[dstoreproc>do_GetProcedureCategories_Ad]]).\\ |tinyint|3.5.0| | ||
+ | |ProcedureTypeID|NULL |Wird nur beachtet wenn "GetProcsWithMissingDocu = 0" UND "ProcedureName is NULL" gilt ! ID eines Prozedur-Typs, nach dem eingeschränkt werden soll (siehe [[dstoreproc>do_GetProcedureTypes_Ad]]).\\ |tinyint|3.5.0| | ||
+ | |ActualVersion|NULL |Wird nur beachtet wenn "GetProcsWithMissingDocu = 0" UND "ProcedureName is NULL" gilt ! Nur Prozeduren berücksichtigen, die in der angegebenen Version zuletzt geändert wurden.\\ |varchar(20)|3.5.0| | ||
+ | |ProcedureName|NULL |Wird nur beachtet wenn "GetProcsWithMissingDocu = 0" gilt ! Name einer Prozedur - man erhält dann genau einen Datensatz (sofern die Prozedur auch existiert), egal ob eine Doku vorhanden ist oder nicht.\\ |varchar(50)|7.0.0| | ||
+ | |GetProcsWithMissingDocu|0 |"1" angeben, um alle Prozeduren zu erhalten, zu denen eine Doku fehlt (in Frage kommen nur solche, die NICHT mit einem "_" beginnen)\\ |bit|7.0.0| | ||
+ | ==== Rückgabe ==== | ||
+ | |||
+ | === (parameterunabhängig) === | ||
+ | |||
+ | ^Spaltenname ^Beschreibung ^SQL-Datentyp((siehe [[:webservice:engine_datatypes|Datentypen im Bereich "engine"]])) ^ab Version ^ | ||
+ | |//SortNo((Spalte wird nicht zurückgegeben und ist hier nur aus Dokumentationsgründen aufgeführt.))//|Wird nicht ausgegeben - war nur bis Version 6.5.4 relevant (wurde zur Sortierung verwendet)\\ |smallint|4.0.0 | | ||
+ | |ProcedureName|Name einer "dStore"-Prozedur, zu der es eine Beschreibung gibt (siehe [[dstoreproc>do_GetProcedureDocu_Ad]])\\ |varchar(50)|3.5.0 | | ||
+ | |ProcedureCategoryID|ID einer Kategorie von Prozeduren (siehe [[dstoreproc>do_GetProcedureCategories_Ad]]), der die Prozedur "ProcedureName" zugeordnet ist\\ |tinyint|3.5.0 | | ||
+ | |ProcedureCategory|Bezeichnung der Kategorie "ProcedureCategoryID"\\ |varchar(100)|3.5.0 | | ||
+ | |ProcedureTypeID|ID eines Prozedur-Typs (siehe [[dstoreproc>do_GetProcedureTypes_Ad]]), von dem die Prozedur "ProcedureName" ist\\ |tinyint|3.5.0 | | ||
+ | |ProcedureType|Bezeichnung des Prozedur-Typs "ProcedureTypeID"\\ |varchar(20)|3.5.0 | | ||
+ | |FirstdStoreVersion|In welcher "dStore"-Version wurde die Prozedur "ProcedureName" eingeführt\\ |varchar(20)|3.5.0 | | ||
+ | |ActualdStoreVersion|In welcher "dStore"-Version wurde die Prozedur "ProcedureName" zuletzt geändert\\ |varchar(20)|3.5.0 | | ||
+ | |ProcedureFunction|Eine kurze Charakterisierung der Prozedur, also welchem Zweck sie dient\\ |varchar(255)|3.5.0 | | ||
+ | |Author|Autor der Prozedur. Im Fall "DocuExists = 0" wird diese Info aus dem Quellcode herausgeparst und kann daher u.U. fehlen.\\ |varchar(250)|7.0.0 | | ||
+ | |FirstCreatedAt_char|Wann die Prozedur zum ersten Mal erstellt wurde. Hinweise :\\ 1. Nur eine Tagesangabe als "string" im Formt mm/dd/yyyy\\ 2. Im Fall "DocuExists = 0"wird diese Info aus dem Quellcode herausgeparst und kann daher u.U. fehlen\\ |varchar(50)|7.0.0 | | ||
+ | |LastCreatedAt_char|Wann die Prozedur zuletzt übersetzt wurde. Hinweise :\\ 1. Ein "string" im Formt mm/dd/yyyy hh:mi:ss:ms\\ 2. Im Fall "DocuExists = 0" kommt diese Info aus einer entsprechenden Systemtabelle (Erstellungsdatum des Objekts)\\ |varchar(50)|7.0.0 | | ||
+ | |LastEditedAt_char|Datum wann die Prozedur vom Autor als "zuletzt editiert" gekennzeichnet wurde Hinweise : 1. Nur eine Tagesangabe als "string" im Formt mm/dd/yyyy 2. Im Fall "DocuExists = 0"wird diese Info aus dem Quellcode herausgeparst und kann daher u.U. fehlen\\ |varchar(50)|7.0.0 | | ||
+ | |DocuExists|Gibt an, ob eine (Haupt-)Doku existiert ("1") oder nicht ("0"). Hier steht immer "1" beim Aufruf mit Standardwerten und immer "0" wenn "GetProcsWithMissingDocu = 1" ist. Bei gegebenem "ProcedureName" hängt der Wert davon ab, ob eine Doku vorhanden ist.\\ |bit|7.0.0 | | ||
+ | |RegisteredForDocu|Gibt an, ob ein Datensatz in "dstore.dbo.ProcedureDevelopement" (hier sind alle grundsätzlich dokumentierbaren Prozeduren registriert) existiert ("1") oder nicht ("0"). Insbesondere ist also immer "DocuExists = 0" falls hier "0" zurückgegeben wird.\\ |bit|7.0.0 | | ||
+ | |AliasProcedureName|Optionaler Alias-Name für "ProcedureName", der in aller erster Linie den Sinn hat, den "vollständigen" Namen angeben zu können, weil "ProcedureName" häufig Abkürzungen enthält (Beispiel : s. Wert für [[dstoreproc>pm_GetPChAccRestrForGroups_Ad]])\\ |varchar(100)|7.0.4 | | ||
+ | |||
+ | == Sortierung der Rückgabe == | ||
+ | |||
+ | (parameterunabängige Sortierung) | ||
+ | * ProcedureName (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")) ^ | ||
+ | |-577|Der Source-Code der SQL-Funktion ist nicht verfügbar|nur indirekt| | ||
+ | |-574|Der Source-Code des Triggers ist nicht verfügbar|nur indirekt| | ||
+ | |-573|Der Source-Code der Prozedur ist nicht verfügbar|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| | ||
+ | |-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|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.4 |2014-03-19|Neue Rückgabespalte "AliasProcedureName"\\ | | ||
+ | |7.0.0 |2013-06-04|1. Neu : "ProcedureName", "GetProcsWithMissingDocu"\\ 2. Neu (Spalten) : "Author", "FirstCreatedAt_char", "LastCreatedAt_char", "LastEditedAt_char", "DocuExists", "RegisteredForDocu"\\ 3. "ProcedureName" jetzt 1. Spalte\\ 4. Änderung d. Sortierung\\ | | ||
+ | |6.5.3 |2013-03-18|"StartProcedure"-Call wg. UTF-8-Unterstützung angepasst\\ | | ||
+ | |4.0.10 |2004-03-15|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. Fehlende "optimizer"- und Index-Angabe in einem Fall\\ | | ||
+ | |4.0.0 |2003-04-03|Neue Sortierung nach der "SortNo" der "ActualdStoreVersion" und nicht nach "ActualdStoreVersion" selbst\\ | | ||
+ | |3.5.16 |2002-04-25|\\ | | ||
+ | |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=do_GetProcedureNames_Ad|do_GetProcedureNames_Ad im Engine Playground öffnen]] | ||
+ | == cURL == | ||
+ | Unformatierte Ausgabe: | ||
+ | <code bash> | ||
+ | curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/do_GetProcedureNames_Ad'</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/do_GetProcedureNames_Ad' | 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'), | ||
+ | 'do_GetProcedureNames_Ad', | ||
+ | array( | ||
+ | // 'ProcedureCategoryID' => NULL, | ||
+ | // 'ProcedureTypeID' => NULL, | ||
+ | // 'ActualVersion' => NULL, | ||
+ | // 'ProcedureName' => NULL, | ||
+ | // 'GetProcsWithMissingDocu' => 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="do_GetProcedureNames_Ad"> | ||
+ | <Parameters> | ||
+ | <!-- <Parameter Name="ProcedureCategoryID">NULL</Parameter> --> | ||
+ | <!-- <Parameter Name="ProcedureTypeID">NULL</Parameter> --> | ||
+ | <!-- <Parameter Name="ActualVersion">NULL</Parameter> --> | ||
+ | <!-- <Parameter Name="ProcedureName">NULL</Parameter> --> | ||
+ | <!-- <Parameter Name="GetProcsWithMissingDocu">0</Parameter> --> | ||
+ | </Parameters> | ||
+ | </Procedure> | ||
+ | </Batch> | ||
+ | </ListOfBatches></code> | ||