At the time of writing, although it seems to have been around forever, this option is technically still in preview. But it was a special request ages ago from the comments on this post and I finally had a chance to take a look at how it was working, so here it is. Be warned though – what you’re about to read may not ever make it to general availability and therefore you should think very hard before enabling it in any Production environments, or designing processes that are dependent on it.
What’s it called?
The feature which shows up in the feature management workspace is called ‘Full Page Apps’. It’s dependent on another feature, also still in preview, called ‘Saved Views’. That’s pretty cool too, but more on that another time.
Why should I be interested?
If you’re using Power Apps to replace or augment any functionality in the Core product, but have been slightly disappointed by the options for where Power Apps can be placed in the system and how they look when they’re in use.
What does it do?
The feature, when enabled, allows Sys Admins to do a couple of cool things:
- Embed a canvas Power App full screen, which is accessed from the default dashboard in the same way as the standard workspaces. Handy if you need a completely tailored user experience which still feels like part of the standard solution.
- Embed other third party web pages within the app so they too can be accessed in the same way as other workspaces. Using this method you can also embed model-driven Power Apps into Core HR, although you do get a slightly weird nesting effecting on the menus.
How do I set it up?
Go to the feature management workspace (System Administration > Feature Management) and first find the pre-requisite ‘Saved Views’ feature. In the environment I’m working in Saved Views wasn’t already enabled, so I had to look in the ‘not enabled’ tab of the feature management workspace. Select the feature and click enable on the right hand side. This will change some things around personalisation for your workers.
Side note – I’m going to write more about saved views when it gets generally released, because it’s a feature I’ve been waiting a very long time for which will solve quite a few of the small niggles I have in the product. For now though I’d have to advise against switching it on in a Production environment, even though it’s available there.
Once saved views is enabled, find the feature called ‘Full Page Apps’, and enable that. There’s no additional config to do until you’re ready to start embedding an app, but I usually do a browser refresh after enabling a new feature. It might be totally unnecessary, but it’s a habit now.
Here’s one way you can now install full page apps:
- Go to the default dashboard (or home page) and right click to access the personalisation menu – it doesn’t matter where you get the personalisation menu on this page, the results are the same.
- Select ‘add a page’ – if you don’t see that option, make sure you’ve enabled both features.
- You’ll then get three options:
- add a workspace – means creating a custom workspace like this one
- add a Power App – means embedding a full page canvas Power App, which we’ll look at in more detail
- add a website – means embedding a third party website (or model-driven Power App)
- Select the Power App option, and you’ll get a screen asking you for the Name and App ID of the app you want to embed. Useful to know at this point that the ‘Name’ field doesn’t have to be the name of the app, it’s just the text label you want on the button which will link to the app itself. So your app could be called ‘Advanced Equality Info v2’, but your label can be ‘Diversity Declaration’, and everything will work just fine.
- To find the App ID of the Power App you want to embed (and I’m mainly writing this down because I ALWAYS forget how to do this and have to spend 10 minutes randomly clicking around):
- Connect to make.powerapps.com
- Click ‘Apps’ in the left hand menu to see the list of apps (and so far I’ve found the app you’re embedding doesn’t need to be in the same environment, but although I haven’t tried across tenants yet I suspect that would be a step too far)
- Click the three dots next to the app name, and find the ‘details’ link at the bottom of the list and click it
- You should see the app ID on the following form
- If you don’t see ‘details’ in the previous menu, you’re probably trying to embed a model-driven app, which isn’t currently possible using this method, you have to embed it as though it were a third party website.
- Enter the app ID back in the Core form
- You’ll see a new workspace button become available with the label you previously provided
- Click the workspace button – you should see your app launch within the usual Core HR UI framework
Anything else I should be aware of?
A couple of things actually:
- If you want the change you just made to be visible to all users, that can be achieved through personalisation. That ‘Saved views’ feature I keep mentioning is going to make this a whole lot easier, so I’ll cover that later. But if you’re desperate, searching for info about personalisation in D365 finance should get you started.
- Using the older traditional methods of embedding Power Apps, you had the option to pass a variable into the app (like the worker ID) which allowed you to set an operating context for the app when it opened. You don’t appear to have that option here because there’s no active record and therefore no variables to pass, so you need to consider how that would impact the operation of your app and make sure security can be applied appropriately.