Benutzer-Werkzeuge

Webseiten-Werkzeuge


engine:procedures:im_deletetreenodes_ad

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

engine:procedures:im_deletetreenodes_ad [11.01.2016 ]
engine:procedures:im_deletetreenodes_ad [11.01.2016 ] (aktuell)
Zeile 1: Zeile 1:
 +===== im_DeleteTreeNodes_Ad =====
 +
 +Löscht eine Liste von Elementen des Artikelbaums. Dabei wird berücksichtigt,​ welcher Benutzer die Elemente löschen möchte, d.h. falls dieser nicht berechtigt ist, einen oder mehrere der Elemente und deren Nachfolger einzusehen, wird der Vorgang abgebrochen (es wird dann überhaupt nichts gelöscht).\\ ​
 +
 +Optional können die "​TreeNodeID"​s auch via "​tempdb.dbo.OneID"​ übergeben werden; dann ist "​TreeNodeList"​ auf "​NULL"​ oder "​%%''​%%"​ zu setzen.\\ ​
 +
 +Diese Prozedur kümmert sich darum, daß auch alle Nachfolger der angegebenen Elemente gelöscht werden; sollen auch sogenannte "​Clone"​ (das Anlegen von "​Clone"​s wird allerdings derzeit noch nicht unterstützt !) mitgelöscht werden, ist "​CascadeClones"​ auf "​1"​ zu setzen.\\ ​
 +
 +Anmerkung:​\\ Die "​TreeNodeID"​s werden nicht wirklich physikalisch gelöscht; es wird nur der Status "​Deleted"​ auf "​1"​ gesetzt und entsprechende Änderungen in "​HistoryTreeView"​ gemacht. Dieses Vorgehen ist notwendig, um Auftrags- und Statistikdaten nicht zu verlieren.\\ ​
 +|HTTP-Method|POST |
 +|HTTP-Auth|Optional |
 +|Tags|{{tag>​[im Delete Tree Nodes Ad]}}|
 +|Engine-Kategorie|item management |
 +|Engine-Typ|Daten-Änderung |
 +|Letzte Aktualisierung|7.0.7 (2015-01-29)|
 +
 +==== Parameter ====
 +
 +^Name ((Pflichtparameter sind unterstrichen)) ^Standard-Wert ^Beschreibung ((siehe [[webservice:​engine_parameterconventions|Parameter-Konventionen engine/<​Prozedur-Name>​]])) ^SQL-Datentyp((siehe [[:​webservice:​engine_datatypes|Datentypen im Bereich "​engine"​]])) ^ab Version ^
 +|__TreeNodeList__| |Liste von IDs von Elementen im Artikelbaum,​ die gelöscht werden sollen. Wenn "​NULL"​ oder "​%%''​%%"​ übergeben wird, erwartet die Prozedur die IDs in "​tempdb.dbo.OneID"​.\\ |varchar(255)|3.5.0|
 +|CascadeClones|0 |"​0"​ : Evtl. vorhandene "​Clone"​ werden NICHT mitgelöscht\\ "​1"​ : Es werden auch alle vorhandenen "​Clone"​ gelöscht\\ |bit|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 ((direkt meint "von der Prozedur selber"​ und indirekt meint "von intern aufgerufenen Unterprozeduren"​)) ^
 +|-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|nur indirekt|
 +|-170|Das Element darf nicht gelöscht werden|nur direkt|
 +|-121|Das (die) Element(e) enthält ein oder mehrere Elemente, für die der Benutzer keine Berechtigung hat|nur direkt|
 +|-120|Der Benutzer hat keine Berechtigung für das (die) Element(e)|nur indirekt|
 +==== XML-Schema ====
 +
 +Die Rückgabe erfolgt als XML-Dokument welches gegen das Schema [[http://​resources.dstore.de/​xsd/​webservice_SmartGate/​Response/​EngineProcedure_v1_0.xsd|Response/​EngineProcedure_v1_0.xsd]] validiert.
 +==== Historie ====
 +
 +|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.0.5 |2011-12-13|Verlagerung des eigentlichen "​Löschens"​ ["​Deleted"​-Flag setzen und Zeitraum in "​HistoryTreeView"​ abschließen] in\\ die neue Prozedur "​_im_DeleteTNodes",​ die sich auch um die Pflege der neuen "​MetaInformationTypes"​\\ "​LastDeletedFlagChanged..."​ kümmert\\ ​ |
 +|6.0.4 |2011-10-21|1. Pflege von "​TreeViewDistributionStatistics"​ ist entfallen\\ 2. Pflege von "​NodeMetaInformation"​ ist hinzugekommen\\ ​ |
 +|6.0.2 |2011-06-08|1. Anpassungen an den aktuellen Quellcode-Standard\\ 2. "set forceplan"​ an einer Stelle eingefügt\\ ​ |
 +|5.1.10 |2007-03-12|Interner Fehler in einem Fall beim Aufruf von "​_if%%__%%im_GetPropertiesOfOneNode"​ ["​-500"​] aufgrund fehlender Initialisierung einer internen Variablen\\ ​ |
 +|5.1.1 |2006-04-05|Die intern verwendete Prozedur "​_im_GetPropertiesOfOneNode"​ hat sich geändert\\ ​ |
 +|5.1.0 |2006-02-08|Die Tabelle "​NodeProperties"​ hat sich geändert [u.a. neue Spalte "​NodeCharacteristicID"​] => entsprechende Änderungen\\ ​ |
 +|4.0.11 |2004-03-31|1. "​_mi_StartProcedure",​ "​_mi_FinishProcedure"​ u. "​_mi_ChooseParamValueSeperator"​\\ 2. "set transaction isolation level 1", "set rowcount 0" zu Beginn\\ 3. Konsequente Fehlerbehandlung\\ 4. Performance-Verbesserung,​ Fehlende "​optimizer"​-Angaben\\ ​ |
 +|3.5.20 |2002-07-22|\\ ​ |
 +|3.5.19 |2002-06-17|\\ ​ |
 +|3.5.0 |2000-11-23|Erstmalig 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:
 +  * [[http://​playground.dstore.de/​index.php?​proc=im_DeleteTreeNodes_Ad|im_DeleteTreeNodes_Ad im Engine Playground öffnen]]
 +== cURL ==
 +Unformatierte Ausgabe:
 +<code bash>
 +curl -X POST  '​http://<​partner>​-<​project>​.dstore.de/​default/​engine/​im_DeleteTreeNodes_Ad?​TreeNodeList=<​value>'</​code>​Mit xmllint ((I.d.R. auf Unix-artigen Systemen bereits installiert,​ Bestandteil der libxml2, siehe http://​www.xmlsoft.org)) formatierte Ausgabe:
 +<code bash>
 +curl -X POST  '​http://<​partner>​-<​project>​.dstore.de/​default/​engine/​im_DeleteTreeNodes_Ad?​TreeNodeList=<​value>'​ | xmllint --format -</​code>​== dStore_php ==
 +<code 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'​),​
 + '​im_DeleteTreeNodes_Ad',​
 + array(
 + '​TreeNodeList'​ => '<​value>',​
 + // '​CascadeClones'​ => 0
 + )
 +);
 +
 +$service->​execute($request);​
 +
 + $xml_result = $request->​getResponse()->​getBody()->​toSimpleXmlDocument();​
 + $ResultSet = $xml_result->​getRowsAsArray();​
 +
 +</​code>​
 +== engine/​execute ==
 +XML zur Ausführung mit der Methode [[:​webservice:​engine:​execute|engine/​execute]],​ z.B. per
 +  curl --header '​Content-Type:​ application/​xml'​ -X POST '​http://<​partner>​-<​kunde>​.dstore.de/​default/​engine/​execute'​ -d '<​xml-daten>'​
 +
 +<code xml>
 +<?xml version="​1.0"​ encoding="​UTF-8"?>​
 +<​ListOfBatches>​
 + <Batch No="​0">​
 + <​Procedure Name="​im_DeleteTreeNodes_Ad">​
 + <​Parameters>​
 + <​Parameter Name="​TreeNodeList"><​!-- varchar value --></​Parameter>​
 + <!-- <​Parameter Name="​CascadeClones">​0</​Parameter>​ -->
 + </​Parameters>​
 + </​Procedure>​
 + </​Batch>​
 +</​ListOfBatches></​code>​
  
engine/procedures/im_deletetreenodes_ad.txt · Zuletzt geändert: 11.01.2016 (Externe Bearbeitung)