Prozedur zum Anlegen, Ändern und Löschen von „Commands“ - das sind Kommandos (bzw. „Programme“), mit denen eine „Action“ (s.a. ac_GetActions_Ad) abgearbeitet werden kann.
Hinweis :
Bei Neu-Anlage werden automatisch einige „CommandSettings“-Einträge (s.a. ac_ModifyCommandSettings_Ad) angelegt :
KeyVariable                               | Value
—————————————————————————————————————————-
ForumIDForActionLog                       | Der in „Settings“ zum Schlüssel „DefaultForumIDForActionLogs“ konfigurierte Wert
CharacIDForActionIDPropertyForActionLog   | „2“
CharacIDForCommandIDPropertyForActionLog  | „3“
PersonTypeIDForActionLog                  | Der in „Settings“ zum Schlüssel „PersonTypeID_dStoreUser“ konfigurierte Wert
PersonIdentValsForActionLog               | Die Identifizierungsdaten der Person des durch in „Settings“ zum Schlüssel
                                          | „PersonTypeID_dStoreUser“ angegeben Typs, die als Eigenschaft zum Merkmal
                                          | „UserName“ den Wert „actionuser“ besitzt
SeparatorInIdentVals                      | Trennzeichen für die in „PersonIdentValsForActionLog“ angegebenen
                                          | Identifizierungsdaten (des „actionuser“)
UniqueIDForActionLog                      | „UniqueID“ des Besuchers mit der „VisitorID = -1“
AuthorForActionLog                        | „actionuser“
EMailOfAuthorForActionLog                 | „-„
MaxNumberOfLogPartsPerAction              | „10“
| HTTP-Method | POST | 
| HTTP-Auth | Optional | 
| Tags | |
| Engine-Kategorie | actions | 
| Engine-Typ | Daten-Änderung | 
| Letzte Aktualisierung | 7.0.7 (2015-01-29) | 
| Name 1) | Standard-Wert | Beschreibung 2) | SQL-Datentyp3) | ab Version | 
|---|---|---|---|---|
| CommandID | ID eines Kommandos (bzw. Programms) mit dem „Actions“ abgearbeitet werden können. Die Angabe ist Pflicht ! Existiert die ID nicht (muß “> 1“ sein), wird sie angelegt, ansonsten wird der vorhandene Datensatz je nach „DeleteCommand“ geändert oder gelöscht. | smallint | 5.5.0 | |
| Command | Aufruf (Kommando) des Programms, mit dem eine Action„ abgearbeitet werden kann (z.B. “/usr/bin/mail„) | varchar(255) | 5.5.0 | |
| CommandDescription | Beschreibung des Kommandos (z.B. „Mailprogramm“) | varchar(255) | 5.5.0 | |
| DeleteCommand | 0 | Wird nur beachtet, wenn das durch „CommandID“ angegebene Kommando bereits existiert. Entscheidet darüber, ob das Kommando gelöscht („1“) oder geändert („0“) werden soll. | bit | 5.5.0 | 
Die Prozedur hat keine Rückgaben.
Die Prozedur hat keine Output-Parameter.
| Code | Beschreibung | Quelle 4) | 
|---|---|---|
| -621 | Fehlender oder falscher Eintrag in PersonTypeSettings | nur indirekt | 
| -590 | Das Kommando kann nicht gelöscht werden, da es bereits verwendet wurde | nur direkt | 
| -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 | 
| -550 | Fehlender oder falscher Eintrag in Settings | 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 zwecks UTF8-Unterstützung | 
| 5.5.0 | 2008-01-07 | 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 POST 'http://<partner>-<project>.dstore.de/default/engine/ac_ModifyCommands_Ad?CommandID=<value>&Command=<value>&CommandDescription=<value>'
Mit xmllint 5) formatierte Ausgabe:
curl -X POST 'http://<partner>-<project>.dstore.de/default/engine/ac_ModifyCommands_Ad?CommandID=<value>&Command=<value>&CommandDescription=<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'), 'ac_ModifyCommands_Ad', array( 'CommandID' => <value>, 'Command' => '<value>', 'CommandDescription' => '<value>', // 'DeleteCommand' => 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="ac_ModifyCommands_Ad"> <Parameters> <Parameter Name="CommandID"><!-- smallint value --></Parameter> <Parameter Name="Command"><!-- varchar value --></Parameter> <Parameter Name="CommandDescription"><!-- varchar value --></Parameter> <!-- <Parameter Name="DeleteCommand">0</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>