#10578 [Extensibility Request] issue 30429: add events to disambiguate CRM integration table mappings
Four integration events are added to allow extensions to select the correct CRM integration table mapping when multiple mappings share the same table ID, enabling proper disambiguation in order-status updates, coupling, uncoupling, and match-based coupling scenarios.
- 3files
- 3AL files
- 3objects
Pull request · merged into main (BC30) on 2026-08-28 by onbuyuka · 3 files (+25 -0), 3 AL · feature · tier official · reviewed (checked by Opus)
What changed
- Four new IntegrationEvent publishers added: OnUpdateSalesOrdersOnBeforeFindIntegrationTableMapping, OnAfterInitialize, OnRemoveCouplingOnBeforeGetIntegrationTableMappingForUncoupling, OnMatchBasedCouplingOnBeforeGetIntegrationTableMappingForMatchBasedCoupling
- Events use read-only RecordRef parameters to allow subscribers to inspect source records without mutating caller state
- Addresses scenario where extensions have multiple same-table mappings (e.g., Sales Header quotes alongside standard orders)
- Thin event publishers marked with [IntegrationEvent(false, false)]
- Enables correct mapping resolution during CRM sync operations
AL objects touched
- Codeunit 5352 “CRM Order Status Update Job”, Base Application: modified
- Codeunit 5330 “CRM Integration Management”, Base Application: modified
- Table 5332 “Coupling Record Buffer”, Base Application: modified
Context
- Work items: AB#647520
- Labels: Team: Integrations
- Systems: integration
Source: metadata of a merged pull request in microsoft/BCApps (bcapps): title, labels, changed paths and counts, with a summary in our words. No source text and no description beyond one short quote (D10, D61).