Benutzer-Werkzeuge

Webseiten-Werkzeuge


engine:procedures:st_getpersonpmstatistics_ad

st_GetPersonPMStatistics_Ad

Gibt Statistiken aus der Tabelle „PersonCharacteristicNos_PM“ aus.

Anmerkung :
Wird nach bestimmten „HTreeNodeID“s eingeschränkt, bekommt man zu diesen „HTreeNodeID“s für jeden Monat einen Wert zurück, auch wenn in diesem Monat für das Element nichts erfaßt ist - dann ist der Wert eben „0“.

HTTP-MethodGET
HTTP-AuthOptional
Tags
Engine-Kategoriestatistics
Engine-TypDaten-Ermittlung
Letzte Aktualisierung7.0.7 (2015-01-29)

Parameter

Name 1) Standard-Wert Beschreibung 2) SQL-Datentyp3) ab Version
PersonIDs Nur relevant, falls „GetTopX = NULL“ ist ! Liste (durch '¶' getrennt) von IDs von Personen, für die Statistiken ermittelt werden sollen. Wird „NULL“ angegeben, erwartet die Prozedur in „tempdbo.dbo.TwoIDs“ „PersonID“s (in „ID2“, „ID1“ muß „1“ enthalten).
varchar(255)3.5.5
FromMonth Ab welchem Monat (des Jahres „FromYear“) sollen die Statistiken berücksichtigt werden
tinyint3.5.5
FromYear In welchem Jahr liegt „FromMonth“. Hinweis: Ein Wert kleiner als „1997“ führt zum Fehler „-500“ !
smallint3.5.5
ToMonthNULL Bis zu welchem Monat (des Jahres „ToYear“) sollen die Statistiken berücksichtigt werden.
tinyint3.5.5
ToYearNULL In welchem Jahr liegt „ToMonth“. Wird „NULL“ angegeben, dann werden alle vorhandenen Statistiken ab dem Monat „FromMonth“/„FromYear“ berücksichtigt. Hinweis: Ein Wert kleiner als „1997“ führt zum Fehler „-500“ !
smallint3.5.5
BasicCharacteristicNumbersNULL Falls „GetTopX“ angegeben ist, muß hier genau eine „BasicCharacteristicNumber“ stehen. Ansonsten kann eine Liste (durch '¶' getrennt) von „BasicCharacteristicNumber“s übergeben werden, damit die Prozedur nur Statistiken zu diesen Kennzahlen ausgibt.
varchar(255)3.5.5
HTreeNodeIDsNULL Falls „GetTopX“ angegeben ist, muß hier genau eine „HTreeNodeID“ stehen. Ansonsten kann eine Liste (durch '¶' getrennt) von „HTreeNodeID“s, nach denen gefiltert werden soll, angegeben werden. Bei '' werden IDs in „tempdb.dbo.TwoIDs“ erwartet („ID1 = 2“).
varchar(255)3.5.5
SummarizeMonths0 Möchte man für den Zeitraum „FromMonth“/„FromYear“ bis „ToMonth“/„ToYear“ nur die kummulierte Werte (also nicht pro Monat), gibt man „1“ an, wobei die Rückgabespalten „Month“ und „Year“ dann immer „NULL“ enthalten.
bit3.5.12
GetTopXNULL Ist eine „Hit-Liste“ von Personen gewünscht, setzt man diesen Parameter, und es werden dann entsprechend viele („0“ für alle) Datensätze zurückgegeben. In diesem Fall müssen „HTreeNodeIDs“ und „BasicCharacteristicNumbers“ genau einen Wert enthalten !
tinyint3.5.12

Rückgabe

(parameterunabhängig)

