636017 Move Purchases report action tooltips to report objects - #9549
636017 Move Purchases report action tooltips to report objects#9549V-CWurtzen wants to merge 6 commits into
Conversation
Move the report action ToolTips for 18 Purchases reports onto the report objects and remove the now-duplicate ToolTip from the W1 page actions that run them (purchase document lists, vendor pages and the Purchasing Agent role center, plus the Administrator role center and Data Administration). Covers Purchase Statistics, Purchase Reservation Avail., the Vendor - Balance to Date / Detail Trial Balance / Trial Balance / Labels / Order Detail / Order Summary / Payment Receipt / Purchase List set, Vendor Item Catalog, Vendor Register, Vendor/Item Purchases, Date Compress Vendor Ledger, and the Delete Invoiced Purch. Orders / Invd Blnkt Purch Orders / Invd Purch. Ret. Orders set. Where only a "Run the X report." stub existed (Day Book Vendor Ledger Entry) it is hoisted as the sole option. Reports with ObsoleteState = Pending/Removed are skipped (5).
Integrate the W1 Purchases tooltip move into the forked country layers, as required by the Miapp sync gate (VerifyMiappSync): - 55 page forks across 18 country layers: removed the duplicate ToolTip from the covered-report actions (305 lines). - 8 report forks (APAC VendorLabels/VendorPaymentReceipt; BE VendorPaymentReceipt/VendorPurchaseList; ES DateCompressVendorLedger/ VendorDetailTrialBalance; RU VendorOrderDetail/VendorOrderSummary): added the W1 report-level ToolTip. - 1 no-op integration (NA PurchasingAgentRoleCenter): the sync gate requires every fork of a changed W1 file in the changelist; it carries no covered action, so there is nothing to remove.
Copilot PR ReviewIteration 2 · Outcome: completed
Knowledge source: https://github.com/microsoft/BCQuality@186d8a131465475c79244d994acb872cd5c0d4bf Orchestrator pre-filter (2 file(s) excluded)
Findings produced by the AL review agent v1.7.3. Reply 👎 on any inline comment to flag false positives. |
…ases-move-page-action-tooltips-to-report
|
|
Pull request was closed
Integrates main (incl. Inventory #9582's edits to the shared Purchasing Agent Role Center) so the fork set is consistent and VerifyMiappSync passes. The stale-fork gap only surfaced once sibling area PRs merged. Net change vs main is unchanged: Purchases report action tooltips moved to report objects (tooltip-only, 94 files).
The W1 change removes the Vendor/Item Purchases action tooltip, but the NA fork has no matching action and its content already matches main (the NA propagation arrived via the BCAppsPrivate/NAV sync #8848). Reword the existing gate comment so the NA fork re-enters this PR's changelist and VerifyMiappSync's presence-only check passes. Comment-only, no functional change.
9bc8821
|
This PR removes the explicit ToolTip from ~146 page actions and leaves the text only on the target Report object (for example, action "Delete Invoiced" on "Purchase Order List" line 593, RunObject = Report "Delete Invoiced Purch. Orders"). Business Central's documented ToolTip-inheritance behavior covers bound page fields inheriting from their source table field; there is no documented platform mechanism for a page action to inherit a ToolTip from the Report/Page named in its RunObject. AA0218 defines page Action controls as requiring their own ToolTip. Even though every removed action tooltip now exists on the corresponding report, unless the client genuinely propagates the target object's ToolTip onto the invoking action control, the host pages have lost their own hover/screen-reader text for these specific actions across ~69 page files. Recommend confirming actual client rendering behavior (or restoring the action-level ToolTip) before merge. Agent judgement — not directly backed by a BCQuality knowledge article. Line mapping was unavailable, so this was posted as an issue comment. 👍 useful · ❤️ especially valuable · 👎 wrong - reply with why · AL review agent v1.26.4 |
| AccessByPermission = TableData "Purchase Header" = RD; | ||
| ApplicationArea = PurchReturnOrder; | ||
| Caption = 'Delete Invoiced Purchase Return Orders'; | ||
| ToolTip = 'Delete orders that were not automatically deleted after completion. For example, when several purchase orders were completed by a single invoice.'; |
There was a problem hiding this comment.
The new report-level tooltip on "Delete Invd Purch. Ret. Orders" still says "purchase orders" completed by "a single invoice", but this report deletes purchase return orders and its dataset is filtered to Document Type = Return Order. Reword the centralized tooltip so it describes purchase return orders accurately; otherwise every page that now inherits this report tooltip shows misleading text.
| ToolTip = 'Delete orders that were not automatically deleted after completion. For example, when several purchase orders were completed by a single invoice.'; | |
| ToolTip = 'Delete return orders that were not automatically deleted after completion. For example, when several purchase return orders were completed by a single purchase credit memo.'; |
Agent judgement — not directly backed by a BCQuality knowledge article.
👍 useful · ❤️ especially valuable · 👎 wrong - reply with why · AL review agent v1.26.4
| { | ||
| ApplicationArea = Basic, Suite; | ||
| Caption = 'Purchase Statistics'; | ||
| ToolTip = 'View a list of amounts for purchases, invoice discount and payment discount in $ for each vendor.'; |
There was a problem hiding this comment.
The new centralized tooltip on "Purchase Statistics" says the report shows amounts "in $", but the report itself is LCY-based (Purchases (LCY), Inv. Discounts (LCY), Pmt. Discounts (LCY)). Use currency-neutral wording such as LCY in the report tooltip so the shared tooltip matches the actual report content in every locale.
| ToolTip = 'View a list of amounts for purchases, invoice discount and payment discount in $ for each vendor.'; | |
| ToolTip = 'View a list of amounts for purchases, invoice discount, and payment discount in LCY for each vendor.'; |
Agent judgement — not directly backed by a BCQuality knowledge article.
👍 useful · ❤️ especially valuable · 👎 wrong - reply with why · AL review agent v1.26.4
What & why
Moves the report action ToolTips for the Purchases reports off the page actions that run them and onto the report objects themselves, and integrates that move into every forked country layer. The tooltip is now defined once on the report and applies wherever the report is invoked, and the now-duplicate
ToolTipis removed from the page actions in W1 and its country forks.18 reports covered —
Purchase Statistics,Purchase Reservation Avail., theVendor - Balance to Date/Detail Trial Balance/Trial Balance/Labels/Order Detail/Order Summary/Payment Receipt/Purchase Listset,Vendor Item Catalog,Vendor Register,Vendor/Item Purchases,Date Compress Vendor Ledger, and theDelete Invoiced Purch. Orders/Invd Blnkt Purch Orders/Invd Purch. Ret. Ordersset.Where only a
Run the X report.stub existed (Day Book Vendor Ledger Entry), it is hoisted as the sole option — happy to replace with better wording if a reviewer suggests it. Reports withObsoleteState = Pending/Removedare skipped (5).This is part of the "move report action tooltips to report objects" cleanup (CP0529-331 / slice 636017).
Changes
ToolTipadded to the 18 reports; duplicate removed from the W1 actions that run them (purchase document lists, vendor pages and the Purchasing Agent role center, plus the Administrator role center and Data Administration). 31 files.VerifyMiappSync):ToolTipremoved from the covered actions (305 lines).APAC VendorLabels/VendorPaymentReceipt;BE VendorPaymentReceipt/VendorPurchaseList;ES DateCompressVendorLedger/VendorDetailTrialBalance;RU VendorOrderDetail/VendorOrderSummary): report-levelToolTipadded to match W1.NA PurchasingAgentRoleCenter): the sync gate requires every fork of a changed W1 file in the changelist; it carries no covered action, so there is nothing to remove.Total: 95 files (31 W1 + 64 country), tooltip-only.
Linked work
Fixes AB#636017
How I validated this
What I tested and the outcome
Metadata-only change (
ToolTipproperty). The diff is tooltip-only (reportToolTipadditions + page-actionToolTipremovals), with BOM/EOL preserved and no other lines changed; the only non-tooltip edit is a single trailing newline onNA PurchasingAgentRoleCenter.Page.al(no-op sync touch). Country propagation was produced by runningInvoke-Miappto identify the fork set, then applying the move surgically (Invoke-Miapp's auto-merge mis-aligned on the structurally-divergent role centers, so its output was not used directly). The set of changed forks matches exactly whatVerifyMiappSyncrequires — no missing forks, no extras.No tests added:
ToolTipis a design-time metadata property with no runtime behavior to assert; there is no existing tooltip test harness for these objects.Risk & compatibility
Low. No code, schema, table, or behavior change — only the
ToolTipdesign property moves from page action to report, in W1 and its country forks. No upgrade/data impact, no permission/telemetry impact, no breaking change. Same cleanup pattern already merged for Warehouse, Manufacturing, Service, Sales and Inventory, landed as the Pricing pilot (#9433), and applied to CashFlow (#9528), Finance (#9526), Bank (#9540), CRM (#9544), Cost Accounting (#9545), Fixed Assets (#9546) and Projects (#9548) on the new BCApps pipeline.