Zum Hauptinhalt springen
Version: 2025.1.x

Commands verwalten

Über die Verwaltung von Commands können neue Commands erstellt sowie bestehende verändert oder gelöscht werden. Als Commands sind unterschiedliche Methodiken zur Verfügung gestellt, um Vorgänge und Prozesse in anderen Anwendungen und Systemen durchzuführen oder anzustoßen.

Command-Typen

  • Kommandos sind Befehle, welche über die Commandline ausgeführt werden, also beispielsweise wie für Batch-Skripte bei Windows oder Shell-Skripte bei Linux. Sie werden somit direkt auf der Kommandozeile des Servers ausgeführt und müssen dementsprechend auf dem Server konfiguriert sein.
touch /srv/dmc/commands/importEvent
  • DB-Prozuduren können ebenso als Command ausgeführt werden. Hierbei wird der Name der auszuführenden Datenbankprozedur verwendet. Dieser Aufruf erfolgt auf der genutzten Datenbank, daher ist hierbei die Syntax dieser im Hinblick auf Parameterübergabe und Ähnlichem zu berücksichtigen.
db_procedure(0,1)
  • Webservices können auch über die Commands angebunden werden. So dient hierbei ein JSON-String als Command-Ausführung, welcher die Merkmale des HTTP-Requests an den entsprechenden API-Endpunkt enthält. Folgende Felder können hierfür genutzt werden:
    • url beschreibt vollständige URL des Endpunkts.
    • method (optional) ist die verwendete HTTP-Methode des verwendeten Endpunkts. Wird das Feld nicht angegeben wird ein GET-Request verwendet. Die unterstützten Methoden sind: POST, PUT, PATCH, DELETE und GET.
    • body (optional) sind die zusätlichen Daten, welche bei einem HTTP-Request bei Methoden wie POST, PUT oder PATCH übergeben werden sollen.
    • header (optional) sind die Kopfzeilen eines HTTP-Requests. Hierbei können bestehende Felder überschrieben werden oder neue Felder, wie beispielsweise für Authentifizierungstoken, hinzugefügt werden.
{
"url": "http://localhost:8080/dmc/api/admin/refreshCache",
"method": "[post|put|patch|delete|get]", (optional, default get)
"body": { (optional)
"param1": "value1",
[...]
"paramX": "valueX"
},
"header": { (optional)
"param1": "value1",
[...]
"paramX": "valueX"
}
}

Commandverwaltung

Commandverwaltung

1. Tabellen filtern

Über den Tabellenfilter kann nach Tabellen gefiltert werden, um sich Commands dieser Tabellen anzeigen zu lassen.

2. Commands hinzufügen

Über „+“ können neue Commands hinzugefügt werden. Nach dem Klick auf „+“ erscheint ein Dialogfenster.

Commands hinzufügen

  1. Tabelle: Die Tabelle, innerhalb derer der Command ausgeführt werden kann.
  2. Command Name: Hier kann der Name des Commands festgelegt werden, welcher dann in der Auswahl bei der entsprechenden Tabelle zu sehen ist.
  3. Command-Typ: Hierüber kann die Art des Commands gewählt werden. Es stehen Kommando, DB-Prozedur und Webservice zur Auswahl.
  4. Command Ausführung: Hier wird der Command, je nach gewähltem Command-Typ ausformuliert.
  5. Ausführung ab QS-Stufe verhindern: Es besteht die Möglichkeit, dass Commands nur dann ausführbar sind, wenn keine QS-Regeln eines bestimmten Grades, also „Fehler“, „Warnung“ oder „Info“, verletzt sind. Ist „Niemals“ ausgewählt, kann das Command immer ausgeführt werden.
  6. Anzahl Sekunden die Command auf Abschluss QS-Prüfung wartet: Hierüber ist zu setzen, wie lange die Ausführung eines Commands bei laufender QS-Prüfung verzögert.

Integrierte Parameter

Es werden integrierte Parameter bei der Definition von Commands unterstützt. Diese sind

  • dmc_user - Benutzer, der das Command gestartet hat
  • dmc_table - Technischer Name der Tabelle, von der aus das Command gestartet wurde
  • dmc_table_uuid - Die UUID der entsprechenden Tabelle
  • dmc_command - Name des Commands, das aufgerufen wurde
  • dmc_command_uuid - UUID des entsprechenden Commands
  • dmc_category_uuid - UUID der Kategorie, in der die Tabelle liegt
  • dmc_date - Das aktuelle Datum zum Zeitpunkt des Aufrufs
  • dmc_datetime - Das aktuelle Datum + Uhrzeit zum Zeitpunkt des Aufrufs
Hinweis

Je nach Typ des Commands sieht die Verwendung unterschiedlich aus

  • :dmc_user - Bei SQL-Commands
  • ${dmc_date}, ${dmc_date:dd.MM.yyyy} - Bei Kommando/Webservice

Bei dmc_date und dmc_datetime kann im Fall der Kommandos zusätzlich ein Format übergeben werden. Bei SQL ist dies nicht notwendig, da der native Datenbanktyp übergeben wird.

SQL-Beispiel
db_procedure(0,:dmc_user)
Shell-Beispiel
/srv/dmc/commands/command.sh ${dmc_user}

3. Commands bearbeiten

Bestehende Commands können über die „Commands bearbeiten“-Schaltfläche geändert werden.

4. Commands kopieren

Um einen Command zu kopieren, so benutzt man die „Commands kopieren“-Schaltfläche. Hierbei selektiert man zunächst die zu kopierenden Elemente und klickt dann auf die Schaltfläche. Es öffnet sich ein Dialog, in welchem die Kopien bearbeitet und anschließend angelegt werden können.

5. Commands löschen

Bestehende Commands lassen sich über die Schaltfläche „Commands löschen“ löschen. Vor der endgültigen Löschung erscheint die Nachfrage, ob die ausgewählten Commands wirklich gelöscht werden sollen.

6. Commands aktualisieren

Über die Schaltfläche „Commands aktualisieren“ aktualisiert sich die Ansicht der Commands Übersicht.