mirror of
https://github.com/microsoft/BCQuality.git
synced 2026-10-05 14:46:55 +01:00
- dimension-management-wiring.md/.good.al: split into the two distinct
models the article was conflating - master data (Default Dimension
records via ValidateDimValueCode/SaveDefaultDim) vs. transactional/
document data (a single Dimension Set ID assembled via AddDimSource +
GetDefaultDimID, verified against BCApps' ExchRateAdjmtProcess.Codeunit.al).
Added a compiling document-table example alongside the existing master
table one.
- Deleted api-page-flowfields-must-be-calcfields (.md/.good.al/.bad.al):
Microsoft's own FlowFields documentation states a FlowField used as a
control's direct source expression is automatically calculated on any
page - no API-page exception is documented, and none could be
reproduced.
- prefer-email-module.bad.al/.md: Codeunit Mail has no Send/GetErrorDesc
members; fixed to the real current 7-argument CreateMessage signature,
and corrected the claim that the legacy path "still runs" - its base
implementation no longer sends anything, only raises integration events.
- check-post-line-batch-pattern.md/.good.al: reframed from a universal
invariant to the standard shape, naming the real Gen./Item/CA/Res./Job/
Insurance/Mfg. Item/FA Jnl.-Check Line/-Post Line/-Post Batch codeunits
it's based on. Added the missing Check Line companion codeunit so the
good fixture is internally complete.
- test-data-must-be-random-and-complete.good.al: removed leftover
"collision-free" wording contradicting the already-corrected article text.
- fixed-choice-set-must-use-enum-not-integer.md: removed the reintroduced
state-count heuristic ("the line is the state count"), aligned with
binary-choice-must-be-boolean.md's semantics-based distinction.
- namespace-must-be-verified-from-source.md: removed the false claim that
the compiler and AL Language Server use different namespace-resolution
rules.
- intrinsic-al-functions-must-use-modern-casing.md: removed the unverified
claim that PascalCase is the VS Code formatter's default output.
Worklist completeness: added cues for the 8 rules in data-modeling,
testing, performance, and web-services that had none (Jesper's explicit
ask), plus the same gap in all 7 style rules from this PR (not explicitly
named this round, but the identical systemic issue) - 15 cues total across
al-data-modeling-review.md, al-testing-review.md, al-performance-review.md,
al-web-services-review.md, and al-style-review.md.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
||
|---|---|---|
| .. | ||
| abouttitle-abouttext-teaching-tips.bad.al | ||
| abouttitle-abouttext-teaching-tips.good.al | ||
| abouttitle-abouttext-teaching-tips.md | ||
| al-build-output-must-not-pollute-project-root.md | ||
| al-identifiers-english.bad.al | ||
| al-identifiers-english.good.al | ||
| al-identifiers-english.md | ||
| api-page-camelcase-properties.bad.al | ||
| api-page-camelcase-properties.good.al | ||
| api-page-camelcase-properties.md | ||
| api-page-delayedinsert-true.bad.al | ||
| api-page-delayedinsert-true.good.al | ||
| api-page-delayedinsert-true.md | ||
| api-page-entity-naming-singular-plural.bad.al | ||
| api-page-entity-naming-singular-plural.good.al | ||
| api-page-entity-naming-singular-plural.md | ||
| api-page-version-format.bad.al | ||
| api-page-version-format.good.al | ||
| api-page-version-format.md | ||
| binary-choice-must-be-boolean.bad.al | ||
| binary-choice-must-be-boolean.good.al | ||
| binary-choice-must-be-boolean.md | ||
| caption-required-on-page-fields.bad.al | ||
| caption-required-on-page-fields.good.al | ||
| caption-required-on-page-fields.md | ||
| case-action-on-line-after-possibility.bad.al | ||
| case-action-on-line-after-possibility.good.al | ||
| case-action-on-line-after-possibility.md | ||
| dateformula-evaluate-needs-language-independent-literals.bad.al | ||
| dateformula-evaluate-needs-language-independent-literals.good.al | ||
| dateformula-evaluate-needs-language-independent-literals.md | ||
| error-passes-parameters-directly-not-strsubstno.bad.al | ||
| error-passes-parameters-directly-not-strsubstno.good.al | ||
| error-passes-parameters-directly-not-strsubstno.md | ||
| fieldcaption-not-fieldname-in-user-messages.bad.al | ||
| fieldcaption-not-fieldname-in-user-messages.good.al | ||
| fieldcaption-not-fieldname-in-user-messages.md | ||
| file-name-object-type-pattern.md | ||
| fixed-choice-set-must-use-enum-not-integer.bad.al | ||
| fixed-choice-set-must-use-enum-not-integer.good.al | ||
| fixed-choice-set-must-use-enum-not-integer.md | ||
| intrinsic-al-functions-must-use-modern-casing.bad.al | ||
| intrinsic-al-functions-must-use-modern-casing.good.al | ||
| intrinsic-al-functions-must-use-modern-casing.md | ||
| label-comment-explains-placeholders.bad.al | ||
| label-comment-explains-placeholders.good.al | ||
| label-comment-explains-placeholders.md | ||
| label-locked-for-non-translatable.bad.al | ||
| label-locked-for-non-translatable.good.al | ||
| label-locked-for-non-translatable.md | ||
| labels-declared-at-object-scope.md | ||
| named-invocations-not-object-ids.bad.al | ||
| named-invocations-not-object-ids.good.al | ||
| named-invocations-not-object-ids.md | ||
| namespace-must-be-verified-from-source.bad.al | ||
| namespace-must-be-verified-from-source.good.al | ||
| namespace-must-be-verified-from-source.md | ||
| no-else-after-terminating-statement.bad.al | ||
| no-else-after-terminating-statement.good.al | ||
| no-else-after-terminating-statement.md | ||
| object-name-30-char-limit.md | ||
| page-name-must-match-source-table.md | ||
| temporary-variable-temp-prefix.bad.al | ||
| temporary-variable-temp-prefix.good.al | ||
| temporary-variable-temp-prefix.md | ||
| tooltip-required-on-page-fields.bad.al | ||
| tooltip-required-on-page-fields.good.al | ||
| tooltip-required-on-page-fields.md | ||
| var-parameters-require-an-addressable-variable.bad.al | ||
| var-parameters-require-an-addressable-variable.good.al | ||
| var-parameters-require-an-addressable-variable.md | ||
| xmldoc-for-public-library-procedures.md | ||