Liefert eine sogenannte Häufigkeits-Statistik für Artikel-Elemente. Es werden für Elemente einer bestimmten Hierarchie unterhalb eines Bereiches (→ „DomainTreeNodeID“) die Statistiken aus „DSS_StatisticData“ zu den Basis-Kennzahlen
in einem (anzugebenden) Zeitraum herangezogen und SUMMEN gebildet. Zusätzlich errechnet die Prozedur aus diesen Summen jeweils den sogenannten „VBO-Index“ („VBO“ steht für „View - Bying Interest - Order“), der einfach die drei Kennzahlen gewichtet (→ „Weight…“-Parameter) und zu einer Kennzahl zusammenfaßt.
Anmerkung zum Parameter „IncludeNodesWithoutTreeNodeID“ :
Die Daten in „DSS_StatisticData“ sind jeweils zu einer „HTreeNodeID“ (Erläuterungen siehe im_GetHTreeNodeID_Pu) gespeichert. Da es zu jeder „NodeID“ eine „HTreeNodeID“ gibt, der keine „TreeNodeID“ zugeordnet ist (um z.B. statistische Daten zu Elementen aus einem Suchergebnis speichern zu können), entscheidet „IncludeNodesWithoutTreeNodeID“, ob diese Elemente auch berücksichtigt werden sollen („1“) oder nicht („0“).
Hinweise :
1. Um solche Statistiken zu erhalten, muß die Tabelle „DSS_StatisticData“ durch Aufruf von st_CopyFromOLTPtoDSS_Ad in regelmäßigen Abständen gefüllt werden.
2. Wie lange die Daten in „DSS_StatisticData“ gehalten werden, ist in „Settings“ zum Schlüssel „MaxDaysInDSS_StatisticData“ hinterlegt. Sollten für den angegebenen Zeitraum nicht mehr alle Daten vorhanden sein, bricht die Prozedur mit dem Return-Code “-410„ ab.
3. ACHTUNG : Es werden nur Elemente des AKTUELLEN Artikelbaums berücksichtigt !
HTTP-Method | GET |
HTTP-Auth | Optional |
Tags | |
Engine-Kategorie | statistics |
Engine-Typ | Daten-Ermittlung |
Letzte Aktualisierung | 7.0.7 (2015-01-29) |
Name 1) | Standard-Wert | Beschreibung 2) | SQL-Datentyp3) | ab Version |
---|---|---|---|---|
DomainTreeNodeID | 0 | ID eines Elementes im Artikelbaum, für dessen Nachfolger (auf der Hierarchie „GroupByNodesOnLevel“) die Häufigkeits-Statistiken ausgegeben werden sollen | integer | 3.5.5 |
FromDate | Start-Zeitpunkt des zu untersuchenden Zeitraums | datetime | 3.5.5 | |
ToDate | End-Zeitpunkt des zu untersuchenden Zeitraums. Bei Angabe von „NULL“ wählt die Prozedur den aktuellen Zeitpunkt. | datetime | 3.5.5 | |
GroupByNodesOnLevel | 5 | Es werden nur Elemente unterhalb von „DomainTreeNodeID“ berücksichtigt, die diese Hierarchie besitzen | tinyint | 3.5.5 |
IsLevelID | 1 | Bei „GroupByNodesOnLevel“ handelt es sich um… „0“ : die Nummer einer Hierarchie („LevelNo“) „1“ : die ID einer Hierarchie („LevelID“) | bit | 3.5.5 |
GroupByNodeCharacteristicID | NULL | ID eines Merkmal. Falls angegeben, werden die Elemente unterhalb von „DomainTreeNodeID“ nach den Eigenschaften zu diesem Merkmal gruppiert und die Summen der Kennzahlen pro Eigenschaft gebildet (siehe Rückgabespalten „FrequencyOf…“). | smallint | 3.5.5 |
OnlyValuesInOneID | 0 | Falls „1“, werden die Elemente unterhalb von „DomainTreeNodeID“ nach den in „tempdb.dbo.OneID“ angegeben Eigenschaften („ValueID“s) gruppiert und die Summen der Kennzahlen pro Eigenschaft gebildet (siehe Rückgabespalten „FrequencyOf…“). | bit | 3.5.5 |
Weight_Views | 0.2 | Gewichtung (Wert zwischen 0 und 1) der „Views“ (Summen zur Kennzahl mit „BasicCharacteristicNumber = 1“) für den „VBO-Index“ (siehe gleichnamige Rückgabespalte). Es muß gelten : „Weight_Views + Weight_BuyingInterest + Weight_Order = 1“ ! | decimal(5,4) | 3.5.5 |
Weight_BuyingInterest | 0.3 | Gewichtung (Wert zwischen 0 und 1) der „BuyingInterests“ (Summen zur Kennzahl mit „BasicCharacteristicNumber = 2“) für den „VBO-Index“ (siehe gleichnamige Rückgabespalte). Es muß gelten : „Weight_Views + Weight_BuyingInterest + Weight_Order = 1“ ! | decimal(5,4) | 3.5.5 |
Weight_Order | 0.5 | Gewichtung (Wert zwischen 0 und 1) der „Orders“ (Summen zur Kennzahl mit „BasicCharacteristicNumber = 4“) für den „VBO-Index“ (siehe gleichnamige Rückgabespalte). Es muß gelten : „Weight_Views + Weight_BuyingInterest + Weight_Order = 1“ ! | decimal(5,4) | 3.5.5 |
IncludeDeactivatedNodes | 1 | „0“ : Nur aktive Elemente unterhalb „DomainTreeNodeID“ berücksichtigen „1“ : Auch inaktive Elemente unterhalb „DomainTreeNodeID“ berücksichtigen | bit | 3.5.5 |
IncludeNodesWithoutTreeNodeID | 0 | siehe Beschreibung | bit | 3.5.5 |
OrderResultByColumn | 1 | Gibt an, nach welcher Spalte (1 bis 6) die Ergebnismenge sortiert werden soll. Bei Angabe von „1“ oder „2“ wird aufsteigend sortiert, sonst absteigen. | tinyint | 3.5.5 |
GetTopX | NULL | Anzahl der auszugebenen Datensätze. Bei einer Sortierung nach einer der Spalten „3“ bis „6“ (→ OrderResultByColumn“) erhält man so eine „Top X“-Liste (daher der Name des Parameters). | tinyint | 3.5.5 |
Spaltenname | Beschreibung | SQL-Datentyp4) | ab Version |
---|---|---|---|
FrequencyOf_ID | ID des Elementes auf das sich die Summen beziehen, also entweder die ID eines Artikel-Elementes oder die ID einer Eigenschaft (falls eine „GroupByNodeCharacteristicID“ angegeben wurde oder Eigenschaften in „tempdb.dbo.OneID“ übergeben wurden) | integer | 3.5.5 |
FrequencyOf_Description | Bezeichnung des Elementes „FrequencyOf_ID“ - also entweder eine „NodeDescription“ oder ein „Value“ | varchar(1000) | 3.5.5 |
Views | Summe der „Views“ (Werte zur Basis-Kenzahl mit „BasicCharacteristicNumber = 1“) zum Element „FrequencyOf_ID“ im Zeitraum „FromDate“ bis „ToDate“ | decimal(12,2) | 3.5.5 |
BuyingInterests | Summe der „Kaufinteressen“ (Werte zur Basis-Kenzahl mit „BasicCharacteristicNumber = 2“) zum Element „FrequencyOf_ID“ im Zeitraum „FromDate“ bis „ToDate“ | decimal(12,2) | 3.5.5 |
Orders | Summe der „Bestellungen“ (Werte zur Basis-Kenzahl mit „BasicCharacteristicNumber = 4“ - es wird gezählt, wie OFT ein Produkt bestellt wurde) zum Element „FrequencyOf_ID“ im Zeitraum „FromDate“ bis „ToDate“ | decimal(12,2) | 3.5.5 |
VBO-Index | Zusammengesetzte Kennzahl nach der Formel : (Views * Weight_Views) + (BuyingInterests * Weight_BuyingInterest) + (Orders * Weight_Order) | decimal(12,2) | 3.5.5 |
wenn OrderResultByColumn = 1
wenn OrderResultByColumn = 2
wenn OrderResultByColumn = 3
wenn OrderResultByColumn = 4
wenn OrderResultByColumn = 5
wenn OrderResultByColumn NOT IN (1,2,3,4,5)
Die Prozedur hat keine Output-Parameter.
Code | Beschreibung | Quelle 5) |
---|---|---|
-621 | Fehlender oder falscher Eintrag in PersonTypeSettings | nur indirekt |
-599 | Lizenz ist ungültig oder abgelaufen | 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 | 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 | nur indirekt |
-500 | Falsche Parameter | direkt und indirekt |
-410 | Für den Zeitraum der Auswertung sind nicht mehr alle Daten vorhanden | nur direkt |
-283 | Der Benutzer hat keine Berechtigung, Eigenschaften zu diesem(n) Merkmal(en) zu ermitteln | nur direkt |
Die Rückgabe erfolgt als XML-Dokument welches gegen das Schema Response/EngineProcedure_v1_0.xsd validiert.
7.0.7 | 2015-01-29 | Interne Änderung : Datentyp-Erweiterung des „ReferenceKey“ [für „_mi_StartProcedure“-Aufruf] |
7.0.1 | 2013-08-07 | 1. Datentyp der Rückgabespalte „FrequencyOf_Description“ hat sich erweitert ⇒ Auch Anpassung der Doku 2. Anpassungen des Quellcodes an den aktuellen Standard |
5.1.5 | 2006-08-29 | Fehler : „LockedNodeCharacteristics“ wurde bisher gar nicht beachtet ! |
5.1.1 | 2006-04-05 | Optimierung des Zugriffs auf „NodeProperties“ (bedingt durch die Änderung dieser Tabelle in 5.1.0) |
4.0.15 | 2004-07-30 | 1. Aufruf der Prozeduren „_mi_StartProcedure“ und „_mi_FinishProcedure“ 2. Ausführen von „set transaction isolation level 1“ und „set rowcount 0“ zu Beginn der Prozedur 3. Konsequente Fehlerbehandlung |
4.0.1 | 2003-05-16 | Ab jetzt wird berücksichtigt, daß in „NodeProperties“ auch Gültigkeitszeiträume in der Zukunft vorhanden sein können ! |
3.5.14 | 2002-01-23 | |
3.5.5 | 2001-03-30 | 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/st_GetDSS_Index_Frequency_Ad?FromDate=<value>&ToDate=<value>'
Mit xmllint 6) formatierte Ausgabe:
curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/st_GetDSS_Index_Frequency_Ad?FromDate=<value>&ToDate=<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'), 'st_GetDSS_Index_Frequency_Ad', array( 'FromDate' => <value>, 'ToDate' => <value>, // 'DomainTreeNodeID' => 0, // 'GroupByNodesOnLevel' => 5, // 'IsLevelID' => 1, // 'GroupByNodeCharacteristicID' => NULL, // 'OnlyValuesInOneID' => 0, // 'Weight_Views' => 0.2, // 'Weight_BuyingInterest' => 0.3, // 'Weight_Order' => 0.5, // 'IncludeDeactivatedNodes' => 1, // 'IncludeNodesWithoutTreeNodeID' => 0, // 'OrderResultByColumn' => 1, // 'GetTopX' => 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="st_GetDSS_Index_Frequency_Ad"> <Parameters> <Parameter Name="FromDate"><!-- datetime value --></Parameter> <Parameter Name="ToDate"><!-- datetime value --></Parameter> <!-- <Parameter Name="DomainTreeNodeID">0</Parameter> --> <!-- <Parameter Name="GroupByNodesOnLevel">5</Parameter> --> <!-- <Parameter Name="IsLevelID">1</Parameter> --> <!-- <Parameter Name="GroupByNodeCharacteristicID">NULL</Parameter> --> <!-- <Parameter Name="OnlyValuesInOneID">0</Parameter> --> <!-- <Parameter Name="Weight_Views">0.2</Parameter> --> <!-- <Parameter Name="Weight_BuyingInterest">0.3</Parameter> --> <!-- <Parameter Name="Weight_Order">0.5</Parameter> --> <!-- <Parameter Name="IncludeDeactivatedNodes">1</Parameter> --> <!-- <Parameter Name="IncludeNodesWithoutTreeNodeID">0</Parameter> --> <!-- <Parameter Name="OrderResultByColumn">1</Parameter> --> <!-- <Parameter Name="GetTopX">NULL</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>