Benutzer-Werkzeuge

Webseiten-Werkzeuge


engine:procedures:co_createnewcommunitymember_pu

co_CreateNewCommunityMember_Pu

Legt eine neues Communitymitglied an. Dabei handelt es sich im wesentlichen um das Anlegen einer neuen Person durch die Prozedur pm_InsertNewPerson_Pu. Zusätzlich dazu werden die benötigten Einträge in den Community-Tabellen angelegt.

Möchte man ein Mitglied gleichzeitig in MEHREREN Communities anlegen, setzt man „CommunityID“ auf „NULL“ und fügt die entsprechenden IDs in „tempdb.dbo.OneID“ ein. Selbstverständlich müssen die Mitglieder aller angegebenen Communities denselben Personentyp haben…

HTTP-MethodPOST
HTTP-AuthOptional
Tags
Engine-Kategoriecommunities
Engine-TypDaten-Änderung
Letzte Aktualisierung4.0.4 (2003-08-26)

Parameter

Name 1) Standard-Wert Beschreibung 2) SQL-Datentyp3) ab Version
CommunityID ID einer Community, in der ein neues Mitglied angelegt werden soll. Seit Version 3.5.7 : „NULL“ übergeben und mehrere „CommunityID“s in „tempdb.dbo.OneID“ angeben möglich
smallint3.5.0
UniqueID Eindeutige ID eines Besuchers (zwingend erforderlich - wenn kein Besucher in „Visitors“ mit dieser ID exisitert, gibt es einen Fehler)
varchar(50)3.5.0
CharacteristicIDList1 ID von Personen-Merkmalen (durch '¶' getrennt), zu denen in „ValueList1“ die zugehörigen Eigenschaften übergeben sind, die das neue Mitglied besitzt
varchar(255)3.5.0
ValueList1 Eigenschaften (durch '¶' getrennt) des neuen Mitglieds, die zu den in „CharacteristicIDList1“ angegebenen Merkmalen korrespondieren
varchar(255)3.5.0
CharacteristicIDList2NULL Wie „CharacteristicIDList1“. Kann verwendet werden, falls nicht alle Eigenschaften (aufgrund der Beschränkung auf 255 Zeichen) in „ValueList1“ angegeben werden können
varchar(255)3.5.0
ValueList2NULL Wie „ValueList1“. Kann verwendet werden, falls nicht alle Eigenschaften (aufgrund der Beschränkung auf 255 Zeichen) in „ValueList1“ angegeben werden können
varchar(255)3.5.0
PersonCharacCategoryID1 ID der Kategorie von Personen-Merkmalen, in der alle Pflichtmerkmale zusammengefaßt sind. Eine solche Kategorie ist für jeden Personen-Typ festgelegt, um zu definieren, welche Eigenschaften UNBEDINGT vorhanden sein müssen (sonst schlägt das Anlegen fehl)
tinyint3.5.0
ResultInErrorIDList1 Wenn es beim Anlegen Fehler bzgl. der Eigenschaften gab, kann hierüber gesteuert werden, ob „ErrorIDList“ mit den fehlerhaften Merkmal-IDs gefüllt oder ob eine Rückgabemenge erstellt werden soll
bit3.5.0
ValueIDsForPredefinedCharacs1 Falls „1“ übergeben wird, sind (in „ValueList1“ bzw. „ValueList2“) zu Merkmalen mit vordefinierten Werten („PredefinedValues = 1“) nicht die Eigenschaften selbst sondern die IDs („ValueID“s) angegeben
bit3.5.0
CancelOnError0 Gibt es bzgl. der Eigenschaften Fehler, die sich aber nicht auf Pflichtmerkmale beziehen, so daß das Mitglied trotzdem angelegt werden kann, soll…
„0“ : das Mitglied angelegt
„1“ : das Mitglied NICHT angelegt
… Werden
bit4.0.4

Rückgabe

wenn ResultInErrorIDList = 0

Spaltenname Beschreibung SQL-Datentyp4) ab Version
PersonCharacteristicIDID eines Personen-Merkmals, bei dem ein Fehler aufgetreten ist
smallint3.5.0
ResultCodeFehlercode zum aufgetretenen Fehler (Bedeutung siehe pm_InsertNewPerson_Pu)
integer3.5.0

Output-Parameter

PersonIDAusgabeparameter für die ID des Mitgliedes, das angelegt wurde
ErrorIDListDurch '¶' separierte IDs von den Merkmalen, bei denen es einen Fehler gab (nur falls „ResultInErrorIDList = 1“)

Mögliche Return-Codes

