Skip to content

Conversation

GMatuleviciute
Copy link

This pull request does not have a related issue as it's part of the delivery for development agreed directly with @altotovi @Groenbech96

Implementation

Implements OIOUBL (Danish UBL) format handling for electronic document processing.

Introduces structured format reader for parsing OIOUBL invoices, credit notes, and reminders into draft purchase documents. Supports multiple vendor lookup strategies including VAT registration number, GLN, and participant identifier matching.

Extends document type enumeration to support purchase credit memos and issued reminders with appropriate draft finishing implementations.

Enables Danish businesses to process incoming electronic documents in the standardized OIOUBL format through the existing e-document framework.

Important

This Pull request depends on #28983

Fixes #

AndriusAndrulevicius and others added 8 commits August 1, 2025 14:36
Implements comprehensive OIOUBL (Danish UBL) format handling for electronic document processing.

Introduces structured format reader for parsing OIOUBL invoices, credit notes, and reminders into draft purchase documents. Supports multiple vendor lookup strategies including VAT registration number, GLN, and participant identifier matching.

Extends document type enumeration to support purchase credit memos and issued reminders with appropriate draft finishing implementations.

Enables Danish businesses to process incoming electronic documents in the standardized OIOUBL format through the existing e-document framework.
…odeunit.al

Co-authored-by: Grasiele Matuleviciute <131970463+GMatuleviciute@users.noreply.github.com>
…odeunit.al

Co-authored-by: Grasiele Matuleviciute <131970463+GMatuleviciute@users.noreply.github.com>
…odeunit.al

Co-authored-by: Grasiele Matuleviciute <131970463+GMatuleviciute@users.noreply.github.com>
…odeunit.al

Co-authored-by: Grasiele Matuleviciute <131970463+GMatuleviciute@users.noreply.github.com>
Introduces new E-Document Type enum with extensible implementation support and proper interface assignments for purchase invoice and reminder processing.

Improves code maintainability by converting label variables to token constants with proper naming conventions and removes redundant comments throughout the XML parsing logic.

Adds support for credit note billing reference extraction and consolidates duplicate XML processing code for better readability.
@GMatuleviciute GMatuleviciute requested review from a team as code owners August 14, 2025 13:51
@GMatuleviciute GMatuleviciute changed the title [E-Document Formats][OIOUBL] - Migrate electronic formats to new purchase draft concept for e-invoicing (e-invoice preview) (OIOUBL )(DK localization) [E-Document Formats][OIOUBL] - Migrate electronic formats to new purchase draft concept for e-invoicing (e-invoice preview) (OIOUBL)(DK localization) Aug 14, 2025
Copy link
Contributor

Could not find linked issues in the pull request description. Please make sure the pull request description contains a line that contains 'Fixes #' followed by the issue number being fixed. Use that pattern for every issue you want to link.

@JesperSchulz JesperSchulz added the Integration GitHub request for Integration area label Aug 18, 2025
Scopes the import helper to the parsing routine to reduce global state and tighten dependencies.

Replaces a hardcoded length with MaxStrLen when copying the VAT identifier, avoiding magic numbers and preventing unintended truncation if the field size changes.
Introduces an integration test suite that validates end-to-end import of OIOUBL invoices into draft and finalized purchase documents, including UI-driven draft edits. Adds reusable XML parsing utilities (currency, string, number, date via XPath) to simplify readers and correctly handle non-LCY currency extraction. Adds a draft reset routine to clear purchase drafts linked to an e-document for clean retries.

Improves coverage and robustness of structured import, reduces parser duplication, and supports consistent behavior across localizations.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Integration GitHub request for Integration area

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants