---
id: change/bcapps/10516
type: change
title: "#10516 Ruleset hardening: promote AL0468, AL0520, AL0589, AL0611, AL0749, AW0004 to Error"
summary: Six AL compiler rules are promoted from Warning to Error severity in the base ruleset, with all existing accepted violations marked by pragmas at their source locations to enforce the rules going forward.
tier: official
language: en
tags:
  - refactor
  - main
  - bc30
  - tableextension intrastat jnl. batch czl
  - tableextension intrastat jnl. line czl
  - tableextension invoice post. buffer czl
  - tableextension paymentbuffer
  - tableextension oioubl-issuedfinchrgmemoheader
  - tableextension oioubl-issued reminder header
system: finance
review:
  state: reviewed
  by: opus
  at: "2026-10-08T02:07:24.573Z"
  flags: []
generated:
  at: "2026-10-08T01:26:53.141Z"
  pipeline: 0.2.0
  prompts:
    extract-change: 1
  input_hash: c3f9b761b4c1916d6355488e5f966d05dbb162b1
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/pull/10516
    title: "microsoft/BCApps#10516: Ruleset hardening: promote AL0468, AL0520, AL0589, AL0611, AL0749, AW0004 to Error"
    date: "2026-08-27"
    commit: c3f9b761b4c1916d6355488e5f966d05dbb162b1
    t: null
    quote: null
links:
  learn: []
  objects:
    - object/tableextension/31025-cz
    - object/tableextension/31026-cz
    - object/tableextension/11722-cz
    - object/tableextension/13621-dk
    - object/tableextension/13643-dk
    - object/tableextension/13638-dk
    - object/tableextension/13632-dk
    - object/tableextension/13646-dk
    - object/tableextension/13649-dk
    - object/tableextension/13630-dk
    - object/tableextension/13657-dk
    - object/tableextension/13655-dk
    - object/tableextension/18244-in
    - object/tableextension/12216-it
    - object/codeunit/1450-ca
    - object/tableextension/10687-no
    - object/tableextension/10675-no
    - object/tableextension/4853
    - object/pageextension/20631
    - object/pageextension/20659
    - object/pageextension/20657
    - object/codeunit/20165
    - object/page/20259
    - object/page/20283
    - object/codeunit/20301
    - object/tableextension/2025
    - object/table/2028
    - object/report/28160-au
    - object/report/10480-ca
    - object/page/2588
    - object/page/5353
    - object/page/6402
    - object/page/5339
    - object/page/1316
  features: []
  topics: []
  localizations: []
  videos: []
  posts: []
  guidelines: []
  changes: []
number: 10516
repo: microsoft/BCApps
source_id: bcapps-prs
url: https://github.com/microsoft/BCApps/pull/10516
kind: pr
base_branch: main
major: "30"
merged_at: "2026-08-27T17:56:12Z"
author: JesperSchulz
author_type: User
community_contribution: false
labels:
  - "AL: Apps (W1)"
  - "Ownership: Needs Review"
  - "Team: Other"
change_class: code
change_kind: refactor
behavior_change: false
breaking: false
files:
  count: 36
  additions: 96
  deletions: 31
  al: 34
apps:
  - AutomaticAccountCodes
  - Base Application
  - BasicExperience
  - CoreLocalizationPack
  - ElectronicVATSubmission
  - EnvestnetYodleeBankFeeds
  - FIK
  - INGST
  - INTaxEngine
  - ImageAnalysis
  - NorwegianSAFT
  - OIOUBL
  - ServiceDeclarationIT
