Skip to content

Conversation

GMatuleviciute
Copy link

@GMatuleviciute GMatuleviciute commented Aug 6, 2025

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 Spanish Factura-E electronic document format handler to enable reading and processing of incoming purchase invoices and credit memos (using new import process).

Provides XML parsing capabilities for Factura-E documents with automatic vendor lookup using VAT registration numbers, service participants, or name/address matching.

Includes support for multi-currency transactions, tax calculations, and unit of measure conversions from international standard codes.

Enables viewing of imported documents through dedicated purchase document reader interface.

Important

This Pull request depends on #28983

Fixes #

AndriusAndrulevicius and others added 14 commits July 30, 2025 15:57
Implements Spanish Factura-E electronic document format handler to enable reading and processing of incoming purchase invoices and credit memos.

Provides XML parsing capabilities for Factura-E documents with automatic vendor lookup using VAT registration numbers, service participants, or name/address matching.

Includes support for multi-currency transactions, tax calculations, and unit of measure conversions from international standard codes.

Enables viewing of imported documents through dedicated purchase document reader interface.
Adds comprehensive XML documentation comments to all public and internal procedures to improve code maintainability and developer experience.

Optimizes XML stream handling by eliminating intermediate variable and directly using CreateInStream method call.

Enhances unit of measure conversion logic with better variable naming and clearer control flow structure.

Updates database insert operation to use non-validated insert for better performance during line processing.
Remove documentation from local procedures
Cleans up the dependencies section by removing the unused E-Document Format for PINT A-NZ extension reference.

Streamlines the app configuration and eliminates unnecessary dependency declarations.
…aEHandler.Codeunit.al

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

Co-authored-by: Grasiele Matuleviciute <131970463+GMatuleviciute@users.noreply.github.com>
Reorders using statements alphabetically for better code organization.

Adds Locked = true attribute to namespace labels to prevent translation, ensuring XML namespace URIs remain constant across different language configurations.
Updates variable naming to follow AL coding standards where token constants use 'Tok' suffix instead of 'Lbl' suffix.

Changes apply to namespace URI constants and XPath expression constants used in XML processing.
@GMatuleviciute GMatuleviciute requested review from a team as code owners August 6, 2025 11:20
Copy link
Contributor

github-actions bot commented Aug 6, 2025

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.

@GMatuleviciute GMatuleviciute changed the title [E-DocumentFormats][Factura - E] - Migrate electronic formats to new purchase draft concept for e-invoicing (e-invoice preview) (Factura-E )(ES localization) [E-Document Formats][Factura - E] - Migrate electronic formats to new purchase draft concept for e-invoicing (e-invoice preview) (Factura-E )(ES localization) Aug 6, 2025
@JesperSchulz JesperSchulz added the Integration GitHub request for Integration area label Aug 13, 2025
Introduces a mock e-document format, validation helpers, and a sample Facturae XML to enable end-to-end tests for incoming invoice parsing and purchase document creation.

Adds a reusable test library to set up services, workflows, master data, and mappings, and to drive inbound/import scenarios. Updates the test app manifest (ID range, target, resource folders) and includes a test dependency.

Adds a routine to reset drafts by deleting the generated purchase draft, enabling clean test reruns and easier state management.
Removes OnPrem target to align tests with SaaS environments.

Skips triggers on bulk delete/modify during setup to speed execution and reduce side effects/permission issues, improving test stability.

Centralizes the test XML path in a reusable token and adds scenario-style comments for readability, plus minor cleanup.
Trims trailing blank line and removes final newline to align with repository formatting conventions.

No functional changes.
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