code change · performancePlatform, DevOps & Performanceofficial - Microsoftreviewed - checked by Opus
#12307 Make UpgradeDefaultDimensions ParentId backfill set-based (via DataTransfer)
The UpgradeDefaultDimensions procedure now uses set-based DataTransfer operations instead of row-by-row processing to backfill ParentId fields in Default Dimension records, significantly reducing upgrade runtime on large tables.
- 8files
- 8AL files
- 1objects
Pull request · merged into main (BC30) on 2026-10-05 by dcenic · 8 files (+224 -72), 8 AL · performance · tier official · reviewed (checked by Opus)
What changed
- Replaces per-row Get and Modify with four set-based DataTransfer joins (Item, Customer, Vendor, Employee)
- Destination rows are filtered by Table ID and blank ParentId so entity types cannot cross-match
- Behavior is preserved while upgrade runtime no longer grows with row count
- Applied in the W1, AT, BE, CH, IT, NL, NO and RU upgrade codeunits
- Audit fields are not restamped, consistent with the sibling DataTransfer steps
AL objects touched
- Codeunit 104000 “Upgrade - BaseApp”, Base Application: modified
Also merged into
- #12316 into
releases/29.xon 2026-10-06
Context
- Work items: AB#652937
- Labels: Ownership: Manual, Team: Finance
- Systems: platform
- From the description: “Replace the loop with four set-based DataTransfer joins (Item, Customer, Vendor, Employee), consistent with the Parent Type / DimensionId steps in the same method.”
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).