objects_touched:
  - key: tableextension/31025
    page: tableextension/31025-cz
    type: tableextension
    id: 31025
    name: Intrastat Jnl. Batch CZL
    app: CoreLocalizationPack
    status: modified
  - key: tableextension/31026
    page: tableextension/31026-cz
    type: tableextension
    id: 31026
    name: Intrastat Jnl. Line CZL
    app: CoreLocalizationPack
    status: modified
  - key: tableextension/11722
    page: tableextension/11722-cz
    type: tableextension
    id: 11722
    name: Invoice Post. Buffer CZL
    app: CoreLocalizationPack
    status: modified
  - key: tableextension/13621
    page: tableextension/13621-dk
    type: tableextension
    id: 13621
    name: PaymentBuffer
    app: FIK
    status: modified
  - key: tableextension/13643
    page: tableextension/13643-dk
    type: tableextension
    id: 13643
    name: OIOUBL-IssuedFinChrgMemoHeader
    app: OIOUBL
    status: modified
  - key: tableextension/13638
    page: tableextension/13638-dk
    type: tableextension
    id: 13638
    name: OIOUBL-Issued Reminder Header
    app: OIOUBL
    status: modified
  - key: tableextension/13632
    page: tableextension/13632-dk
    type: tableextension
    id: 13632
    name: OIOUBL-Sales Cr.Memo Header
    app: OIOUBL
    status: modified
  - key: tableextension/13646
    page: tableextension/13646-dk
    type: tableextension
    id: 13646
    name: OIOUBL-Sales Header
    app: OIOUBL
    status: modified
  - key: tableextension/13649
    page: tableextension/13649-dk
    type: tableextension
    id: 13649
    name: OIOUBL-Sales Header Archive
    app: OIOUBL
    status: modified
  - key: tableextension/13630
    page: tableextension/13630-dk
    type: tableextension
    id: 13630
    name: OIOUBL-Sales Invoice Header
    app: OIOUBL
    status: modified
  - key: tableextension/13657
    page: tableextension/13657-dk
    type: tableextension
    id: 13657
    name: OIOUBL-Service Cr.Memo Header
    app: OIOUBL
    status: modified
  - key: tableextension/13655
    page: tableextension/13655-dk
    type: tableextension
    id: 13655
    name: OIOUBL-Service Invoice Header
    app: OIOUBL
    status: modified
  - key: tableextension/18244
    page: tableextension/18244-in
    type: tableextension
    id: 18244
    name: GST Invoice Pos Buffer
    app: INGST
    status: modified
  - key: tableextension/12216
    page: tableextension/12216-it
    type: tableextension
    id: 12216
    name: Service Decl. Line IT
    app: ServiceDeclarationIT
    status: modified
  - key: codeunit/1450
    page: codeunit/1450-ca
    type: codeunit
    id: 1450
    name: MS - Yodlee Service Mgt.
    app: EnvestnetYodleeBankFeeds
    status: modified
  - key: tableextension/10687
    page: tableextension/10687-no
    type: tableextension
    id: 10687
    name: Elec. VAT Code
    app: ElectronicVATSubmission
    status: modified
  - key: tableextension/10675
    page: tableextension/10675-no
    type: tableextension
    id: 10675
    name: SAF-T VAT Code
    app: NorwegianSAFT
    status: modified
  - key: tableextension/4853
    page: tableextension/4853
    type: tableextension
    id: 4853
    name: AutoAcc. Invoice Post. Buffer
    app: AutomaticAccountCodes
    status: modified
  - key: pageextension/20631
    page: pageextension/20631
    type: pageextension
    id: 20631
    name: Purchase Agent Activities BF
    app: BasicExperience
    status: modified
  - key: pageextension/20659
    page: pageextension/20659
    type: pageextension
    id: 20659
    name: SO Processor Activities BF
    app: BasicExperience
    status: modified
  - key: pageextension/20657
    page: pageextension/20657
    type: pageextension
    id: 20657
    name: Small Business Owner Act BF
    app: BasicExperience
    status: modified
  - key: codeunit/20165
    page: codeunit/20165
    type: codeunit
    id: 20165
    name: Script Editor Mgmt.
    app: INTaxEngine
    status: modified
  - key: page/20259
    page: page/20259
    type: page
    id: 20259
    name: Tax Attribute Value Dialog
    app: INTaxEngine
    status: modified
  - key: page/20283
    page: page/20283
    type: page
    id: 20283
    name: Switch Statements
    app: INTaxEngine
    status: modified
  - key: codeunit/20301
    page: codeunit/20301
    type: codeunit
    id: 20301
    name: Tax Document Stats Mgmt.
    app: INTaxEngine
    status: modified
  - key: tableextension/2025
    page: tableextension/2025
    type: tableextension
    id: 2025
    name: MS - Image Analyzer Setup
    app: ImageAnalysis
    status: modified
  - key: table/2028
    page: table/2028
    type: table
    id: 2028
    name: MS - Image Analyzer Tags
    app: ImageAnalysis
    status: modified
  - key: report/28160
    page: report/28160-au
    type: report
    id: 28160
    name: G/L Journal
    app: Base Application
    status: modified
  - key: report/10480
    page: report/10480-ca
    type: report
    id: 10480
    name: Electronic Carta Porte MX
    app: Base Application
    status: modified
  - key: page/2588
    page: page/2588
    type: page
    id: 2588
    name: Dimension Correction
    app: Base Application
    status: modified
  - key: page/5353
    page: page/5353
    type: page
    id: 5353
    name: CRM Sales Order List
    app: Base Application
    status: modified
  - key: page/6402
    page: page/6402
    type: page
    id: 6402
    name: Sales Document Entity
    app: Base Application
    status: modified
  - key: page/5339
    page: page/5339
    type: page
    id: 5339
    name: Integration Synch. Error List
    app: Base Application
    status: modified
  - key: page/1316
    page: page/1316
    type: page
    id: 1316
    name: Accountant Portal User Tasks
    app: Base Application
    status: modified
