Benutzer-Werkzeuge

Webseiten-Werkzeuge


engine:procedures:mi_modifysettings_ad

mi_ModifySettings_Ad

Prozedur, die die Einträge in „Settings“ verwaltet.

Hinweise :

1.) Globale Einstellungen (also für „UserID = -1“) dürfen nur vom sogenannten „Super“-Admin vorgenommen werden - das ist der Benutzer, dessen Name mit dem Datenbanknamen übereinstimmt. Ausnahme ist der Eintrag „AllowRestoringOfDefaultValues“, allerdings darf dieser Eintrag von anderen Benutzern nur gelöscht oder auf „0“ gesetzt werden (auf „1“ setzen darf diesen Wert wiederum nur der „Super-Admin“)
2.) Werte zu bestimmten Schlüsseln dürfen nicht geändert werden, derzeit sind das :

  • „dStore-Version“
  • „DefaultCurrencyID“
  • „Registrierungs-Schlüssel“
  • „SkipUsageOfTablesCheckInUpdate“
HTTP-MethodPOST
HTTP-AuthOptional
Tags
Engine-Kategorieconfigurations
Engine-TypDaten-Änderung
Letzte Aktualisierung7.0.7 (2015-01-29)

Parameter

Name 1) Standard-Wert Beschreibung 2) SQL-Datentyp3) ab Version
UserID-1 ID eines „dStore“-Benutzers, der in „UserInfo“ registriert ist (siehe mi_GetUserInfo_Ad).
Anmerkung: Es gibt einen speziellen Benutzer mit der ID „-1“, durch den GLOBALE Einstellungen gekennzeichnet werden.
smallint3.5.0
KeyVariable Ein Schlüssel, zu dem ein Wert gesetzt bzw. der gelöscht werden soll
varchar(50)3.5.0
Value Der Wert, der zum Schlüssel „KeyVariable“ (für den Benutzer „UserID“) gesetzt werden soll. „NULL“ angeben, um den Schlüssel „KeyVariable“ zu löschen.
varchar(100)3.5.0

Rückgabe

Die Prozedur hat keine Rückgaben.

Output-Parameter

Die Prozedur hat keine Output-Parameter.

Mögliche Return-Codes

Code Beschreibung Quelle 4)
-570Nur der Super-Admin darf diese Prozedur (mit diesen Parametern) ausführennur direkt
-569Der Benutzer hat kein Ausführungsrecht für die Prozedurnur indirekt
-567Die Prozedur darf z. Zt. nicht ausgeführt werdennur indirekt
-566Die Prozedur darf mit den übergebenen Parametern nicht ausgeführt werdennur indirekt
-553Der Settings-Eintrag darf nicht gelöscht werdennur direkt
-552Der Settings-Eintrag darf nicht geändert werdennur direkt
-540Falsches Formatnur direkt
-535Das Datum liegt nicht in der Vergangenheitnur indirekt
-530Der Wert ist nicht konvertierbarnur indirekt
-510Der Benutzer ist nicht registriertnur indirekt
-504Es ist ein Problem aufgetreten, das nicht gelöst werden kann, Prozedur wird daher abgebrochennur indirekt
-502Die Parameter-Werte der Prozedur können nicht verarbeitet werden (kein passendes Trennzeichen)nur indirekt
-500Falsche Parameterdirekt und indirekt

XML-Schema

Die Rückgabe erfolgt als XML-Dokument welches gegen das Schema Response/EngineProcedure_v1_0.xsd validiert.

Historie

7.0.7 2015-01-291. Fehlerhafte „print-Ausgabe in einem “-500„-Fall korrigiert
2. Interne Änderung : Datentyp-Erweiterung des „ReferenceKey“ [für „_mi_StartProcedure“-Aufruf]
6.5.3 2013-03-18Interne Anpassungen wg. UTF8-Unterstützung
6.5.1 2012-11-02Weitere Ausnahme für einen „KeyVariable“-Wert, der nicht konfiguriert werden darf [SkipUsageOfTablesCheckInUpdate]
6.0.8 2012-06-291. Sonderfall „AllowRestoringOfDefaultValues“ berücksichtigt ⇒ Doku-Anpassung
2. Anpassungen an den aktuellen Quellcode-Standard
5.0.3 2005-06-07Zwei Schlüssel, die bislang nicht editiert werden durften, gibt es nicht mehr
4.0.14 2004-06-031. „_mi_StartProcedure“, „_mi_FinishProcedure“ und „_mi_ChooseParamValueSeperator“
2. „set transaction isolation level 1“, „set rowcount 0“
3. Konsequente Fehlerbehandlung
4. Lösch-Versuch eines Wertes zu einem nicht ex. Schlüssel gibt ab jetzt “-500„
4.0.2 2003-06-11Hinzunahme der „KeyVariable“ „MaintainIdentifyingValue_Type…“ und „MaintainPersonPropertiesForCharacIDs_Type…“, die nicht geändert werden dürfen !
4.0.0 2003-04-03Änderung des Klartextes für den Return-Code “-570„
3.5.20 2002-07-22
3.5.14 2002-01-23
3.5.0 2000-11-23Erstmalig 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:

cURL

Unformatierte Ausgabe:

curl -X POST  'http://<partner>-<project>.dstore.de/default/engine/mi_ModifySettings_Ad?KeyVariable=<value>&Value=<value>'

Mit xmllint 5) formatierte Ausgabe:

curl -X POST  'http://<partner>-<project>.dstore.de/default/engine/mi_ModifySettings_Ad?KeyVariable=<value>&Value=<value>' | xmllint --format -
dStore_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'),
	'mi_ModifySettings_Ad',
		array(
			'KeyVariable' => '<value>',
			'Value' => '<value>',
			// 'UserID' => -1
		)
);
 
$service->execute($request);
 
			$xml_result = $request->getResponse()->getBody()->toSimpleXmlDocument();
			$ResultSet = $xml_result->getRowsAsArray();
engine/execute

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_ModifySettings_Ad">
			<Parameters>
				<Parameter Name="KeyVariable"><!-- varchar value --></Parameter>
				<Parameter Name="Value"><!-- varchar value --></Parameter>
				<!-- <Parameter Name="UserID">-1</Parameter> -->
			</Parameters>
		</Procedure>
	</Batch>
</ListOfBatches>
1)
Pflichtparameter sind unterstrichen
4)
direkt meint „von der Prozedur selber“ und indirekt meint „von intern aufgerufenen Unterprozeduren“
5)
I.d.R. auf Unix-artigen Systemen bereits installiert, Bestandteil der libxml2, siehe http://www.xmlsoft.org
engine/procedures/mi_modifysettings_ad.txt · Zuletzt geändert: 11.01.2016 (Externe Bearbeitung)