Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

#27057 EDocument Connector for Tietoevry #27233 #27626

Open
wants to merge 30 commits into
base: main
Choose a base branch
from

Conversation

Roglar01
Copy link

@Roglar01 Roglar01 commented Nov 13, 2024

E-Documents connector interface implementation between Business Central and Tietoevry

Work Item(s)
Fixes #27057
Fixes AB#541808

@Roglar01 Roglar01 requested a review from a team as a code owner November 13, 2024 12:47
@Roglar01 Roglar01 requested a review from VDTemp November 13, 2024 12:47
@github-actions github-actions bot added the linked Issue is linked to a Azure Boards work item label Nov 13, 2024
@JesperSchulz JesperSchulz added the Integration GitHub request for Integration area label Nov 14, 2024
@microsoft microsoft deleted a comment from github-actions bot Nov 20, 2024
Copy link
Contributor

@Groenbech96 Groenbech96 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New interface will break build as we discussed. The filenames do not follow code convention :)

@Roglar01
Copy link
Author

@Groenbech96 I know. Work in progress here. Will update next week.

@Roglar01 Roglar01 requested a review from Groenbech96 November 26, 2024 12:21
Copy link
Contributor

@Groenbech96 Groenbech96 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very cool, good start. Will review further later.

@Groenbech96
Copy link
Contributor

Error: AA0215 The file Objects.PermissionSet.al has an incorrect name. The valid name is TietoevryObjects.PermissionSet.al.
Error: AA0215 The file Read.PermissionSet.al has an incorrect name. The valid name is TietoevryRead.PermissionSet.al.
Error: AA0215 The file Edit.PermissionSet.al has an incorrect name. The valid name is TietoevryEdit.PermissionSet.al.
Error: AA0215 The file TeitoevryEDocConnectorEdit.PermissionSetExt.al has an incorrect name. The valid name is TietoevryEDocConnectorEdit.PermissionSetExt.al.
Error: AA0215 The file EDocFormat.EnumExt.al has an incorrect name. The valid name is EDocFormatExt.EnumExt.al.
Error: AA0215 The file EDocumentImpl.al has an incorrect name. The valid name is TietoevryEDocument.Codeunit.al.
Error: AA0215 The file Cod6398.FormatEvents.al has an incorrect name. The valid name is FormatEvents.Codeunit.al.
Error: AA0215 The file TietoevryEDocImport.al has an incorrect name. The valid name is TietoevryEDocumentImport.Codeunit.al.
Error: AA0137 Variable 'EDocumentAttachmentGen' is unused in '"Tietoevry E-Document Import"'.
Error: AA0137 Variable 'EDocument' is unused in 'ParseCreditMemo'.
Error: AA0137 Variable 'EDocument' is unused in 'ParseInvoice'.

@Roglar01
Copy link
Author

In file /Formats/TietoevryEDocImport.Codeunit I have an issue with the fact that the protection level on EDocumentAttachmentGen.Insert() procedure makes me unable to use it from this app. Can you consider changing the protection level (from internal to public), allowing me to complete the format implementation without duplicating code? "pragma warning disable AA0137" is there to suppress all warnings related to this. @Groenbech96

Copy link
Contributor

@Groenbech96 Groenbech96 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull the commit i made above.
Left comments on the rest.

EDocumentService: Record "E-Document Service";
ConnectionSetup: Record "Connection Setup";
begin
if not IsBISBilling then
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If I understand this event subscriber correctly then this will always change the content as soon as a connectionsetup exists and an e-document service exists for tietoevry.

Is there any chance to find out if this document will be transferred via this e document service?

If this isn't possible then there should be other mechanism to prevent conflicts with other e document services that might be installed in parallel.

@Roglar01
Copy link
Author

Roglar01 commented Dec 18, 2024 via email

@DanielGoehler
Copy link

No, the code exits if there is no Service Integration to Tietoevry.. if not IsBISBilling then exit; if not ConnectionSetup.Get() then exit; EDocumentService.SetRange("Service Integration V2", EDocumentService."Service Integration V2"::Tietoevry); if not EDocumentService.FindFirst() then exit;

@Roglar01 Your response seems rather quick. In FormatEvents.Codeunit.al, there are several cases where checks are missing in "PEPPOL Management_OnAfterGetAccountingSupplierPartyLegalEntityByFormat" and "PEPPOL Management_OnAfterGetAccountingSupplierPartyInfoByFormat". Additionally, you should verify whether the export is intended for your specific service.

What happens if a customer uses multiple integrations? Will your code still be executed inappropriately in such cases?

@Roglar01
Copy link
Author

Roglar01 commented Dec 23, 2024 via email

@DanielGoehler
Copy link

@Roglar01 The situation is even worse. You blindly copied this poor design and refuse to take responsibility for your code.

@Roglar01
Copy link
Author

Roglar01 commented Dec 23, 2024 via email

@DanielGoehler
Copy link

@Roglar01 My remarks are not meant to be hostile; I apologize if they came across that way. However, I am indeed frustrated because if this code, as it stands, ends up in Business Central, and my customers experience issues, I will be the one dealing with troubleshooting, creating a Microsoft support case, and waiting for a fix. Meanwhile, my customers will be upset, questioning why there isn’t better quality control at Microsoft for updates.

@DanielGoehler
Copy link

@Roglar01 You mentioned that you used the Avalara Connector as a baseline. I took a quick look and didn’t notice any problematic event subscribers. (If I had, I would have suggested to the product team that those should be fixed as well.)

@DanielGoehler
Copy link

@Groenbech96 Will the Tietoevry Conncetor App be automatically installed in the next update after the pull request is completed, or will it require manual installation via AppSource?

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 linked Issue is linked to a Azure Boards work item
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[BC Idea]: Enable connector with Tietoevry for E-Documents
6 participants