Verwendung des Ausgabetyps „Codeunit“
Der Ausgabetyp Codeunit kann verwendet werden, um Dokumente über eine benutzerdefinierte Business-Logik zu verarbeiten und zu versenden.
Anstatt Standard-Ausgabetypen wie E-Mail, FTP oder Download zu verwenden, wird eine Codeunit ausgeführt, die die generierten Dokumente an beliebige Ziele übertragen oder weiterverarbeiten kann.
Info
Der Ausgabetyp Codeunit eignet sich besonders für Integrationen, bei denen Dokumente Beispielsweise an externe Systeme oder APIs übertragen werden sollen.
Typische Anwendungsfälle
Mit diesem Feature können Sie beispielsweise:
- Dokumente über externe APIs hochladen (z. B. Dropbox, Google Drive oder eigene Repositories)
- Dokumente an Drittsysteme übertragen (z. B. DMS, Archivsysteme)
- Individuelle Verarbeitungslogik implementieren (z. B. Verschlüsselung, Validierung, Transformation)
- Integration in unternehmenseigene Workflows (z. B. automatische Approval-Prozesse starten)
Einrichtung
Um den Ausgabetyp Codeunit zu verwenden, müssen Sie ein entsprechendes Versandprofil einrichten und die gewünschte Codeunit hinterlegen.
- Öffnen Sie die Seite Versandprofile.
- Erstellen Sie ein neues Profil oder bearbeiten Sie ein bestehendes.
- Wählen Sie im Feld Ausgabetyp die Option Codeunit aus.
- Führen Sie die Aktion Optionen in der Menüleiste aus.
- Geben Sie im Feld Codeunit-ID die Nummer der Codeunit an, die ausgeführt werden soll (z. B.
50000aus dem untenstehenden Beispiel). - Konfigurieren Sie unter Versandprofil-Anhänge die Dokumente (Berichte, Dateien etc.), die von der Codeunit verarbeitet werden sollen.
Wenn dieses Versandprofil nun verwendet wird, um Dokumente zu versenden, wird anstelle eines Standardversands (wie E-Mail) die von Ihnen angegebene Codeunit ausgeführt.
Funktionsweise
Wenn ein Queue Entry mit dem Ausgabetyp Codeunit verarbeitet wird, führt Document Dispatch folgende Schritte aus:
- Alle konfigurierten Attachments (Berichte, Dateien, XML, etc.) werden generiert.
- Die im Dispatch Profile hinterlegte Codeunit wird über
CODEUNIT.Run()ausgeführt. - Die Codeunit erhält Zugriff auf die generierten Dokumente über die Queue Line Einträge.
- Die Codeunit verarbeitet und versendet die Dokumente entsprechend der implementierten Logik (z. B. API-Upload).
Beispiel: Dokumente per API in ein Repository hochladen
Das folgende Beispiel zeigt, wie Dokumente über eine REST API an ein externes Repository übertragen werden können.
Beispiel-Implementation
| AL - Custom Codeunit für API-Upload | |
|---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 | |
Vorteile
Wenn Sie den Ausgabetyp Codeunit verwenden, erhalten Sie unter anderem folgende Vorteile:
- Volle Kontrolle: Sie bestimmen, wohin und wie Dokumente gehandhabt werden
- Flexibilität: Jede API, jedes Protokoll, jede Business-Logik möglich
- Integration: Nahtlose Einbindung in den Document Dispatch Queue-Mechanismus
- Fehlerbehandlung: Nutzung der Standard-Error-Handling-Mechanismen von Document Dispatch
- Nachvollziehbarkeit: Uploads werden in der Queue History protokolliert