Konfiguration
Erstellen Sie eine Maske und eine Ansicht für die Anwendungsprotokolle (siehe technisches Handbuch).
Erstellen Sie (falls noch nicht vorhanden) eigene Anwendungsaktionen und fügen Sie alle notwendigen Aktionen ein. Sowie eine Aktion zur Anzeige der Ansicht für die Anwendungsprotokolle.
Hintergrundprozess
Erstellen Sie einen eigenen Hintergrundprozess im Ordner “Worker” für die Verarbeitung. Erstellen Sie im ersten Schritt einen eigenen Prozess, ohne die vereinfachten Möglichkeiten für die Massenverarbeitung.
Übertragen Sie die Funktionalität aus dem Igniter in den Worker. Dabei übergeben Sie dem Prozess die TaskExecutionId
von OperationOverSelectedRecordsIgniterBase
und laden Sie damit die selektierten Datensätze im Worker.
Stellen Sie sicher, das kein Datensatz doppelt verarbeitet wird, wenn beispielsweise der Server abstürzt.
Ausnahmebehandlung
Provozieren Sie eine Ausnahme beim dritten Datensatz beim ersten Start und kontrollieren sie das NLog und die Anwendungsprotokolle.
Warum wurde ein Anwendungsprotokoll geschrieben? Und wie kann man es verhindern?
Wurden alle Datensätze korrekt verarbeitet?
Massenverarbeitung
Erstellen Sie einen zweiten Worker auf Basis von TemporaryRecordMassWorkItem
. Implementieren sie dort die notwendige Funktionalität, verzögern Sie den Start und erlauben Sie das der Anwender den Prozess abbrechen kann.
Duplizieren Sie Ihre Aktion, dabei beachten Sie das sie der neuen Aktion eine eigene Id
geben und die Namen abändern. Stellen Sie die neue Aktion auf den neuen Worker um.
Anwendungsprotokoll
Erweitern Sie den zweiten Worker um ein Anwendungsprotokoll.
Ausnahmebehandlung
Provozieren Sie eine Ausnahme in BeforeProcessing()
beim ersten Start.
Provozieren Sie eine Ausnahme in ProcessSingleOrm()
beim zweiten Start und dem dritten Datensatz.
Was steht im Anwendungsprotokoll? Wurden alle Datensätze verarbeitet?
Warum gibt es einen Unterschied zum vorherigen Hintergrundprozess und was müsste man tun, um fehlerhafte Datensätze nochmal zu verarbeiten?