Ermittelt definierte (und i.d.R. einem Personen-Typ bereits zugeordnete) Merkmale, zu denen Personen Eigenschaften/Details besitzen können. Äquivalent zu pm_GetPerson_Characteristics_Ad - mit dem Unterschied, daß nur die Merkmale zurückgegeben werden, die für den Benutzer, der diese Prozedur aufruft (bzw. für den „publicuser“, wenn „PCharacsBackwardCompatible“ in „PersonTypeSettings“ auf „1“ gesetzt ist), sichtbar oder zumindest eingeschränkt sichtbar sind (s. Doku zur Rückgabespalte „Visible“ u. „ReadAccessRestrictionPattern“).
Anmerkung zur Rückgabespalte „Modify“ :
Gibt an, ob der spezielle Benutzer „publicuser“ („UserID = 0“, s. mi_GetUserInfo_Ad) Eigenschaften/Details zum Merkmal „ID“ ÄNDERN darf bzw. eingeschränkt ändern darf. Falls der „PersonTypeSettings“-Eintrag (zur „PersonTypeID = 0“) zum Schlüssel „PCharacsBackwardCompatible“ auf „1“ gesetzt ist, hat dieser Wert die Bedeutung, ob Änderungen mit z.B. pm_InsertNewPerson_Pu oder pm_ModifyPersonData_Pu (egal welcher Benutzer sie ausführt) möglich bzw. eingeschränkt erlaubt sind. Mögliche Werte :
Anmerkung zur Rückgabespalte „Visible“ :
Wird hier eine „0“ ausgegeben, werden in Prozeduren, die vom Benutzer „publicuser“ („UserID = 0“, s. mi_GetUserInfo_Ad) ausgeführt werden, KEINE Eigenschaften/Details bzw. nur „Teile von Eigenschaften“ (s. Rückgabespalte „ReadAccessRestrictionPattern“) zum Merkmal „ID“ ausgegeben. Falls der „PersonTypeSettings“-Eintrag (zur „PersonTypeID = 0“) zum Schlüssel „PCharacsBackwardCompatible“ auf „1“ gesetzt ist, hat dieser Wert die Bedeutung, daß in „public“-Prozeduren KEINE Eigenschaften/Details bzw. nur „Teile von Eigenschaften“ zum Merkmal „ID“ ausgegeben werden.
Anmerkung zur Rückgabespalte „ReadAccessRestrictionPattern“ :
Immer „NULL“ wenn „Visible = 1“ ist. Falls hier ein Wert zurückkommt, bedeutet dies, daß der „publicuser“ („UserID = 0“, s. mi_GetUserInfo_Ad) den Teil von Eigenschaften zum Merkmal „ID“ einsehen darf, der diesem „pattern“ entspricht (für Details bedeutungslos). Derzeit mögliche Werte :
Beispielsweise bedeutet „#left(4)#“, daß nur (maximal) die ERSTEN 4 Zeichen der Eigenschaft zurückgeliefert werden.
HTTP-Method | GET |
HTTP-Auth | Optional |
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 |
---|---|---|---|---|
LanguageID | NULL | ID einer Sprache, in der die Bezeichnungen der Merkmale (Rückgabespalte „Description“) ausgegeben werden sollen. Wenn keine Übersetzung vorhanden ist, wird immer die Bezeichnung in der Standardsprache („DefaultLanguageID“ aus „Settings“) gewählt. | tinyint | 3.5.0 |
PersonTypeID | 1 | ID des Personen-Typs, zu dem die Merkmale ausgegeben werden sollen | tinyint | 3.5.0 |
PersonCharacCategoryID | 1 | ID einer Kategorie von Personen-Merkmalen. Falls angegeben (Angabe von „NULL“ erst seit Version 3.5.5 mögl.), werden nur die Merkmale dieser Kategorie berücksichtigt. Gehört die Kategorie nicht zum Personen-Typ „PersonTypeID“ ist die Rückgabemenge leer ! | tinyint | 3.5.0 |
Spaltenname | Beschreibung | SQL-Datentyp4) | ab Version |
---|---|---|---|
ID | ID eines Personen-Merkmals. Besteht für ein Merkmal eine komplett lesende Zugriffsbeschränkung für den Aufrufer bzw. „publicuser“ (s. „PersonTypeSettings“-Schlüssel „PCharacsBackwardCompatible“), FEHLT der entsprechende Datensatz im Ergebnis ! | smallint | 3.5.0 |
Description | Bezeichnung des Personen-Merkmals „ID“ in der durch „LanguageID“ angegebenen Sprache | varchar(100) | 3.5.0 |
BasicFieldTypeID | ID des Basis-Feld-Typs, von dem alle Eigenschaften des Merkmals „ID“ sein müssen, wie z.B. „Text“ (siehe auch mi_GetFieldTypes_Ad) | tinyint | 3.5.0 |
BasicFieldType | Bezeichnung des Basis-Feld-Typs „BasicFieldTypeID“ | varchar(20) | 3.5.0 |
MaxLength | Maximale Anzahl Zeichen, die Eigenschaften/Werte zum Merkmal „ID“ haben dürfen | tinyint | 3.5.0 |
PrecisionValue | Gilt nur für Datentypen mit Basis-Daten-Typ „Zahl“ und gibt die Anzahl erlaubter Nachkommastellen an, die in Eigenschaften zum Merkmal „ID“ vorkommen dürfen. | tinyint | 3.5.0 |
Format | Von welchem „Format“ (so etwas wie ein regulären Ausdruck) müssen die Eigenschaften zum Merkmal „ID“ sein. Derzeit nicht implementiert und verwendet ! | varchar(255) | 3.5.0 |
Required | Falls „1“, so MUSS eine Person, die eine Angabe zu wenigstens einem Merkmal der Kategorie „PersonCharacCategoryID“ macht, auf JEDEN FALL auch eine Angabe zum Merkmal „ID“ machen | bit | 3.5.0 |
PredefinedValues | Hat das Merkmal „ID“ nur vordefinierte Werte („0“ : Nein, „1“ : Ja) ? | bit | 3.5.0 |
Modify | Dürfen „publicuser“/„Pu“-Prozed. Eigensch.-Änderung. vornehmen ? - „0“ : Nein - „1“ : Ja - „2“ : Nur Neu-Anlage - „3“ : Nur Ändern - „4“ : Nur Neu-Anlage u. Ändern - „5“ : Nur Löschen - „6“ : Nur Neu-Anlage u. Löschen - „7“ : Nur Ändern u. Löschen | tinyint | 3.5.0 |
Visible | Wenn „0“, werden durch vom „publicuser“ ausgeführte Prozeduren bzw. durch „Pu“-Prozeduren (z.B. pm_GetPersonProperties_Pu) KEINE Eigenschaften/Details bzw. nur Teile von Eigenschaften (s. „ReadAccessRestrictionPattern“) zur „ID“ ausgegeben | bit | 3.5.0 |
ReadAccessRestrictionPattern | „NULL“ wenn „Visible = 1“. Welch. Teil v. Eigensch. zu „ID“ für den „publicuser“ ausgegeben werden : - „#left(<n>)#“ : die ERSTEN n Zeichen („n = 0“ mögl.) - „#right(<n>)#“ : die LETZTEN n Zeichen („n = 0“ mögl.) - NULL : Datensätze zu „ID“ fehlen ganz | varchar(100) | 6.5.2 |
LanguageID | ID der Sprache, in der „Description“ angegeben ist. Falls keine „LanguageID“ angegeben wurde, ist dies IMMER die „DefaultLanguageID“ aus „Settings“. | tinyint | 3.5.0 |
SortNo | Bestimmt die Reihenfolge des Merkmals „ID“ innerhalb aller Merkmale | smallint | 3.5.0 |
RequiredForCreate | Wird hier eine „1“ ausgegeben, bedeutet das folgendes : Jede Person eines Personen-Typs, der das Merkmal „ID“ zugewiesen hat, MUSS eine Eigenschaft zum Merkmal „ID“ angeben, ansonsten kann die Person nicht angelegt werden. | bit | 3.5.5 |
(parameterunabängige Sortierung)
Spaltenname | Beschreibung | SQL-Datentyp5) | ab Version |
---|---|---|---|
ID | ID eines Personen-Merkmals. Besteht für ein Merkmal eine komplett lesende Zugriffsbeschränkung für den Aufrufer bzw. „publicuser“ (s. „PersonTypeSettings“-Schlüssel „PCharacsBackwardCompatible“), FEHLT der entsprechende Datensatz im Ergebnis ! | smallint | 3.5.5 |
Description | Bezeichnung des Personen-Merkmals „ID“ in der durch „LanguageID“ angegebenen Sprache | varchar(100) | 3.5.5 |
BasicFieldTypeID | ID des Basis-Feld-Typs, von dem alle Eigenschaften des Merkmals „ID“ sein müssen, wie z.B. „Text“ (siehe auch mi_GetFieldTypes_Ad) | tinyint | 3.5.5 |
BasicFieldType | Bezeichnung des Basis-Feld-Typs „BasicFieldTypeID“ | varchar(20) | 3.5.5 |
MaxLength | Maximale Anzahl Zeichen, die Eigenschaften/Werte zum Merkmal „ID“ haben dürfen | tinyint | 3.5.5 |
PrecisionValue | Gilt nur für Datentypen mit Basis-Daten-Typ „Zahl“ und gibt die Anzahl erlaubter Nachkommastellen an, die in Eigenschaften zum Merkmal „ID“ vorkommen dürfen. | tinyint | 3.5.5 |
Format | Von welchem „Format“ (so etwas wie ein regulären Ausdruck) müssen die Eigenschaften zum Merkmal „ID“ sein. Derzeit nicht implementiert und verwendet ! | varchar(255) | 3.5.5 |
Required | Falls „1“, so MUSS eine Person, die eine Angabe zu wenigstens einem Merkmal der Kategorie „PersonCharacCategoryID“ macht, auf JEDEN FALL auch eine Angabe zum Merkmal „ID“ machen | bit | 3.5.5 |
PredefinedValues | Hat das Merkmal „ID“ nur vordefinierte Werte („0“ : Nein, „1“ : Ja) ? | bit | 3.5.5 |
Modify | Dürfen „publicuser“/„Pu“-Prozed. Eigensch.-Änderung. vornehmen ? - „0“ : Nein - „1“ : Ja - „2“ : Nur Neu-Anlage - „3“ : Nur Ändern - „4“ : Nur Neu-Anlage u. Ändern - „5“ : Nur Löschen - „6“ : Nur Neu-Anlage u. Löschen - „7“ : Nur Ändern u. Löschen | tinyint | 3.5.5 |
Visible | Wenn „0“, werden durch vom „publicuser“ ausgeführte Prozeduren bzw. durch „Pu“-Prozeduren (z.B. pm_GetPersonProperties_Pu) KEINE Eigenschaften/Details bzw. nur Teile von Eigenschaften (s. „ReadAccessRestrictionPattern“) zur „ID“ ausgegeben | bit | 3.5.5 |
ReadAccessRestrictionPattern | „NULL“ wenn „Visible = 1“. Welch. Teil v. Eigensch. zu „ID“ für den „publicuser“ ausgegeben werden : - „#left(<n>)#“ : die ERSTEN n Zeichen („n = 0“ mögl.) - „#right(<n>)#“ : die LETZTEN n Zeichen („n = 0“ mögl.) - NULL : Datensätze zu „ID“ fehlen ganz | varchar(100) | 6.5.2 |
LanguageID | ID der Sprache, in der „Description“ angegeben ist. Falls keine „LanguageID“ angegeben wurde, ist dies IMMER die „DefaultLanguageID“ aus „Settings“. | tinyint | 3.5.5 |
SortNo | Bestimmt die Reihenfolge des Merkmals „ID“ innerhalb aller Merkmale | smallint | 3.5.5 |
RequiredForCreate | Wird hier eine „1“ ausgegeben, bedeutet das folgendes : Jede Person eines Personen-Typs, der das Merkmal „ID“ zugewiesen hat, MUSS eine Eigenschaft zum Merkmal „ID“ angeben, ansonsten kann die Person nicht angelegt werden. | bit | 3.5.5 |
PersonCharacCategoryID | ID einer Kategorie von Personen-Merkmalen, der das Merkmal „ID“ zugeordnet ist | tinyint | 3.5.5 |
CategoryDescription | Bezeichnung der Kategorie „PersonCharacCategoryID“ | varchar(100) | 3.5.5 |
(parameterunabängige Sortierung)
Die Prozedur hat keine Output-Parameter.
Code | Beschreibung | Quelle 6) |
---|---|---|
-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 | direkt und indirekt |
-500 | Falsche Parameter | nur 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.4 | 2013-04-29 | Doku zu den Rückgabespalten „Modify“, „Visible“ und „ReadAccessRestrictionPattern“ war falsch |
6.5.2 | 2013-02-26 | 1. Interne Anpassungen (Spalten „Visible“ und „ModificationAllowedByUser“ von „PersonCharacteristics“ sind weggefallen) 2. Neue mögliche Werte für Rückgabespalte „Modify“ 3. Neue Rückgabespalte „ReadAccessRestrictionPattern“ |
4.0.3 | 2003-07-10 | Fehler in der Doku, Rückgabespalte „Modify“ ist vom Typ „tinyint“ |
3.5.20 | 2002-07-22 | |
3.5.19 | 2002-06-17 | |
3.5.5 | 2001-03-30 | |
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_GetPersonCharacteristics_Pu'
Mit xmllint 7) formatierte Ausgabe:
curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/pm_GetPersonCharacteristics_Pu' | 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_GetPersonCharacteristics_Pu', array( // 'LanguageID' => NULL, // 'PersonTypeID' => 1, // 'PersonCharacCategoryID' => 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_GetPersonCharacteristics_Pu"> <Parameters> <!-- <Parameter Name="LanguageID">NULL</Parameter> --> <!-- <Parameter Name="PersonTypeID">1</Parameter> --> <!-- <Parameter Name="PersonCharacCategoryID">1</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>