Gibt zu einem Personen-Merkmal alle vordefinierten Eigenschaften zurück.
Anmerkungen zum Parameter „GetReferencesForTableID“ :
Wir ermitteln zu jedem vordefinierten Wert, ob und welche sogenannte „Referenz“ auf (genau) einen Datensatz einer Tabelle (s. Rückgabespalten „TableID“ und „TableKeyID“) es gibt. Es kann prinzipiell mehrere solcher Referenzen geben, aber pro Tabelle immer nur maximal eine.
Für welche Tabelle nun pro Wert ein solche mögliche Referenz ermittelt werden soll, gibt man in diesem Parameter an.
Mögliche Werte ermittelt man durch folgenden Aufruf : exec mi_GetTabsRefInOtherTabs_Ad UsedInPersonCharacValueRefs = 1„.
Wird „NULL“ in diesem Parameter angegeben, wählen wir selbst die kleinste mögliche „TableID“.
HTTP-Method | GET |
HTTP-Auth | Optional |
Alias | pm_GetPersonPredefinedValues_Pu |
Tags | |
Engine-Kategorie | person management |
Engine-Typ | Daten-Ermittlung |
Letzte Aktualisierung | 7.0.7 (2015-01-29) |
Name 1) | Standard-Wert | Beschreibung 2) | SQL-Datentyp3) | ab Version |
---|---|---|---|---|
PersonCharacteristicID | ID des Personen-Merkmals, zu dem alle vordefinierten Eigenschaften ausgegeben werden sollen. Falls für den Aufrufer eine komplette lesende Zugriffsbeschr. (s. pm_GetPChAccRestrForUsers_Ad) existiert, gibt es einen Fehler ! | smallint | 3.5.0 | |
LanguageID | NULL | ID einer Sprache. Falls angegeben, versucht die Prozedur zu den Eigenschaften jeweils ein Übersetzung in dieser Sprache zu finden - falls keine Übersetzung existiert, wird natürlich der Wert in der Standardsprache zurückgegeben. | tinyint | 3.5.0 |
OnlyValuesCurrentlyValid | 0 | „1“ angeben, um nur aktuell verwendbare Eigenschaften ermitteln zu lassen. (In der Rückgabespalte „IsCurrentlyValid“ steht dann immer der Wert „1“.) | bit | 4.0.1 |
GetReferencesForTableID | NULL | ID einer Tabelle, in der ein Element definiert ist, auf das sich ein vordefinierter Wert bezieht - eine sogenannte „Referenz“. Bei Angabe von „NULL“, wählen wir selbst die kleinste mögliche „TableID“. s. Beschreibung ! | tinyint | 5.5.2 |
Spaltenname | Beschreibung | SQL-Datentyp4) | ab Version |
---|---|---|---|
ValueID | ID der Eigenschaft „Value“ | integer | 3.5.0 |
Value | Eine (vordefinierte) Eigenschaft zum Merkmal „PersonCharacteristicID“. Wurde eine „LanguageID“ angegeben, steht hier evtl. die Übersetzung der Eigenschaft (in dieser Sprache). Kann „NULL“ wg. einer Zugriffsbeschr. sein (s. „ValueRestrictedByPattern“) ! | varchar(100) | 3.5.0 |
ValueRestrictedByPattern | Was enthält „Value“ (womöglich wegen Zugriffsbeschränkungen nur einen Teil) ? - NULL : den vollständigen Wert - “#left(<n>)#„ : nur die ERSTEN n Zeichen - “#right(<n>)#„ : nur die LETZTEN n Zeichen Anmerkung : „n = 0“ möglich, „Value“ ist dann „NULL“ | varchar(100) | 6.5.2 |
SortNo | Bestimmt die Reihenfolge der Eigenschaft „ValueID“ innerhalb aller Eigenschaften zum Merkmal „PersonCharacteristicID“ | integer | 3.5.0 |
IsCurrentlyValid | Gibt an, ob die Eigenschaft aktuell verwendet werden darf („1“) oder nicht („0“). Hinweis : Es können seit Version 4.0.0 Gültigkeitszeiträume für Eigenschaften festgelegt werden (siehe pm_ModifyPeriodsForPredVals_Ad). | bit | 4.0.0 |
TableID | ID einer Tabelle, in der ein Element (→ „TableKeyID“) definiert ist, auf das der Wert „ValueID“ referenziert. Hier steht entweder „GetReferencesForTableID“ oder (falls „NULL“) die kleinste möglich „TableID“. | tinyint | 5.1.7 |
TableKeyID | ID eines Objektes der durch „TableID“ angegebenen Tabelle, auf das der Wert „ValueID“ referenziert. Mögliche Werte : Werte für die „PrimaryKeyColumnName“-Spalte für die Tabelle (siehe „exec mi_GetTabsRefInOtherTabs_Ad TableID = <TableID>“). | integer | 5.1.7 |
(parameterunabängige Sortierung)
Die Prozedur hat keine Output-Parameter.
Code | Beschreibung | Quelle 5) |
---|---|---|
-697 | Aktion kann nicht durchgeführt werden, da für ein Merkmal eine Zugriffsbeschränkung besteht | nur direkt |
-621 | Fehlender oder falscher Eintrag in PersonTypeSettings | nur indirekt |
-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 |
-550 | Fehlender oder falscher Eintrag in Settings | direkt und 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 |
-501 | Der Parameter „TableID“ und/oder der Parameter „TableKeyID“ ist ungültig | 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 | „Start-/Finish-Procedure“-Logik eingebaut, s. Ticket #3670 |
6.5.2 | 2013-02-26 | 1. Beachtung der neuen Zugriffs-Beschränkungen für Merkmale [⇒ Doku-Anpassung] 2. Neue Rückgabespalte „ValueRestrictedByPattern“ [wg. des neuen features „Zugriffsbeschränkung“] |
5.5.2 | 2008-10-21 | 1. Neuer Parameter „GetReferencesForTableID“, um das [falsche] Verhalten seit Einführung von „TableID“ und „TableKeyID“ zu ändern : Es konnte vorher nämlich MEHRERE Datensätze zu einer „ValueID“ geben ! 2. Quellcode-Anpassung an den aktuellen Standard |
5.1.7 | 2006-10-31 | Neue Rückgabespalten „TableID“, „TableKeyID“ |
5.1.4 | 2006-08-14 | Workaround für BUG im ASE 15 [bzgl. „isnull“ und „NOT“-Operator] |
4.0.1 | 2003-05-16 | Neuer Parameter „OnlyValuesCurrentlyValid“ |
4.0.0 | 2003-04-03 | 1. Neue Rückgabespalte „isCurrentlyValid“ 2. Ab jetzt : “-500„, falls „PredefinedValues = 0“ 3. Komplette Überarbeitung des Quellcodes |
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 GET 'http://<partner>-<project>.dstore.de/default/engine/pm_GetPersonPredefinedVals_Pu?PersonCharacteristicID=<value>'
Mit xmllint 6) formatierte Ausgabe:
curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/pm_GetPersonPredefinedVals_Pu?PersonCharacteristicID=<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_GetPersonPredefinedVals_Pu', array( 'PersonCharacteristicID' => <value>, // 'LanguageID' => NULL, // 'OnlyValuesCurrentlyValid' => 0, // 'GetReferencesForTableID' => NULL ) ); $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_GetPersonPredefinedVals_Pu"> <Parameters> <Parameter Name="PersonCharacteristicID"><!-- smallint value --></Parameter> <!-- <Parameter Name="LanguageID">NULL</Parameter> --> <!-- <Parameter Name="OnlyValuesCurrentlyValid">0</Parameter> --> <!-- <Parameter Name="GetReferencesForTableID">NULL</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>