[28x] [Quality Management] Install Demo Data app Action on the Setup Page +…#7842
[28x] [Quality Management] Install Demo Data app Action on the Setup Page +…#7842attilatoury wants to merge 1 commit intoreleases/28.xfrom
Conversation
… Updated Guided Tour on the Role Center (#7679) - Obsolete Qlty. Demo Data Launcher page - New action on the Qlty. Management Setup page to open the Contoso Demo Tool page, or install the QM demo data app if needed - **Updated Qlty Guided Experience** (tour guide on QM RC): the Demo Data checklist item runs the same action as mentioned above <img width="918" height="432" alt="image" src="https://github.com/user-attachments/assets/1b051dac-7fbb-4a6a-a65c-ac9b835de51d" /> <img width="1144" height="907" alt="image" src="https://github.com/user-attachments/assets/8d398c0d-bcf5-4870-ae81-389b9c0511e8" /> Fixes [AB#629924](https://dynamicssmb2.visualstudio.com/1fcb79e7-ab07-432a-a3c6-6cf5a88ba4a5/_workitems/edit/629924)
There was a problem hiding this comment.
Pull request overview
Backport for Quality Management that streamlines how demo data is accessed/installed and updates the Quality Manager guided experience to use the same entry point as Setup.
Changes:
- Updated QM Guided Experience demo data checklist item to run a new codeunit runner instead of opening the (now obsolete) launcher page.
- Added a new “Install Demo Data” action on Qlty. Management Setup (visible on SaaS) that installs/opens the Contoso demo data tool.
- Refactored demo data management to centralize Contoso app id retrieval and add an install-or-open entry point.
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| src/Apps/W1/Quality Management/app/src/Setup/SetupGuide/QltyGuidedExperience.Codeunit.al | Switches Guided Experience demo data item to run a codeunit runner; checklist init updated accordingly. |
| src/Apps/W1/Quality Management/app/src/Setup/SetupGuide/QltyDemoDataRunner.Codeunit.al | New public runner codeunit invoked by Guided Experience checklist item. |
| src/Apps/W1/Quality Management/app/src/Setup/SetupGuide/QltyDemoDataMgmt.Codeunit.al | Adds InstallOrOpenDemoData() and centralizes Contoso app id via GetContosoAppId(). |
| src/Apps/W1/Quality Management/app/src/Setup/SetupGuide/QltyDemoDataLauncher.Page.al | Marks the old launcher page obsolete and conditionally compiles it out for CLEAN29. |
| src/Apps/W1/Quality Management/app/src/Setup/QltyManagementSetup.Page.al | Adds SaaS-only “Install Demo Data” action and an IsSaaS flag initialized on open. |
| src/Apps/W1/Quality Management/app/src/Permissions/QltyMgmtObjects.PermissionSet.al | Grants execute permission to the new runner codeunit; gates obsolete launcher page permission with CLEAN29. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| procedure InstallOrOpenDemoData() | ||
| var | ||
| ExtensionManagement: Codeunit "Extension Management"; | ||
| begin | ||
| if IsContosoDemoToolInstalled() then | ||
| OpenContosoDemoTool() | ||
| else | ||
| ExtensionManagement.InstallMarketplaceExtension(GetContosoAppId()); | ||
| end; |
There was a problem hiding this comment.
InstallOrOpenDemoData() calls ExtensionManagement.InstallMarketplaceExtension(). That path will error if the current user can't manage extensions (Extension Installation Impl.CheckPermissions()) and it also doesn't align with the Setup page action being SaaS-only. Consider guarding with EnvironmentInformation.IsSaaS() and/or wrapping the install call in a TryFunction to fall back to a user-friendly message (e.g., instruct to contact an admin or use AppSource) instead of throwing from the Guided Experience item.
| ObsoleteReason = 'Unused. Use the "Install Demo Data" action on the Quality Management Setup page instead.'; | ||
| ObsoleteState = Pending; | ||
| ObsoleteTag = '29.0'; |
There was a problem hiding this comment.
ObsoleteReason marks this page as unused, but the page-level summary comment still states it is "Required by Guided Experience". To avoid conflicting documentation, update the summary to reflect that this is a legacy/compatibility launcher and no longer used by Guided Experience.
| end; | ||
| end; | ||
|
|
||
|
|
There was a problem hiding this comment.
There are trailing blank lines before the closing brace; consider removing them to keep the file tidy and reduce noise in future diffs.
Backport
… Updated Guided Tour on the Role Center (#7679)
Fixes AB#630960