Open Source Dokumentenmanagement
Dokumentation

Durchsuchbare Dokumentation aufrufen | Zurück zur Dokumentationsübersicht

Navigation: Dokumentationen agorum core > agorum core JavaScript-API


JavaScript-Bibliothek acaudit

Diese JavaScript-Bibliothek bietet Funktionen zum Abfragen von Audit-Einträgen. Informationen über die Einträge in der Audittabelle finden Sie hier: Struktur der Audittabelle

Verwendung


Binden Sie die Bibliothek stets am Anfang eines Skripts ein:

let al = require('/agorum/roi/customers/acaudit/js/lib/audit');

Verwendungsbeispiele


Suche über select()

Dieses Beispiel zeigt, wie Sie die Einträge in der Audittabelle mit der Funktion select() suchen können.

let al = require('/agorum/roi/customers/acaudit/js/lib/audit');

let result = al
  .query()
  .condition(al.CONDITIONS.OBJECT_NAME, 'test-audit-lib.*')
  .condition(al.CONDITIONS.OBJECT_CLASS_NAME, 'fileobject')
  .condition(al.CONDITIONS.ACTION_DATE_FROM, new Date('2024-08-01'))
  .condition(al.CONDITIONS.ACTION, al.ACTIONS.CREATE)
  .orderBy(al.FIELDS.ACTION_DATE, al.ORDER_DIRECTION.DESCENDING)
  .limit(10)
  .timeout(100)
  .select();

result;

In diesem Beispiel erhalten Sie folgende Rückgabe (hier beschränkt auf einen Eintrag):

[ {
  "date" : "2024-08-26T09:54:21.809Z",
  "leftObjectName" : "",
  "commitId" : 1724052141331,
  "userName" : "roi",
  "objectUuid" : "2b350f00-6391-11ef-85e9-02420a0a0004",
  "rightObjectUuid" : null,
  "objectClassName" : "FILEOBJECT",
  "rightObjectName" : "",
  "leftObjectUuid" : null,
  "userUuid" : "714614d0-ce62-11e0-b47a-0800276e2399",
  "objectName" : "test-audit-lib.js",
  "action" : "create",
  "id" : 5331406,
  "referenceObjectId" : 5331405
} ]

Abfrage mit get()

Das folgende Beispiel zeigt, wie Sie gezielt die Informationen zu einem Audit-Eintrag mit get(id) abfragen können.

let al = require('/agorum/roi/customers/acaudit/js/lib/audit');

// get details of an audit entry, including attributes
al.get(1310509);

In diesem Beispiel erhalten Sie folgende Rückgabe:

{
  "date" : "2024-06-20T16:50:10.943Z",
  "commitId" : 1717776662147,
  "userName" : "roi",
  "objectUuid" : "285f62d0-2f25-11ef-8510-02420a0a000a",
  "rightObjectUuid" : null,
  "objectClassName" : "FILEOBJECT",
  "leftObjectUuid" : null,
  "userUuid" : "714614d0-ce62-11e0-b47a-0800276e2399",
  "objectName" : "test-audit-lib.js",
  "action" : "create",
  "attributes" : {
    "CHARACTERSET" : "",
    "BLOCKSIZE" : 524288,
    "DELETOR" : 0,
    "CONTENTQUOTAOBJECT" : 0,
    "OWNER" : 11000,
    "ISFOLDER" : false,
    "DESCRIPTION" : "",
    "CREATOR" : 11000,
    "MEDIA" : 0,
    "TIMEPHASEDACTIONDATE" : 0,
    "FLAGS" : 32,
    "CONTENT" : 1310508,
    "LASTMODIFYDATE" : 1.718902112607E12,
    "UUID" : "285f62d0-2f25-11ef-8510-02420a0a000a",
    "MAINOBJECT" : 0,
    "CLASSID" : 3,
    "LANGUAGE" : "",
    "OBJECTTEXTKEY" : "",
    "LASTMODIFIER" : 11000,
    "BEHAVIOR" : "",
    "CREATEDATE" : 1.718898341429E12,
    "ACL" : 12001,
    "SYSTEMFLAGS" : 4224,
    "NAME" : "test-audit-lib.js",
    "CONTENTSIZE" : 403,
    "TIMEPHASEDACTION" : "",
    "UPDATEDATE" : 1.718902210941E12,
    "FORMATOBJECT" : 10100,
    "LASTCONTENTMODIFYDATE" : 1.718902112607E12,
    "READONLY" : false
  },
  "id" : 1310509,
  "referenceObjectId" : 1310508,
  "info" : "CopyUtils"
}

Funktionen


query

Initialisiert ein neues Abfrageobjekt, um Abfragen an die Audittabelle zu erstellen und auszuführen.

Syntax

let result = al.query();
 
Rückgabewert
Ein Abfrageobjekt, das Methoden zum Hinzufügen von Bedingungen, Sortieren, Begrenzen und Ausführen der Abfrage bereitstellt.

condition

Fügt der Abfrage eine Bedingung hinzu, um die Ergebnisse basierend auf dem angegebenen Feld und Wert zu filtern.

Syntax

condition(field, value);
Parameter
Parameter Beschreibung Pflicht
field Gibt das Feld (die Datenbankspalte) an, auf das die Bedingung angewendet werden soll. ja
value Gibt den Wert an, auf den der Eintrag in der Datenbankspalte zutreffen soll. ja
 
Beispiel
query.condition(al.CONDITIONS.OBJECT_NAME, 'test-audit-lib.*');

orderBy

Gibt die Reihenfolge an, in der die Ergebnisse zurückgegeben werden sollen.

Syntax

orderBy(field, direction)
Parameter
Parameter Beschreibung Pflicht
field Gibt das Feld (die Datenbankspalte) an, nach der die Ergebnisse sortiert werden sollen. ja
direction Gibt an, in welcher Reihenfolge die Werte der angegebenen Spalte sortiert werden sollen. ja
 
Beispiel
query.orderBy(al.FIELDS.ACTION_DATE, al.ORDER_DIRECTION.DESCENDING);

limit

Begrenzt die Anzahl der von der Abfrage zurückgegebenen Ergebnisse.

Syntax

limit(number)
Parameter
Parameter Beschreibung Pflicht
number Die maximale Anzahl der zurückzugebenden Ergebnisse. ja
 
Beispiel
query.limit(50);

timeout

Legt die maximale Zeit fest, die für die Ausführung der Abfrage erlaubt ist.

Syntax

timeout(milliseconds)
Parameter
Parameter Beschreibung Pflicht
timeout Die Timeout-Dauer in Millisekunden. ja
 
Beispiel
query.timeout(100);

select

Führt die erstellte Abfrage aus und gibt die Ergebnisse zurück.
 
Syntax
let result = al.query.select();

Rückgabewert

Ein Array von Audit-Einträgen, die den angegebenen Bedingungen entsprechen.

get

Ruft die Details eines bestimmten Audit-Eintrags anhand seiner ID ab, einschließlich der Attribute.

Syntax

get(id)
Parameter
Parameter Beschreibung Pflicht
id Die ID des abzurufenden Audit-Eintrags. ja
 
Rückgabewert
Ein Objekt, das die Details des angegebenen Audit-Eintrags enthält.
 
Beispiel
al.get(1310509);