Ermittelt zu gegebenen Identifizierungsdaten die ID der Person und gibt Informationen des „aktuellsten“ Besuchers zurück, der dieser Person zugeordnet ist.
Unter „aktuellster Besucher“ wird der Besucher verstanden, der zuletzt etwas in den Warenkorb gelegt hat. Wenn keiner der (Person zugeordneten) Besucher mehr Artikel im Warenkorb hat, wählt die Prozedur die „VisitorID“, die ZULETZT der „PersonID“ zugeordnet wurde (in „VisitorPersons“ ist via „ValidFrom“ und „ValidTo“ immer der Zeitraum der Person-Besucher-Zuordnung festgehalten).
HTTP-Method | GET |
HTTP-Auth | Optional |
Tags | |
Engine-Kategorie | person management |
Engine-Typ | Daten-Ermittlung |
Letzte Aktualisierung | 4.0.0 (2003-04-03) |
Name 1) | Standard-Wert | Beschreibung 2) | SQL-Datentyp3) | ab Version |
---|---|---|---|---|
PersonIdentificationValues | Liste (durch '¶' getrennt) von Werten, die die Person identifizieren. Diese Werte müssen Eigenschaften zu den Merkmal-IDs sein, die in „PersonTypeSettings“ zur „PersonTypeID“ zum Schlüssel „PersonIdentificationIDs“ hinterlegt sind. | varchar(255) | 3.5.20 | |
PersonTypeID | ID des Personen-Typs dem die zu identifizierende Person angehört. Dieser muß bei einer Identifizierung immer mit angegeben werden, da die Merkmale zur Identifizierung pro Personentyp variieren können. | tinyint | 3.5.20 | |
CaseSensitive | 1 | „0“ : Der Vergleich der Identifizierungsdaten erfolgt unabhängig von der Groß- und Kleinschreibung „1“ : Die Identifizierungsdaten werden EXAKT verglichen | bit | 3.5.20 |
Spaltenname | Beschreibung | SQL-Datentyp4) | ab Version |
---|---|---|---|
PersonID | ID der identifizierten Person | integer | 3.5.20 |
VisitorID | ID des „aktuellsten Besuchers“ (siehe Beschreibung) | integer | 3.5.20 |
ValidFrom | Seit wann ist der Besucher „VisitorID“ der Person „PersonID“ zugeordnet | datetime | 3.5.20 |
UniqueID | Eindeutige ID des Besuchers „VisitorID“. Diese wird meistens bei der Identifizierung oder für „Session“-Informationen benötigt, da sie erheblich mehr Sicherheit als die „VisitorID“ bietet. | varchar(50) | 3.5.20 |
Die Prozedur hat keine Output-Parameter.
Code | Beschreibung | Quelle 5) |
---|---|---|
-660 | Identifikation fehlgeschlagen | nur indirekt |
-621 | Fehlender oder falscher Eintrag in PersonTypeSettings | nur indirekt |
-599 | Lizenz ist ungültig oder abgelaufen | nur indirekt |
-500 | Falsche Parameter | nur indirekt |
Die Rückgabe erfolgt als XML-Dokument welches gegen das Schema Response/EngineProcedure_v1_0.xsd validiert.
4.0.0 | 2003-04-03 | Komplette Überarbeitung der Prozedur inkl. der Quelltext-Doku und Doku (u.a. „set forceplan“, überflüssiger join zu „Visitors“, überflüssiger join zu „VisitorPersons“, Fehler bei der Ermittlung von „MAX(ValidFrom)“ : „ValidTo is NULL“ fehlte) |
3.5.20 | 2002-07-22 | 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 GET 'http://<partner>-<project>.dstore.de/default/engine/pm_GetMostRecentUniqueID_Pu?PersonIdentificationValues=<value>&PersonTypeID=<value>'
Mit xmllint 6) formatierte Ausgabe:
curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/pm_GetMostRecentUniqueID_Pu?PersonIdentificationValues=<value>&PersonTypeID=<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'), 'pm_GetMostRecentUniqueID_Pu', array( 'PersonIdentificationValues' => '<value>', 'PersonTypeID' => <value>, // 'CaseSensitive' => 1 ) ); $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="pm_GetMostRecentUniqueID_Pu"> <Parameters> <Parameter Name="PersonIdentificationValues"><!-- varchar value --></Parameter> <Parameter Name="PersonTypeID"><!-- tinyint value --></Parameter> <!-- <Parameter Name="CaseSensitive">1</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>