Prozedur Zur Verwaltung der „Settings“-Einträge für ein bestimmtes Forum.
Anmerkung zum Parameter „KeyVariable“ :
Bei den speziellen Schlüsseln, die mit „CharacteristicIDsForAuthor_“ beginnen, darf in „Value“ KEINE ID eines Personen-Merkmals angegeben werden, zu dem lesende Zugriffsbeschränkungen existieren (sonst gibt es einen Fehler) !
HTTP-Method | POST |
HTTP-Auth | Optional |
Tags | |
Engine-Kategorie | configurations |
Engine-Typ | Daten-Änderung |
Letzte Aktualisierung | 7.0.7 (2015-01-29) |
Name 1) | Standard-Wert | Beschreibung 2) | SQL-Datentyp3) | ab Version |
---|---|---|---|---|
ForumID | ID eines Forums | smallint | 3.5.0 | |
PersonID | 0 | ID einer Person, für die der Eintrag zum Schlüssel „KeyVariable“ verwaltet werden soll. „0“ bedeutet, daß der Eintrag für alle Teilnehmer des Forums gilt. Ein Eintrag zu einer „PersonID <> 0“ „überschreibt“ den Eintrag zur „PersonID = 0“. | integer | 3.5.0 |
KeyVariable | Ein Schlüssel, der zu einem Forum hinterlegt werden kann (siehe „ do_GetSettingsDescriptions_Ad SettingsTable = 'ForumSettings' “) | varchar(50) | 3.5.0 | |
Value | Der Wert, der zum Schlüssel „KeyVariable“ hinterlegt werden soll. „NULL“ angeben, um einen vorhandenen Eintrag zu löschen. | varchar(100) | 3.5.0 |
Die Prozedur hat keine Rückgaben.
Die Prozedur hat keine Output-Parameter.
Code | Beschreibung | Quelle 4) |
---|---|---|
-825 | Der ForumSettings-Eintrag darf nicht gelöscht werden | nur direkt |
-697 | Aktion kann nicht durchgeführt werden, da für ein Merkmal eine Zugriffsbeschränkung besteht | 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 |
-540 | Falsches Format | nur direkt |
-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 | Anpassungen an aktuellen Code-Standard, u.a. wg. UTF8-Unterstützung |
6.5.2 | 2013-02-26 | Holger Wies : Bei Anlage bzw. Änderung prüfen, ob es sich um eine „Setting“ mit Personen-Merkmal-IDs handelt und es beim neuen Wert ggf. um die ID eines Merkmals mit Zugriffsbeschränkung handelt. Wenn ja, wird nun ein Fehler geworfen. |
5.5.0 | 2008-01-07 | 1. Fehler : Bei Neu-Anlage/Änderung eines Eintrags wurde das Format des Wertes nicht überprüft 2. Anderer Return-Code für den Fall, daß ein Eintrag nicht gelöscht werden kann 3. Ausgabe via „print“ im Fehler-Fall „-500“ |
4.0.10 | 2004-03-15 | 1. Aufruf der Prozeduren „_mi_StartProcedure“ und „_mi_FinishProcedure“ 2. Ausführen von „set transaction isolation level 1“ und „set rowcount 0“ zu Beginn der Prozedur 3. Konsequente Fehlerbehandlung |
4.0.3 | 2003-07-10 | Fehlende Index-Angabe |
3.5.20 | 2002-07-22 | |
3.5.11 | 2001-09-06 | |
3.5.0 | 2000-11-23 | 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/fo_ModifyForumSettings_Ad?ForumID=<value>&KeyVariable=<value>&Value=<value>'
Mit xmllint 5) formatierte Ausgabe:
curl -X POST 'http://<partner>-<project>.dstore.de/default/engine/fo_ModifyForumSettings_Ad?ForumID=<value>&KeyVariable=<value>&Value=<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'), 'fo_ModifyForumSettings_Ad', array( 'ForumID' => <value>, 'KeyVariable' => '<value>', 'Value' => '<value>', // 'PersonID' => 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="fo_ModifyForumSettings_Ad"> <Parameters> <Parameter Name="ForumID"><!-- smallint value --></Parameter> <Parameter Name="KeyVariable"><!-- varchar value --></Parameter> <Parameter Name="Value"><!-- varchar value --></Parameter> <!-- <Parameter Name="PersonID">0</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>