Hello, I am looking for instructions on how to deploy a canvas app into another environment. The canvas app is embedded on a Dynamics 365 Service Activity form in our development environment:
The "Common Data Service - Current Environment" is the data source for the app.
I would like to deploy it as part of our managed solution to our test environments and eventually customer environments. However, when I deploy our managed solution that includes the canvas app, we get this error message on the form where it's embedded:
Clicking "Request access" doesn't seem to do anything. Also, the app was shared with all users of the test environment. I assume I am missing a configuration step but I can't find any documentation that outlines the steps to deploy an embedded Dynamics 365 canvas apps to other environments.
Can you please provide guidance one how we can get our canvas app that is included in our managed solution to work in other environments?
Thanks for you input. The app does not work with the user that created it (me). I have tried with other users as well and everyone gets the same message.
This app isn’t opening correctly
It looks like you don’t have access to this app. Ask its owner to share it with you.
If the app worked previously, try opening with a previous version of the web player.
When you say "Security Group" I assume you referring to the roles set here...
All users that need to use the app have the above role. My plan is to reduce the privileges once I get this to work.
Are you able to test this with a user that has the System Administrator security role? This would completely rule out it being a security role issue.
Is there a difference in security roles between your development environment and test environment?
Did you deploy the embedded canvas app or Model-Driven app to the solution?
I just made a test, I exported the embedded canvas app as the managed solution, and imported to another test environment, It can work well.
Could you try to import the app and embed it into the form separately?
I am a system administrator in both environments. There isn't a difference in roles between the 2 environments.
I thought this was interesting, when I open the form using the default solution on the target environment (the form can't be opened in the managed solution) I get an error message....
On the field used for the canvas app click "Customize"
The user with object id ... does not have permission to access the path '/providers/MicrosoftPowerApps/apps/...
Any ideas where this is coming from? The user object id that is specified in the error does not match my D365 user id.
I am not sure how a manual import would work with a canvas app on a D365 form. It doesn't give you an option to import or point to another app. It looks like you can only create a new canvas app or customize the one that was already created on the form.
Do you have additional information how that would work?
Here is an update to my situation. I discovered that when I remove the System Administration role from a Dynamics 365 user the canvas app loads. It seems counter intuitive but yes - removing the System Administration role allows the app to load! However, we also need users with this role to use the canvas app. Has anyone experienced this before?
Also another problem popped up. The canvas app loads data from our dev environment not the test environment where it is was installed in our managed solution. This one is weird too. Any ideas?
Thanks for your help.
Canvas appid which you configured in entity form is not consistent across environment. So you have to try reading the appid from configuration or such as environment variable. Even i want the solution for the same issue. Some one pls help us
I figured out what the issue was. For some reason the form that had the canvass app must must have been corrupt.
Here's how I fixed the problem: