Automatische Ausgaben per PRINT+PLUS Task
Der PRINT+PLUS Task ermöglicht es, Ausgaben zeitgesteuert und automatisiert auszuführen, ohne dass cobra CRM geöffnet sein muss. Typische Einsatzszenarien sind:
-
Nächtliche Serienbriefe (z.B. täglicher Versand von Berichten)
-
Wiederkehrende Exporte in regelmäßigen Abständen (Daueraufgaben)
-
Automatisierte Dokumentenerstellung durch externe Systeme oder Skripte
Der Task wird als Kommandozeilen-Programm (PrintPlus.Task.exe) bereitgestellt und kann über die Windows-Aufgabenplanung oder andere Scheduler-Werkzeuge zeitgesteuert aufgerufen werden.
Funktionsweise
Der Task arbeitet mit einer Job-Warteschlange in der cobra-Datenbank. Der Ablauf ist:
-
Ein Job wird in der Datenbank angelegt – entweder durch ein PRINT+PLUS Skript, ein externes System oder manuell.
-
Die Windows-Aufgabenplanung startet PrintPlus.Task.exe in regelmäßigen Abständen.
-
Der Task prüft die Warteschlange, findet alle fälligen Jobs und führt diese nacheinander aus.
-
Nach der Ausführung wird der Status des Jobs aktualisiert (Erfolgreich oder Fehlgeschlagen).
Erfolgreich ausgeführte und fehlgeschlagene Jobs werden automatisch nach 30 Tagen aus der Datenbank entfernt.
Einrichtung
- Installationsverzeichnis
Der Task wird mit PRINT+PLUS ausgeliefert und befindet sich im Installationsverzeichnis. Stellen Sie sicher, dass die DateiPrintPlus.Task.exevorhanden ist. - Windows-Aufgabenplanung einrichten
- Öffnen Sie die Windows-Aufgabenplanung (
taskschd.msc). - Erstellen Sie eine neue Aufgabe:
- Name: z.B. "PRINT+PLUS Task - [Datenbankname]"
- Sicherheitsoptionen: Wählen Sie ein Benutzerkonto mit ausreichenden Rechten auf die Datenbank. Aktivieren Sie "Unabhängig von der Benutzeranmeldung ausführen". - Konfigurieren Sie einen Trigger (Zeitplan)
z.B. täglich um 02:00 Uhr, oder alle 15 Minuten wiederholen - Konfigurieren Sie die Aktion:
- Programm/Skript: Pfad zu
PrintPlus.Task.exe - Argumente hinzufügen: siehe Abschnitt "Aufruf-Parameter"
- Starten in: Verzeichnis, in dem
PrintPlus.Task.exeliegt
- Programm/Skript: Pfad zu
- Öffnen Sie die Windows-Aufgabenplanung (
Aufruf-Parameter
Der Task wird über die Kommandozeile mit folgenden Parametern aufgerufen:
PrintPlus.Task.exe <ADL-Pfad> [Benutzername] [PerformanceLog]
| Parameter | Pflicht | Beschreibung |
|---|---|---|
| ADL-Pfad | Ja | Vollständiger Pfad zur ADL-Datei der cobra-Datenbank |
| Benutzername | Nein | cobra-Benutzername, unter dem der Export ausgeführt wird. Wenn nicht angegeben, wird der Windows-Benutzername verwendet. |
| PerformanceLog | Nein | Beliebiger Wert (z. B. true). Wenn angegeben, werden zusätzliche Zeitmessungen im Log protokolliert. |
Jobs anlegen
Jobs werden in der Datenbanktabelle Ruthardt_PrintPlusTaskJobs angelegt. Dies geschieht in der Regel auf einem der folgenden Wege:
Über ein PRINT+PLUS Skript
In einem PRINT+PLUS Skript (IScriptAction) können Sie programmatisch neue Jobs in die Warteschlange einfügen. Dazu verwenden Sie die Klasse TaskJobsDbAccess und deren Methode Insert.
Über ein externes System
Externe Systeme können Jobs direkt in der Datenbanktabelle anlegen. Folgende Angaben sind erforderlich:
| Feld | Beschreibung |
|---|---|
| ConfigurationName | Name des PRINT+PLUS Ausgabeformats |
| RecordKeys | Kommagetrennte Liste der Datensatz-IDs (z. B. 1,2,3) |
| RecordsFilterSql | Alternativ: SQL-Abfrage, die die IDs als erste Spalte liefert |
| ExportFormat | 0 = Standardformat, 1 = PDF |
| Status | 0 (= Geplant) |
| ScheduledAtDate | Gewünschter Ausführungszeitpunkt (optional – wenn leer, wird der Job sofort beim nächsten Task-Lauf ausgeführt) |
| CreatedAt | Erstellungszeitpunkt |
Wichtig: Es muss entweder RecordKeys oder RecordsFilterSql angegeben werden (nicht beides leer).
Daueraufgaben (wiederkehrende Jobs)
Wird zusätzlich das Feld RescheduleMinutesInterval mit einem Minutenwert befüllt (z. B. 60 für stündlich), plant sich der Job nach jeder Ausführung automatisch neu ein. Er wird nicht gelöscht und bleibt dauerhaft in der Warteschlange.
Überwachung mit dem Task Monitor
Für die Überwachung der Task-Ausführung steht der PRINT+PLUS Task Monitor (PrintPlus.TaskMonitor.exe) zur Verfügung. Dieser prüft den Status von konfigurierten Ausgabeformaten und kann bei Fehlern benachrichtigen. Gehen Sie folgendermaßen vor, um diesen zu erstellen:
- Erstellen Sie eine Standardkonfiguration:
PrintPlus.TaskMonitor.exe defaultSettings
Dies erzeugt eine Datei MonitoringSettings.json im Programmverzeichnis.
-
Bearbeiten Sie die
MonitoringSettings.jsonund tragen Sie ein:- Den Pfad zur ADL-Datei
- Die zu überwachenden Ausgabeformat-Namen
-
Richten Sie den Task Monitor ebenfalls als Windows-Aufgabe ein, z. B. alle 30 Minuten.
Fehlerbehandlung
- Bei einem Fehler wird der Job-Status auf Fehlgeschlagen gesetzt und die Fehlermeldung in der Datenbank gespeichert.
- Fehlgeschlagene Daueraufgaben werden trotz Fehler automatisch neu eingeplant, damit sie beim nächsten Durchlauf erneut versucht werden.
- Detaillierte Fehlerinformationen finden Sie in der Log-Datei des Tasks.