Gibt die Quellcode-Historie für Datenbankobjekte zurück.
Anmerkungen zum Parameter „ObjectName“:
1. Man kann auch „NULL“ übergeben (dann werden prinzipiell alle Objekte in Betracht gezogen), dann muß aber „FromDate“ angegeben sein !
2. Rein theoretisch kann es mehrere Objekte unterschiedlichen Typs geben und sogar mehrere Objekte mit demselben Namen vom selben Typ, die dann aber unterschiedlichen Benutzern gehören. Dies ist im „dStore Engine“-Design aber nicht vorgesehen und kann daher ignoriert werden.
| HTTP-Method | GET |
| HTTP-Auth | Optional |
| Tags | |
| Engine-Kategorie | system administration |
| Engine-Typ | Daten-Ermittlung |
| Letzte Aktualisierung | 7.0.7 (2015-01-29) |
| Name 1) | Standard-Wert | Beschreibung 2) | SQL-Datentyp3) | ab Version |
|---|---|---|---|---|
| ObjectName | Wird nur beachtet, wenn HistoryID NULL ist! Name eines Datenbankobjektes zu dem die historischen Quellcodeversionen ermittelt werden sollen. | varchar(50) | 6.0.1 | |
| FromDate | NULL | Wird nur beachtet, wenn HistoryID NULL ist! Falls angegeben, werden nur Historien beachtet, die zu oder nach diesem Zeitpunkt erstellt wurden | datetime | 6.0.1 |
| ToDate | NULL | Wird nur beachtet, wenn HistoryID NULL ist! Falls angegeben, werden nur Historien beachtet, die zu oder vor diesem Zeitpunkt erstellt wurden | datetime | 6.0.1 |
| HistoryID | NULL | ID einer „historischen Quellcode-Version“ eines Objektes. Falls angegeben, werden alle (!) anderen Parameter ignoriert und der historische Quellcode der übergebenen ID zurückgegeben. | integer | 6.0.1 |
| IncludeComment | 1 | Wird nur beachtet, wenn HistoryID NULL ist! „1“ angeben, um pro Quellcode-Version die Änderungskommentare in der Rückgabe zu erhalten | bit | 6.0.1 |
| Spaltenname | Beschreibung | SQL-Datentyp4) | ab Version |
|---|---|---|---|
| HistoryID | ID einer „historischen Quellcode-Version“ des Objekte „ObjectName“ (vom Typ „ObjectType“) Anmerkung : Da auch der aktuelle SourceCode-Datensatz zurückgegeben wird, steht in diesen Fällen hier eine „-1“. | integer | 6.0.1 |
| ObjectName | Name eines Datenbankobjektes | varchar(50) | 6.0.1 |
| ObjectType | Gibt an, um was für einen Typ es sich bei dem Objekt „ObjectName“ handelt. Mögliche Werte : * „StoredProc“ (für Prozeduren) * „Trigger“ | varchar(10) | 6.0.1 |
| CreatedAtDateAndTime | Zeitpunkt, an dem die Version „HistoryID“ des Objektes „ObjectName“ erstellt wurde | datetime | 6.0.1 |
(parameterunabängige Sortierung)
| Spaltenname | Beschreibung | SQL-Datentyp5) | ab Version |
|---|---|---|---|
| HistoryID | ID einer „historischen Quellcode-Version“ des Objekte „ObjectName“ (vom Typ „ObjectType“) Anmerkung : Da auch der aktuelle SourceCode-Datensatz zurückgegeben wird, steht in diesen Fällen hier eine „-1“. | integer | 6.0.1 |
| ObjectName | Name eines Datenbankobjektes | varchar(50) | 6.0.1 |
| ObjectType | Gibt an, um was für einen Typ es sich bei dem Objekt „ObjectName“ handelt. Mögliche Werte : * „StoredProc“ (für Prozeduren) * „Trigger“ | varchar(10) | 6.0.1 |
| CreatedAtDateAndTime | Zeitpunkt, an dem die Version „HistoryID“ des Objektes „ObjectName“ erstellt wurde | datetime | 6.0.1 |
| RowNo | Bei mehrzeiligem Kommentar relevant. Bestimmt die Reihenfolge der Kommentarzeile „Comment“ innerhalb aller Kommentarzeilen zur „HistoryID“ | tinyint | 6.0.1 |
| Comment | Kommentar(zeile) zur „HistoryID“ | varchar(255) | 6.0.1 |
(parameterunabängige Sortierung)
| Spaltenname | Beschreibung | SQL-Datentyp6) | ab Version |
|---|---|---|---|
| CodeLineNumber | Eindeutige Nummer der Zeile im Source-Code der durch „HistoryID“ angegebenen „historischen Quellcode-Version“ | smallint | 6.0.1 |
| CodeLine | Der komplette Code, der in Zeile „CodeLineNumber“ der durch „HistoryID“ angegebenen „historischen Quellcode-Version“ | varchar(250) | 6.0.1 |
(parameterunabängige Sortierung)
Die Prozedur hat keine Output-Parameter.
| Code | Beschreibung | Quelle 7) |
|---|---|---|
| -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] |
| 6.5.3 | 2013-03-18 | Interne Anpassungen wg. UTF8-Unterstützung |
| 6.0.4 | 2011-10-21 | Anpassungen, weil „ObjectsContainingTSQL“ eine neue Spalte „DateAndTimeValsFromOtherSource“ bekommen hat (daran erkennt man, ob der Datensatz aus einer „fremden Quelle“ kommt und damit hier zu IGNORIEREN ist) |
| 6.0.2 | 2011-06-08 | „grant execute“-Statement ergänzt |
| 6.0.1 | 2010-07-20 | 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_GetSourceCodeHistory_Ad?ObjectName=<value>'
Mit xmllint 8) formatierte Ausgabe:
curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/mi_GetSourceCodeHistory_Ad?ObjectName=<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_GetSourceCodeHistory_Ad', array( 'ObjectName' => '<value>', // 'FromDate' => NULL, // 'ToDate' => NULL, // 'HistoryID' => NULL, // 'IncludeComment' => 1 ) ); $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_GetSourceCodeHistory_Ad"> <Parameters> <Parameter Name="ObjectName"><!-- varchar value --></Parameter> <!-- <Parameter Name="FromDate">NULL</Parameter> --> <!-- <Parameter Name="ToDate">NULL</Parameter> --> <!-- <Parameter Name="HistoryID">NULL</Parameter> --> <!-- <Parameter Name="IncludeComment">1</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>