Skip to content

Commit fa8cc4d

Browse files
committed
Mandatory Customer Data in Sales for xRechnung and ZUGFeRD
1 parent 22a14b0 commit fa8cc4d

File tree

4 files changed

+18
-8
lines changed

4 files changed

+18
-8
lines changed

Apps/DE/EDocumentDE/app/src/PEPPOL/EDocPEPPOLBIS30DE.Codeunit.al

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -237,6 +237,12 @@ codeunit 11035 "EDoc PEPPOL BIS 3.0 DE" implements "E-Document"
237237
IsHandled := true;
238238
end;
239239

240+
[EventSubscriber(ObjectType::Codeunit, Codeunit::"PEPPOL Validation", 'OnAfterCheckSalesDocument', '', false, false)]
241+
local procedure OnAfterCheckSalesDocument(SalesHeader: Record "Sales Header")
242+
begin
243+
SalesHeader.TestField("Sell-to E-Mail");
244+
end;
245+
240246
[EventSubscriber(ObjectType::Codeunit, Codeunit::"PEPPOL Management", 'OnAfterGetBuyerReference', '', false, false)]
241247
local procedure SetReferenceOnAfterGetBuyerReference(SalesHeader: Record "Sales Header"; var BuyerReference: Text)
242248
begin

Apps/DE/EDocumentDE/app/src/XRechnung/XRechnungFormat.Codeunit.al

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,19 +11,22 @@ using System.IO;
1111
using Microsoft.Sales.Customer;
1212
using Microsoft.Foundation.Company;
1313
using Microsoft.eServices.EDocument;
14+
using Microsoft.eServices.EDocument.IO.Peppol;
1415

1516
codeunit 13914 "XRechnung Format" implements "E-Document"
1617
{
1718
InherentEntitlements = X;
1819
InherentPermissions = X;
1920

2021
var
22+
EDocPEPPOLBIS30: Codeunit "EDoc PEPPOL BIS 3.0";
2123
EDocImportXRechnung: Codeunit "Import XRechnung Document";
2224

2325
procedure Check(var SourceDocumentHeader: RecordRef; EDocumentService: Record "E-Document Service"; EDocumentProcessingPhase: Enum "E-Document Processing Phase")
2426
begin
2527
CheckCompanyInfoMandatory();
2628
CheckBuyerReferenceMandatory(EDocumentService, SourceDocumentHeader);
29+
EDocPEPPOLBIS30.Check(SourceDocumentHeader, EDocumentService, EDocumentProcessingPhase);
2730
end;
2831

2932
procedure Create(EDocumentService: Record "E-Document Service"; var EDocument: Record "E-Document"; var SourceDocumentHeader: RecordRef; var SourceDocumentLines: RecordRef; var TempBlob: Codeunit "Temp Blob")

Apps/DE/EDocumentDE/app/src/ZUGFeRD/ExportZUGFeRDDocument.Codeunit.al

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -644,14 +644,12 @@ codeunit 13917 "Export ZUGFeRD Document"
644644
PaymentTermsDescriptionElement: XmlElement;
645645
DueDateElement: XmlElement;
646646
begin
647-
if PaymentTermsCode = '' then
648-
exit;
649-
if not PaymentTerms.Get(PaymentTermsCode) then
650-
exit;
651-
652647
PaymentTermsElement := XmlElement.Create('SpecifiedTradePaymentTerms', XmlNamespaceRAM);
653-
PaymentTermsDescriptionElement := XmlElement.Create('Description', XmlNamespaceRAM, PaymentTerms.Description);
654-
PaymentTermsElement.Add(PaymentTermsDescriptionElement);
648+
if PaymentTermsCode <> '' then
649+
if PaymentTerms.Get(PaymentTermsCode) then begin
650+
PaymentTermsDescriptionElement := XmlElement.Create('Description', XmlNamespaceRAM, PaymentTerms.Description);
651+
PaymentTermsElement.Add(PaymentTermsDescriptionElement);
652+
end;
655653

656654
DueDateElement := XmlElement.Create('DueDateDateTime', XmlNamespaceRAM);
657655
DueDateElement.Add(XmlElement.Create('DateTimeString', XmlNamespaceUDT, XmlAttribute.Create('format', '102'), FormatDate(DueDate)));
@@ -674,7 +672,7 @@ codeunit 13917 "Export ZUGFeRD Document"
674672
end;
675673

676674
if CompanyInformation."SWIFT Code" <> '' then begin
677-
PaymentMethodBICElement := XmlElement.Create('PayeePartyCreditorFinancialAccount', XmlNamespaceRAM);
675+
PaymentMethodBICElement := XmlElement.Create('PayeeSpecifiedCreditorFinancialInstitution', XmlNamespaceRAM);
678676
PaymentMethodBICElement.Add(XmlElement.Create('BICID', XmlNamespaceRAM, GetIBAN(CompanyInformation."SWIFT Code")));
679677
PaymentMethodElement.Add(PaymentMethodBICElement);
680678
end;

Apps/DE/EDocumentDE/app/src/ZUGFeRD/ZUGFeRDFormat.Codeunit.al

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,19 +11,22 @@ using Microsoft.Sales.History;
1111
using Microsoft.Purchases.Document;
1212
using Microsoft.eServices.EDocument;
1313
using System.IO;
14+
using Microsoft.eServices.EDocument.IO.Peppol;
1415

1516
codeunit 13920 "ZUGFeRD Format" implements "E-Document"
1617
{
1718
InherentEntitlements = X;
1819
InherentPermissions = X;
1920

2021
var
22+
EDocPEPPOLBIS30: Codeunit "EDoc PEPPOL BIS 3.0";
2123
EDocImportZUGFeRD: Codeunit "Import ZUGFeRD Document";
2224

2325
procedure Check(var SourceDocumentHeader: RecordRef; EDocumentService: Record "E-Document Service"; EDocumentProcessingPhase: Enum "E-Document Processing Phase")
2426
begin
2527
CheckCompanyInfoMandatory();
2628
CheckBuyerReferenceMandatory(EDocumentService, SourceDocumentHeader);
29+
EDocPEPPOLBIS30.Check(SourceDocumentHeader, EDocumentService, EDocumentProcessingPhase);
2730
end;
2831

2932
procedure Create(EDocumentService: Record "E-Document Service"; var EDocument: Record "E-Document"; var SourceDocumentHeader: RecordRef; var SourceDocumentLines: RecordRef; var TempBlob: Codeunit "Temp Blob")

0 commit comments

Comments
 (0)