Code Beschreibung Quelle 5)
-856Fehlerhafte Daten in „MainPostingSorting“nur indirekt
-855Fehlerhafte Konfiguration des Sortier-Kriteriumsnur indirekt
-850Sortier-Kriterium nicht definiert oder inaktiv oder nicht verwendbarnur indirekt
-840Posting kann nicht bearbeitet werden, weil es bereits von einem anderen Prozess bearbeitet wirdnur indirekt
-781Fehlender oder falscher Eintrag in CommunitySettingsnur indirekt
-712Die Personentypen der Communities stimmen nicht übereinnur direkt
-710Falscher Personentyp für die Communitynur direkt
-677Die Person kann nicht gelöscht werden, da es mind. ein Posting gibt, das nicht gelöscht werden darfnur indirekt
-672Fehlende Berechtigung zum Löschen von Personen eines bestimmten Personentypsnur indirekt
-671Die Person kann nicht gelöscht werden, da mindestens ein Auftrag existiertnur indirekt
-650Es sind nicht alle Pflichtmerkmale vorhandennur indirekt
-642Inkrementelle Änderung konnte aufgrund paralleler Änderungen nicht durchgeführt werdennur indirekt
-641Die „Unique“-Eigenschaft mindestens eines Merkmals ist verletzt - Prozedur wurde abgebrochennur indirekt
-640Einige Personendaten sind ungültignur indirekt
-630Personendaten konnten nicht angelegt werdennur indirekt
-621Fehlender oder falscher Eintrag in PersonTypeSettingsnur indirekt
-610Fehlende oder falsche Daten in PersonMetaInformationnur indirekt
-602Zur defaultUniqueID („VisitorID = -2“) können keinerlei Daten gespeichert oder verändert werdennur indirekt
-600Es konnte keine gültige VisitorID ermittelt werdennur indirekt
-572Die Prozedur darf nur innerhalb einer Transaktion ausgeführt werdennur indirekt
-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
-561Prozedur kann nicht ausgeführt werdennur indirekt
-550Fehlender oder falscher Eintrag in Settingsnur indirekt
-540Falsches Formatnur indirekt
-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
-220Es konnte keine Merkmal-ID für die Produktbezeichnung ermittelt werdennur indirekt

XML-Schema

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

Historie

4.0.4 2003-08-26Neuer Parameter „CancelOnError“
3.5.16 2002-04-25
3.5.15 2002-03-12
3.5.7 2001-05-04
3.5.2 2001-01-28
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/co_CreateNewCommunityMember_Pu?CommunityID=<value>&UniqueID=<value>&CharacteristicIDList1=<value>&ValueList1=<value>'

Mit xmllint 6) formatierte Ausgabe:

curl -X POST  'http://<partner>-<project>.dstore.de/default/engine/co_CreateNewCommunityMember_Pu?CommunityID=<value>&UniqueID=<value>&CharacteristicIDList1=<value>&ValueList1=<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'),
	'co_CreateNewCommunityMember_Pu',
		array(
			'CommunityID' => <value>,
			'UniqueID' => '<value>',
			'CharacteristicIDList1' => '<value>',
			'ValueList1' => '<value>',
			// 'CharacteristicIDList2' => NULL,
			// 'ValueList2' => NULL,
			// 'PersonCharacCategoryID' => 1,
			// 'ResultInErrorIDList' => 1,
			// 'ValueIDsForPredefinedCharacs' => 1,
			// 'CancelOnError' => 0
		)
);
 
$service->execute($request);
 
			$xml_result = $request->getResponse()->getBody()->toSimpleXmlDocument();
			$ResultSet = $xml_result->getRowsAsArray();
 
$OutputParams = $xml_result->getOutputParametersAsArray();
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="co_CreateNewCommunityMember_Pu">
			<Parameters>
				<Parameter Name="CommunityID"><!-- smallint value --></Parameter>
				<Parameter Name="UniqueID"><!-- varchar value --></Parameter>
				<Parameter Name="CharacteristicIDList1"><!-- varchar value --></Parameter>
				<Parameter Name="ValueList1"><!-- varchar value --></Parameter>
				<!-- <Parameter Name="CharacteristicIDList2">NULL</Parameter> -->
				<!-- <Parameter Name="ValueList2">NULL</Parameter> -->
				<!-- <Parameter Name="PersonCharacCategoryID">1</Parameter> -->
				<!-- <Parameter Name="ResultInErrorIDList">1</Parameter> -->
				<!-- <Parameter Name="ValueIDsForPredefinedCharacs">1</Parameter> -->
				<!-- <Parameter Name="CancelOnError">0</Parameter> -->
			</Parameters>
		</Procedure>
	</Batch>
</ListOfBatches>
1)
Pflichtparameter sind unterstrichen
5)
direkt meint „von der Prozedur selber“ und indirekt meint „von intern aufgerufenen Unterprozeduren“
6)
I.d.R. auf Unix-artigen Systemen bereits installiert, Bestandteil der libxml2, siehe http://www.xmlsoft.org
engine/procedures/co_createnewcommunitymember_pu.txt · Zuletzt geändert: 11.01.2016 (Externe Bearbeitung)