objects_unjoined: []
obsoletions: []
backports: []
fixes_issues: []
work_items:
  - 640773
systems:
  - finance
  - sales
  - integration
  - service
  - development
  - inventory
  - platform
  - purchasing
quote: null
joined_against:
  major: "30"
  commit: a4406cfa9e57437fedc49c53c327a199a854491e
---

# #10516 Ruleset hardening: promote AL0468, AL0520, AL0589, AL0611, AL0749, AW0004 to Error

> Six AL compiler rules are promoted from Warning to Error severity in the base ruleset, with all existing accepted violations marked by pragmas at their source locations to enforce the rules going forward.

[Pull request](https://github.com/microsoft/BCApps/pull/10516) · merged into `main` (BC30) on 2026-08-27 by JesperSchulz · 36 files (+96 -31), 34 AL · refactor · tier official · reviewed (checked by Opus)

## What changed

- AL0468, AL0520, AL0589, AL0611, AL0749, and AW0004 rules moved from ruleset overrides to Error level
- 45 deliberate violations suppressed with scoped pragmas at call sites instead of remaining invisible as repo-wide warnings
- New violations of these rules now fail the build; known violations stay documented in the code
- Ruleset simplification reduces override count from 94 to 88
- Changes include table extensions, pages, codeunits and reports across localization and base application modules

## AL objects touched

- [Table extension 31025 "Intrastat Jnl. Batch CZL"](../../objects/tableextension/31025-cz.md), CoreLocalizationPack (CZ layer): modified
- [Table extension 31026 "Intrastat Jnl. Line CZL"](../../objects/tableextension/31026-cz.md), CoreLocalizationPack (CZ layer): modified
- [Table extension 11722 "Invoice Post. Buffer CZL"](../../objects/tableextension/11722-cz.md), CoreLocalizationPack (CZ layer): modified
- [Table extension 13621 "PaymentBuffer"](../../objects/tableextension/13621-dk.md), FIK (DK layer): modified
- [Table extension 13643 "OIOUBL-IssuedFinChrgMemoHeader"](../../objects/tableextension/13643-dk.md), OIOUBL (DK layer): modified
- [Table extension 13638 "OIOUBL-Issued Reminder Header"](../../objects/tableextension/13638-dk.md), OIOUBL (DK layer): modified
- [Table extension 13632 "OIOUBL-Sales Cr.Memo Header"](../../objects/tableextension/13632-dk.md), OIOUBL (DK layer): modified
- [Table extension 13646 "OIOUBL-Sales Header"](../../objects/tableextension/13646-dk.md), OIOUBL (DK layer): modified
- [Table extension 13649 "OIOUBL-Sales Header Archive"](../../objects/tableextension/13649-dk.md), OIOUBL (DK layer): modified
- [Table extension 13630 "OIOUBL-Sales Invoice Header"](../../objects/tableextension/13630-dk.md), OIOUBL (DK layer): modified
- [Table extension 13657 "OIOUBL-Service Cr.Memo Header"](../../objects/tableextension/13657-dk.md), OIOUBL (DK layer): modified
- [Table extension 13655 "OIOUBL-Service Invoice Header"](../../objects/tableextension/13655-dk.md), OIOUBL (DK layer): modified
- [Table extension 18244 "GST Invoice Pos Buffer"](../../objects/tableextension/18244-in.md), INGST (IN layer): modified
- [Table extension 12216 "Service Decl. Line IT"](../../objects/tableextension/12216-it.md), ServiceDeclarationIT (IT layer): modified
- [Codeunit 1450 "MS - Yodlee Service Mgt."](../../objects/codeunit/1450-ca.md), EnvestnetYodleeBankFeeds (CA layer): modified
- [Table extension 10687 "Elec. VAT Code"](../../objects/tableextension/10687-no.md), ElectronicVATSubmission (NO layer): modified
- [Table extension 10675 "SAF-T VAT Code"](../../objects/tableextension/10675-no.md), NorwegianSAFT (NO layer): modified
- [Table extension 4853 "AutoAcc. Invoice Post. Buffer"](../../objects/tableextension/4853.md), AutomaticAccountCodes: modified
- [Page extension 20631 "Purchase Agent Activities BF"](../../objects/pageextension/20631.md), BasicExperience: modified
- [Page extension 20659 "SO Processor Activities BF"](../../objects/pageextension/20659.md), BasicExperience: modified
- [Page extension 20657 "Small Business Owner Act BF"](../../objects/pageextension/20657.md), BasicExperience: modified
- [Codeunit 20165 "Script Editor Mgmt."](../../objects/codeunit/20165.md), INTaxEngine: modified
- [Page 20259 "Tax Attribute Value Dialog"](../../objects/page/20259.md), INTaxEngine: modified
- [Page 20283 "Switch Statements"](../../objects/page/20283.md), INTaxEngine: modified
- [Codeunit 20301 "Tax Document Stats Mgmt."](../../objects/codeunit/20301.md), INTaxEngine: modified
- [Table extension 2025 "MS - Image Analyzer Setup"](../../objects/tableextension/2025.md), ImageAnalysis: modified
- [Table 2028 "MS - Image Analyzer Tags"](../../objects/table/2028.md), ImageAnalysis: modified
- [Report 28160 "G/L Journal"](../../objects/report/28160-au.md), Base Application (AU layer): modified
- [Report 10480 "Electronic Carta Porte MX"](../../objects/report/10480-ca.md), Base Application (CA layer): modified
- [Page 2588 "Dimension Correction"](../../objects/page/2588.md), Base Application: modified
- [Page 5353 "CRM Sales Order List"](../../objects/page/5353.md), Base Application: modified
- [Page 6402 "Sales Document Entity"](../../objects/page/6402.md), Base Application: modified
- [Page 5339 "Integration Synch. Error List"](../../objects/page/5339.md), Base Application: modified
- [Page 1316 "Accountant Portal User Tasks"](../../objects/page/1316.md), Base Application: modified

## Context

- Work items: AB#640773
- Labels: AL: Apps (W1), Ownership: Needs Review, Team: Other
- Systems: finance, sales, integration, service, development, inventory, platform, 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).
