Gibt die Grundeinstellungen von sogenannten „TRI-Trigger“n zurück.
Die genaue Definition (sofern „ExecuteProcedureName“ NICHT konfiguriert ist, s. gleichnamige Rückgabespalte) kann mit Hilfe der Prozeduren mi_GetTRITriggerWorkflow_Ad, mi_GetTRITriggerConditions_Ad und mi_GetTRITriggerToDos_Ad abgerufen werden.
Anmerkung zur Rückgabespalte „ExecuteProcedureName“ :
Hierdurch wird im Prinzip das alte Verhalten über die „Action“-Prozeduren gewährleistet. Vor dem „TRI-Trigger“-feature gab es über „_ac_ChangeOrderState“ bzw. „_ac_NewOrder“ die Möglichkeit, auf Status-Wechsel bzw. Auftragsanlage zu reagieren. Per default ist daher ein Trigger für alle Status-Wechsel konfiguriert, der zur Ausführung von „_ac_ChangeOrderState“ führt (außer bei „OrderStateID = 0“, hier kann aber der Aufruf von „_ac_NewOrder“ konfiguriert werden, wofür ebenfalls schon ein TRI-Trigger definiert aber nicht zugewiesen ist). Ab Version 7.0.3 kann man auch eine andere Prozedur aufrufen lassen (s. Parameter „ExecuteProcedureName“ von mi_ModifyTRITrigger_Ad), aber die Übergabe der Daten BLEIBT gleich, d.h. : Via „dstoreifin.dbo._ac_ChangeOrderState“ werden die vom Status-Wechsel betroffenen „OrderContentID“s übergeben und außerdem wird die (konfigurierte) Prozedur mit den Parametern „ToOrderStateID“ (in welchen Status gewechselt wurde) und „NestingLevelForInputData“ (zu welchem „Nesting Level“ die Daten übergeben wurden) aufgerufen.
| 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 |
|---|---|---|---|---|
| TriggerID | ID eines „TRI-Trigger“. Falls angegeben, wird nur der Datensatz zu diesem Trigger ermittelt. | smallint | 7.0.3 | |
| TriggerTypeID | NULL | Wird nur beachtet wenn „TriggerID = NULL“ ist ! ID eines Trigger-Typs (mögliche Werte s. mi_GetTRITriggerTypes_Ad). Wenn angegeben, werden alle Trigger dieses Typs ermittelt. | tinyint | 7.0.3 |
| UnusedTriggerOnly | 0 | Wird nur beachtet wenn „TriggerID = NULL“ ist ! Falls „1“ angegeben wird, ermittelt die Prozedur ausschließlich Trigger, die noch nicht verwendet werden. | bit | 7.0.3 |
| Spaltenname | Beschreibung | SQL-Datentyp4) | ab Version |
|---|---|---|---|
| TriggerName | Name des Triggers „TriggerID“ | varchar(50) | 7.0.3 |
| TriggerID | ID eines „TRI-Trigger“ | smallint | 7.0.3 |
| TriggerTypeID | ID des Typs von Triggern dem „TriggerID“ angehört (mögliche Werte : s. mi_GetTRITriggerTypes_Ad), sprich letztlich die Information, bei welcher Art von Datenänderung der Trigger ausgelöst werden kann | tinyint | 7.0.3 |
| TriggerType | Bezeichnung der „TriggerTypeID“ | varchar(50) | 7.0.3 |
| TriggerDescription | Kurze Beschreibung des Triggers (wozu er dient, was er macht etc.) | varchar(255) | 7.0.3 |
| ExecuteProcedureName | Name einer Prozedur, die (wenn der Trigger ausgelöst wird) aufgerufen werden soll. Nur falls nicht konfiguriert (also „NULL“), steht die komplexere Definition eines Triggers (s. mi_ModifyTRITriggerWorkflow_Ad) zur Verfügung. | varchar(50) | 7.0.3 |
| TriggerStatus | Status-Bitmap, also Summe folgender Werte : - „1“ : Trigger-Definition ist fehlerhaft - „2“ : Trigger-Definition ist ok - „4“ : Trigger ist zugewiesen (also aktiv) Sonderfall : „0“ bedeutet, daß der Trigger und seine Definition noch NICHT geprüft wurde. | tinyint | 7.0.3 |
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 |
| -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.3 | 2013-12-13 | 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_GetTRITrigger_Ad?TriggerID=<value>'
Mit xmllint 6) formatierte Ausgabe:
curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/mi_GetTRITrigger_Ad?TriggerID=<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_GetTRITrigger_Ad', array( 'TriggerID' => <value>, // 'TriggerTypeID' => NULL, // 'UnusedTriggerOnly' => 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_GetTRITrigger_Ad"> <Parameters> <Parameter Name="TriggerID"><!-- smallint value --></Parameter> <!-- <Parameter Name="TriggerTypeID">NULL</Parameter> --> <!-- <Parameter Name="UnusedTriggerOnly">0</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>