Spaltenname Beschreibung SQL-Datentyp4) ab Version
MonthEin Monat im Jahr „Year“, der im gewünschten Zeitraum liegt. Immer „NULL“, falls „SummarizeMonths = 1“ angegeben wurde.
tinyint3.5.5
YearEin Jahr zu dem der Monat „Month“ gehört (und das im gewünschten Zeitraum liegt). Immer „NULL“, falls „SummarizeMonths = 1“ angegeben wurde.
smallint3.5.5
BasicCharacteristicNumberNummer einer Basis-Kennzahl
tinyint3.5.5
PersonIDID einer Person
integer3.5.5
Value1Eigenschaft von „PersonID“ zum 1. Merkmal, das in „PersonTypeSettings“ zur „PersonTypeID“ von „PersonID“ zum Schlüssel „PersonOutputCharacteristics“ konfiguriert ist (u. nicht für den Aufrufer kompl. lesend gesperrt ist, s. pm_GetPChAccRestrForUsers_Ad)
varchar(100)3.5.12
Value1RestrictedByPatternWas enthält „Value1“ (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, „Value1“ ist dann NULL
varchar(100)6.5.4
Value2Eigenschaft von „PersonID“ zum 2. Merkmal, das in „PersonTypeSettings“ zur „PersonTypeID“ von „PersonID“ zum Schlüssel „PersonOutputCharacteristics“ konfiguriert ist (u. nicht für den Aufrufer kompl. lesend gesperrt ist, s. pm_GetPChAccRestrForUsers_Ad)
varchar(100)3.5.12
Value2RestrictedByPatternWie „Value1RestrictedByPattern“ - nur eben auf „Value2“ bezogen
varchar(100)6.5.4
HTreeNodeIDID eines Elementes aus „HistoryTreeView“ (in dieser ist die Historie des gesamten Artikelbaums abgebildet)
integer3.5.5
DirectValueSumme der DIREKTEN Einträge zur Person „PersonID“ für das Element „HTreeNodeID“ zur Basis-Kennzahl „BasicCharacteristicNumber“ im Monat „Month/Year“ bzw. (falls „SummarizeMonths = 1“) im gesamten gewünschten Zeitraum
decimal(12,2)3.5.5
TotalValueSumme der GESAMTEN Einträge, also inkl. indirekter Einträge, zur Person „PersonID“ für das Element „HTreeNodeID“ zur Basis-Kennzahl „BasicCharacteristicNumber“ im Monat „Month/Year“ bzw. (falls „SummarizeMonths = 1“) im gesamten gewünschten Zeitraum
decimal(12,2)3.5.5
Sortierungen der Rückgabe

wenn GetTopX is NULL

  • Year (aufsteigend)
  • Month (aufsteigend)
  • BasicCharacteristicNumber (aufsteigend)
  • PersonID (aufsteigend)
  • HTreeNodeID (aufsteigend)

wenn GetTopX is NOT NULL

  • Year (aufsteigend)
  • Month (aufsteigend)
  • TotalValue (absteigend)
  • PersonID (aufsteigend)

Output-Parameter

Die Prozedur hat keine Output-Parameter.

Mögliche Return-Codes

Code Beschreibung Quelle 5)
-621Fehlender oder falscher Eintrag in PersonTypeSettingsnur 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
-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 abgebrochendirekt und indirekt
-502Die Parameter-Werte der Prozedur können nicht verarbeitet werden (kein passendes Trennzeichen)nur indirekt
-500Falsche Parameterdirekt und indirekt

XML-Schema

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

Historie

7.0.7 2015-01-29Interne Änderung : Datentyp-Erweiterung des „ReferenceKey“ [für „_mi_StartProcedure“-Aufruf]
6.5.4 2013-04-291. Anpassungen an aktuellen Code-Standard, u.a. wg. UTF8-Unterstützung
2. Implementierung des neuen Merkmal-Zugriffsbeschränkungen-Features [⇒ auch Hinweis in der Doku]
3. Neue Rückgabespalten „Value…RestrictedByPattern“
5.1.6 2006-09-141. Performance-Optimierung
2. Ab jetzt führt ein Wert kleiner als „1997“ für „FromYear“ oder „ToYear“ zum Fehler „-500“
5.1.5 2006-08-29Explizites „ORDER BY“ eingefügt, um die Sortierung der Rückgabemenge zu garantieren
4.0.15 2004-07-301. Aufruf der Prozeduren „_mi_StartProcedure“, „_mi_FinishProcedure“ und „_mi_ChooseParamValueSeperator“
2. Ausführen von „set transaction isolation level 1“ und „set rowcount 0“ zu Beginn der Prozedur
3. Konsequente Fehlerbehandlung
4.0.5 2003-10-04Verlagerung diverser „Settings“-Einträge auf entsprechende „PersonTypeSettings“-Einträge
4.0.0 2003-04-03Interner Fehler
3.5.20 2002-07-22
3.5.19 2002-06-17
3.5.14 2002-01-23
3.5.12 2001-10-17
3.5.5 2001-03-30Erstmalig 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 GET  'http://<partner>-<project>.dstore.de/default/engine/st_GetPersonPMStatistics_Ad?PersonIDs=<value>&FromMonth=<value>&FromYear=<value>'

Mit xmllint 6) formatierte Ausgabe:

curl -X GET  'http://<partner>-<project>.dstore.de/default/engine/st_GetPersonPMStatistics_Ad?PersonIDs=<value>&FromMonth=<value>&FromYear=<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'),
	'st_GetPersonPMStatistics_Ad',
		array(
			'PersonIDs' => '<value>',
			'FromMonth' => <value>,
			'FromYear' => <value>,
			// 'ToMonth' => NULL,
			// 'ToYear' => NULL,
			// 'BasicCharacteristicNumbers' => NULL,
			// 'HTreeNodeIDs' => NULL,
			// 'SummarizeMonths' => 0,
			// 'GetTopX' => NULL
		)
);
 
$service->execute($request);
 
			$xml_result = $request->getResponse()->getBody()->toSimpleXmlDocument();
			$ResultSet = $xml_result->getRowsAsArray();
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="st_GetPersonPMStatistics_Ad">
			<Parameters>
				<Parameter Name="PersonIDs"><!-- varchar value --></Parameter>
				<Parameter Name="FromMonth"><!-- tinyint value --></Parameter>
				<Parameter Name="FromYear"><!-- smallint value --></Parameter>
				<!-- <Parameter Name="ToMonth">NULL</Parameter> -->
				<!-- <Parameter Name="ToYear">NULL</Parameter> -->
				<!-- <Parameter Name="BasicCharacteristicNumbers">NULL</Parameter> -->
				<!-- <Parameter Name="HTreeNodeIDs">NULL</Parameter> -->
				<!-- <Parameter Name="SummarizeMonths">0</Parameter> -->
				<!-- <Parameter Name="GetTopX">NULL</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/st_getpersonpmstatistics_ad.txt · Zuletzt geändert: 11.01.2016 (Externe Bearbeitung)