Die Datei `DEX_API.vb` wurde entfernt, einschließlich der Klasse `DEX_API`, die von `JobBase` geerbt und das Interface `IJob(Of ADSyncArgs)` implementiert hat.
Ein neuer Job-Typ `API_SQL` wurde zur Enumeration `JobType` in `JobConfig.vb` hinzugefügt.
Neue Dateien wurden hinzugefügt:
- `APISQLArgs.vb`: Enthält die Klasse `APISQLArgs` mit der Eigenschaft `ProfileID`.
- `APISQLConfig.vb`: Enthält die Klasse `APISQLConfig` mit den Eigenschaften `BaseUrl`, `Property1`, `Property2`, `Property3`.
- `DEX_APIJob.vb`: Enthält die Klasse `DEX_APIJob`, die von `JobBase` erbt und das Interface `IJob(Of APISQLArgs)` implementiert. Die Methoden `StartDex_API` und `ShouldStart` wurden hierhin verschoben und angepasst.
Die Projektdatei `Jobs.vbproj` wurde aktualisiert, um die neuen Dateien einzubinden und den Verweis auf `DEX_API.vb` zu entfernen.
Die Methode `Create_PDFfromXML` wurde vollständig überarbeitet, um die Struktur und Lesbarkeit zu verbessern. Die Logik wurde modularisiert, indem neue Methoden wie `InitializeFilePaths`, `InitializePDF`, `ProcessInvoiceData` und `FinalizePDF` eingeführt wurden.
Neue Hilfsklassen (`FilePaths`, `PdfRenderContext`, `InvoiceItemData`) wurden hinzugefügt, um die Datenstrukturierung und den Kontext zu verbessern. Die Verarbeitung von Bereichen und Folgeelementen wurde in spezifische Methoden ausgelagert (`HandleAreaSwitch`, `HandleFollowUpItem`).
Die Rendering-Logik wurde durch Methoden wie `RenderDisplayItem` und `RenderMultiLineText` vereinfacht. Neue Konstanten für Layout und Textformate wurden eingeführt, um die Standardisierung zu fördern.
Die Debug-Logs wurden erweitert, um detaillierte Einblicke in die Verarbeitungsschritte zu bieten. Die Änderungen verbessern die Wartbarkeit, Modularität und Robustheit der PDF-Erstellung erheblich.
Die Abhängigkeit von `Logging.vbproj` wurde in den Projektdateien `Base.vbproj`, `Database.vbproj` und `Encryption.vbproj` entfernt und durch eine direkte Referenz auf die vorkompilierte DLL `DigitalData.Modules.Logging.dll` ersetzt.
Ein neuer Bereich `INCLUDED_NOTE` wurde in der Klasse `XRechnungViewDocument` hinzugefügt, um Notizen und Hinweise zu verarbeiten und im PDF darzustellen. Die PDF-Logik wurde entsprechend erweitert, und ein neues Währungsformat `INVOICE_TOTAL_CHARGE_AMOUNT` wurde hinzugefügt.
Die Datei `logParser.txt` wurde in `Jobs.vbproj` eingebunden, und neue Debug-Logs dokumentieren den Ablauf der Methode `Create_PDFfromXML`.
Die Assembly-Version wurde auf `3.6.0.0` aktualisiert.
Die Abhängigkeit von `Logging.vbproj` wurde entfernt und durch die direkte Referenzierung der DLL `DigitalData.Modules.Logging.dll` ersetzt. Dies betrifft die Dateien `Config.vbproj` und `Interfaces.vbproj`.
Die Assembly-Version wurde in `AssemblyInfo.vb` von `3.5.1.0` auf `3.5.2.0` erhöht.
SQL-Abfragen in `ImportZUGFeRDFiles.vb` wurden angepasst, um `WITH (NOLOCK)` hinzuzufügen, um potenzielle Sperrprobleme zu vermeiden.