There are about 3500 apps for Business Central in App Source as of this moment built by ISVs for the Business Central community and who knows how many PTEs. As each one comes with its own complexity, it falls on developers and ISVs to provide manuals or some sort of help for those using their extensions.
But you don’t have to be an ISV to help your customers; you can, as a PTE extension developer, provide some help context for your customers.
Send users to your Help site
Since BC 2022 wave 2 we have two new properties:
- an app property in app.json: “contextSensitiveHelpUrl” = “…” whose value is the root of your help site;
- a page property for pages that you want to decorate with help information: ContextSensitiveHelpPage = ‘somepage’, somepage being a page on your help site.
Let’s look at a very simple example.
Start in app.json by initiating the help with the property “contextSensitiveHelpUrl”. Here is an example:
"name": "An awesome project",
"publisher": "Silviu Virlan",
"version": "1.0.0.0",
"contextSensitiveHelpUrl": "https://www.svirlan.com/",
"brief": "",
"description": "",
"privacyStatement": "", ...
The string assigned to “contextSensitiveHelpUrl” represents the root of your help website. I don’t own any website other than my own blog site, therefore I am going to use my blog for exemplifying the help context.
Next, on your Card pages, in your extension, add the property ContextSensitiveHelpPage and assign the help page on your site that describes this AL page or the fields that the AL page extension adds to the AL page.
Here is an example:
page 50225 "My Main site"
{
ApplicationArea = All;
Caption = 'My site';
PageType = Card;
SourceTable = Integer;
UsageCategory = Administration;
SourceTableTemporary = true;
InsertAllowed = false;
ModifyAllowed = false;
ContextSensitiveHelpPage = 'About';
layout
{
area(content)
{
group(Group)
{
field(Number; Rec.Number)
{
ApplicationArea = All;
ToolTip = 'The number of the group.';
}
}
}
}
}
Check out the video above to see how this works.
Conclusions
Finally, a few things to consider:
– the ContextSensitiveHelpPage can be added to both pages and page extensions
– be cautious on the site associated with contextSensitiveHelpUrl property in app.json.
A good thing is, since Stefano Demilliani noticed in 2021, that the default site for contextSensitiveHelpUrl property was pointing to a malicious site, Microsoft no longer initializes the property on a new project generated with AL:Go! command.
If you want to read official documentation on contextSensitiveHelpUrl and ContextSensitiveHelpPage check this Microsoft documentation page.