code change · refactorFinanceofficial - Microsoftreviewed - checked by Opus

#11160 Ruleset hardening: promote three mechanical rules to Error

The BCApps base ruleset now treats AL0606, AA0161 and AA0448 as errors instead of warnings. Code across apps and layers was updated to remove deprecated with statements, narrowly scope intentional AssertError uses, and show localized captions instead of technical field and table names in messages.

Pull request · merged into main (BC30) on 2026-09-09 by JesperSchulz · 48 files (+506 -277), 23 AL · refactor · tier official · reviewed (checked by Opus)

What changed

  • AL0606: 17 deprecated with statements removed and record members qualified explicitly
  • AA0161: 29 intentional AssertError uses in test libraries kept under narrow, documented pragma scopes
  • AA0448: 50 FieldName/TableName expressions in displayed messages replaced with captions
  • Ruleset entries drop from 72 to 69; AL0424 stays a warning
  • New violations in the repository now fail compilation
  • Behaviour changes for users or extensions.

AL objects touched

Context

  • Work items: AB#640773
  • Labels: AL: Apps (W1), Ownership: Needs Review, Team: Other
  • Systems: finance, sales, development, integration, projects, administration, fixed-assets, purchasing

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).