Commit 8f30c2f
Add Service Participants support for Company Information (#6372)
## Add Service Participants to Company Information
This PR enables Belgian companies using Peppol to configure Service
Participants on Company Information, so that incoming eDocuments using
Peppol Scheme 0208 (Enterprise Number) are correctly matched and
received.
### Changes Made
- [x] **1. Extend E-Document Source Type Enum**
- Added "Company" value (value 3) to enum 6123 "E-Document Source Type"
- [x] **2. Add Page Extension for Company Information**
- Created page extension 6165 for Company Information page
- Added "E-Document Service Participation" field similar to
Customer/Vendor extensions
- Field shows count of Service Participants and drills down to the list
- Uses empty string ('') as Participant code since Company Information
is a singleton
- [x] **3. Update Matching Logic (Backward Compatible)**
- Added new overload `ValidateReceivingCompanyInfo(EDocument,
EDocService)` that checks Service Participants first
- Preserved original `ValidateReceivingCompanyInfo(EDocument)` signature
for backward compatibility
- New overload calls the original method after Service Participant check
- `MatchCompanyByServiceParticipant` takes `EDocService` record
parameter
- Updated call site in EDocImport to pass `EDocService` record
- Priority order: Service Participant  VAT Reg No.  GLN 
Name/Address
- [x] **4. Add Tests**
- Added `ValidateReceivingCompanyInfoWithMatchingServiceParticipant`
test: Verifies validation succeeds when a matching Company Service
Participant exists
- Added
`ValidateReceivingCompanyInfoFallsBackToVATWhenNoServiceParticipant`
test: Verifies fallback to VAT/GLN matching when no Service Participant
matches
- [x] **5. Fix Build Warnings/Errors**
- Fixed AA0175: Use `IsEmpty()` instead of `FindFirst()` when only
checking record existence
- Fixed AL0118: Added missing `using
Microsoft.eServices.EDocument.Integration;` for `Service Integration`
enum
- Fixed test permissions: Added `TestPermissions = Disabled;` to allow
E-Document table inserts during tests
<!-- START COPILOT CODING AGENT TIPS -->
---
Ô£¿ Let Copilot coding agent [set things up for
you](https://github.com/microsoft/BCApps/issues/new?title=Ô£¿+Set+up+Copilot+instructions&body=Configure%20instructions%20for%20this%20repository%20as%20documented%20in%20%5BBest%20practices%20for%20Copilot%20coding%20agent%20in%20your%20repository%5D%28https://gh.io/copilot-coding-agent-tips%29%2E%0A%0A%3COnboard%20this%20repo%3E&assignees=copilot)
ÔÇö coding agent works faster and does higher quality work when set up
for your repo.
Fixes
[AB#620793](https://dynamicssmb2.visualstudio.com/1fcb79e7-ab07-432a-a3c6-6cf5a88ba4a5/_workitems/edit/620793)
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Groenbech96 <17690329+Groenbech96@users.noreply.github.com>
Co-authored-by: Magnus Hartvig Grønbech <magnushar@microsoft.com>1 parent ad923d7 commit 8f30c2f
5 files changed
Lines changed: 179 additions & 1 deletion
File tree
- src/Apps/W1/EDocument
- App/src
- Document
- Extensions
- Helpers
- Processing
- Test/src/Receive
Lines changed: 1 addition & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
| 15 | + | |
15 | 16 | | |
Lines changed: 59 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
Lines changed: 34 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
256 | 256 | | |
257 | 257 | | |
258 | 258 | | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
259 | 274 | | |
260 | 275 | | |
261 | 276 | | |
| |||
281 | 296 | | |
282 | 297 | | |
283 | 298 | | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
284 | 318 | | |
285 | 319 | | |
286 | 320 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
282 | 282 | | |
283 | 283 | | |
284 | 284 | | |
285 | | - | |
| 285 | + | |
286 | 286 | | |
287 | 287 | | |
288 | 288 | | |
| |||
Lines changed: 84 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
8 | 11 | | |
9 | 12 | | |
10 | 13 | | |
11 | 14 | | |
12 | 15 | | |
13 | 16 | | |
| 17 | + | |
14 | 18 | | |
15 | 19 | | |
16 | 20 | | |
| 21 | + | |
| 22 | + | |
17 | 23 | | |
18 | 24 | | |
19 | 25 | | |
| |||
48 | 54 | | |
49 | 55 | | |
50 | 56 | | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
51 | 135 | | |
0 commit comments