Gibt definierte Sortier-Kriterien für Hauptbeiträge von Foren aus.
Hintergrund :
fo_GetMainPostings_Pu liefert Hauptbeiträge eines Forums zurück. Dabei kann man angeben, nach welcher Sortierung die Ergebnismenge gebildet werden soll.
Die Konfiguration eines Sortier-Kriteriums kann mit fo_ModifyMainPostSortCrit_Ad vorgenommen werden.
Grundsätzliches zu Sortier-Kriterien :
1. Ist für ein Forum mindestens ein Sortier-Kriterium definiert und aktiv, wird bei jeglicher Änderung im Forum, die Hauptbeiträge betreffen (u.U. auch Antworten, je nach Konfigurierung der Optionen des Kriteriums), die Sortierung aktualisiert.
2. Ein Sortier-Kriterium kann aus maximal 3 Einzel-Kriterien bestehen. Zwei Hauptbeiträge werden anhand des ersten Kriteriums verglichen, und nur falls der Vergleich „unentschieden“ ausfällt, wird das evtl. vorhandene zweite Kriterium herangezogen. Nur wenn auch der zweite Vergleich nicht eindeutig ist, wird (sofern konfiguriert) das dritte Kriterium beachtet.
3. Wenn der Vergleich zweier Hauptbeiträge nicht eindeutig (trotz Anwendung aller Einzel-Kriterien) ist, wird willkürlich einer der beiden Beiträge „höher priorisiert“ - es gibt keine eindeutige Regel hierfür, die Entscheidung ist mehr oder weniger „zufällig“.
4. Zur Zeit gibt es zwei Arten von Einzel-Kriterien : Entweder die Eigenschaft zu einem Merkmal oder das Anlagedatum („PostDate“). Einzelheiten zum Vergleich (z.B. auf- oder absteigende Sortierung) sind durch die jeweiligen Options-Spalten („SortingOptions_…“) geregelt. Es handelt sich jeweils um die „Summe“ von folgenden einzelnen Optionen :
(Die Optionen „1“ und „2“ sowie „4“ und „8“ schließen sich natürlich aus, es muß aber ENTWEDER „1“ ODER „2“ bzw. „4“ ODER „8“ als Option gewählt sein !)
(Die folgenden Optionen regeln, ob bei der Ermittlung des für die Sortierung relevanten Wertes nur Beiträge beachtet werden sollen, die in einem bestimmten „Visible“-Status sind. Ist keine dieser Optionen angegeben, bedeutet dies, daß keine Filterung hinsichtlich des „Visible“-Status stattfindet !)
5. Es werden garantiert alle Hauptbeiträge des Forums bei einer Sortierung berücksichtigt. D.h. auch wenn z.B. durch die Optionen „32“ bis „256“ ein Hauptbeitrag quasi durch seinen „Visible“-Status herausfällt, bedeutet dies ja lediglich, daß der Wert zum Kriterium „NULL“ ist, und dies wird durch Option „4“ oder „8“ geregelt !
HTTP-Method | GET |
HTTP-Auth | Optional |
Alias | fo_GetMainPostingSortingCriteria_Ad |
Tags | |
Engine-Kategorie | forums |
Engine-Typ | Daten-Ermittlung |
Letzte Aktualisierung | 7.0.7 (2015-01-29) |
Name 1) | Standard-Wert | Beschreibung 2) | SQL-Datentyp3) | ab Version |
---|---|---|---|---|
ForumID | ID eines Forums, für das definierte Sortier-Kriterien ermittelt werden sollen | smallint | 5.0.4 | |
SortingCriteriaNo | NULL | (Eindeutige) Nummer eines Sortier-Kriteriums für das Forum „ForumID“, dessen Definition man sich ausgeben lassen möchte. Ist „NULL“ angegeben, werden alle Sortier-Kriterien ermittelt. | tinyint | 5.0.4 |
Spaltenname | Beschreibung | SQL-Datentyp4) | ab Version |
---|---|---|---|
SortingCriteriaNo | Nummer eines Sortier-Kriteriums für das Forum „ForumID“ (eindeutig innerhalb „ForumID“) | tinyint | 5.0.4 |
IsActive | Mögliche Werte : - „0“ : Sortierung ist inaktiv (ist also nicht verwendbar) - „1“ : Sortierung ist aktiv (ist also verwendbar) - „2“ : Sortierung wird initialisiert (ist also nicht verwendbar) | tinyint | 5.0.4 |
SortingCriteria_1st | Entweder - eine „PostingCharacteristicID“, oder - der Wert „-1“ (steht für das „PostDate“) Die „allgemeine“ Eigenschaft (zur „PersonID = 0“) zum Merkmal bzw. das „PostDate“ wird zum Vergleich zweier Hauptbeiträge herangezogen. | smallint | 5.0.4 |
SortingOptions_1st | Einstellungen/Optionen zum Sortier-Kriterium „SortingCriteria_1st“, u.a. ob die Sortierung auf- oder absteigend ist. Details : s. Beschreibung „Grundsätzliches zu Sortier-Kriterien“, Punkt 4 ! | smallint | 5.0.4 |
SortingCriteria_2nd | Entweder - eine „PostingCharacteristicID“, oder - der Wert „-1“ (steht für das „PostDate“) Die „allgemeine“ Eigenschaft (zur „PersonID = 0“) zum Merkmal bzw. das „PostDate“ wird zum Vergleich zweier Hauptbeiträge herangezogen. | smallint | 5.0.4 |
SortingOptions_2nd | Einstellungen/Optionen zum Sortier-Kriterium „SortingCriteria_2nd“, u.a. ob die Sortierung auf- oder absteigend ist. Details : s. Beschreibung „Grundsätzliches zu Sortier-Kriterien“, Punkt 4 ! | smallint | 5.0.4 |
SortingCriteria_3rd | Entweder - eine „PostingCharacteristicID“, oder - der Wert „-1“ (steht für das „PostDate“) Die „allgemeine“ Eigenschaft (zur „PersonID = 0“) zum Merkmal bzw. das „PostDate“ wird zum Vergleich zweier Hauptbeiträge herangezogen. | smallint | 5.0.4 |
SortingOptions_3rd | Einstellungen/Optionen zum Sortier-Kriterium „SortingCriteria_3rd“, u.a. ob die Sortierung auf- oder absteigend ist. Details : s. Beschreibung „Grundsätzliches zu Sortier-Kriterien“, Punkt 4 ! | smallint | 5.0.4 |
LastEditedAtDateAndTime | Zeitpunkt, an dem die Definition des Sortier-Kriteriums zuletzt geändert wurde | datetime | 5.0.4 |
LastActivatedAtDateAndTime | Zeitpunkt, an dem das Sortier-Kriteriums zuletzt aktiviert wurde (d.h. wann „IsActive“ zuletzt auf „1“ gesetzt wurde) | datetime | 5.0.4 |
(parameterunabängige Sortierung)
Die Prozedur hat keine Output-Parameter.
Code | Beschreibung | Quelle 5) |
---|---|---|
-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 | nur 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 | Interne Änderung : Datentyp-Erweiterung des „ReferenceKey“ [für „_mi_StartProcedure“-Aufruf] |
5.0.4 | 2005-09-26 | 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/fo_GetMainPostSortCriteria_Ad?ForumID=<value>'
Mit xmllint 6) formatierte Ausgabe:
curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/fo_GetMainPostSortCriteria_Ad?ForumID=<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'), 'fo_GetMainPostSortCriteria_Ad', array( 'ForumID' => <value>, // 'SortingCriteriaNo' => 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="fo_GetMainPostSortCriteria_Ad"> <Parameters> <Parameter Name="ForumID"><!-- smallint value --></Parameter> <!-- <Parameter Name="SortingCriteriaNo">NULL</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>