Skip to main content

Working with Solutions in CRM Dynamics

Introduction:

In this post, we will read about solutions,Components and  Import-Export of solutions in  Dynamics CRM. Also we will see working with both the old and new interface of Dynamics CRM.

Pre- requisites:
An instance of CRM Dynamics 365/ Trial account.

Theory:

Solutions are used to extend business functionalities in CRM. Solutions provide a framework for packaging, installing, and uninstalling components to match your business functionalities.
Managed and Unmanaged are the two types of solutions.

An unmanaged solution is a solution that is still under development and not intended to be distributed.By default, any new solution is an unmanaged solution and until you have completed all customizations, you must not create a managed solution. 

A managed solution is a solution that is completed and intended to be distributed and installed. 

Now since there are many developers working on a project, each one might create different solutions for his/ her part of customizations and there might be a conflict as to what order/ which solution to apply.


In CRM usually the last solution which is imported or created will be applied.


How to create a Solution:

1) login to http://portal.office.com and sign in with your CRM trial account.

2) Click click on settings and go to advanced settings

3)Advanced settings will land you to the settings page, after  clicking on the arrow besides settings, you can see the options in the below screenshot 


4) Create a new solution
Note: By clicking on "Try new experience" , you can use the new interface


5) After creating a solution, you can add existing components that you want to customize. In case you don't need any of the existing components- you can add new components.You can add Entity, Web-resources, Plugin assembly etc.We can discuss about the components as we go ahead.

For Details: 
https://docs.microsoft.com/en-us/dynamics365/customerengagement/on-premises/developer/create-export-import-unmanaged-solution

Importing and Exporting Solutions:
After creating a solution on your testing/ development/ Sandbox environment, you might want to move all customizations to production, the method of doing that in CRM is by using import- export functionalities.

Exporting a Solution: In your sandbox , create a new solution, add all the relevant components that you want to move to production. These components will include entities,forms,fields,plugins,etc.

Note: While adding components, the solution will give you a pop up asking to add other required components as well, you can check the list shown and decide whether you want to add those components or no, usually the components which are present on production to which we have not made any changes in sandbox are not added.

1) select the solution , you want to export--> click on export--> Publish all customizations( this is done in case you have made any last minute customizations and have forgotten to publish it.-->Next

2) After clicking next, it will ask for the type of package(Managed/Unmanaged). It is always preferred to export an unmanaged solution.

3) Once you click on export a zip of your solution will be downloaded.

Importing a Solution: On Production, go to solutions and click on Import
1) Select the zip of solution that you have exported,If there is any error in the solution you are trying to import, then that error will be displayed.
2) Once you have resolved the error, you may go ahead and import the solution.

Comments

Popular posts from this blog

Get Business Process Flow Stage Id using API Query

Developers may need to get the stage ids of BPF stages in order to use in power automate or JS. Here is a blog that will help. API Query-   https:// CRMURL.dynamics.com/ api/data/v9.0/processstages?$select=stagename&$filter=processid/workflowid eq BPFGuid   Eg: 1) Get the GUID of  Business Process Flow whose stage details you need. Replace below Query with Your CRM URL and BPF GUID. https://Test130.crm.dynamics.com/ api/data/v9.0/processstages?$select=stagename&$filter=processid/workflowid eq 9128E4D1-1234-4852-ABD0-A63A6ECA5C5D   Output:    The output will provide the stage name and ID.

Dynamic, Multiple Recipients of D365 Email in Power Automate

When t he activity parties (TO, From, CC) ae static, we can easily send emails. However here is how we can set the activity party dynamically on the Email.    In above screenshot we can see the Activity party attribute is populated for single value and is static to only a single entity record GUID.   Solution: The create a record of Email message is as below, here we are entering the attributes of activity party, by clicking on "Switch to Input entire array" You will get the Array format, the participationtypemask is TO, FROM,CC while the partyid@data.bind is the email address. Now all you need to do is create a dynamic array, You can use append to array variable action to create an array with participationtypemask as per your requirement. Example: get all users whom you need to send email, append the user id to array. pass this array as input to the Activity Parties field in create an email record.  

Power Automate to Access SharePoint Recycle Bin

Introduction : A ccess Recycle Bin of SharePoint using Power Automate. Steps: Actions: select "Send an HTTP request to SharePoint" Enter the below details: Site Address: Select your site address from the list. Method: GET Uri, Headers: Refer the screenshot below. Pls. Note: Trigger used was When a File is Deleted- SharePoint Connector. Select Action "Parse JSON" In parse JSON, the content is the body of HTTP Response Enter the below Schema: { "type" : "object" , "properties" : { "odata.metadata" : { "type" : "string" }, "value" : { "type" : "array" , "items" : { "type" : "object" , "properties" : { "odata.type" : { "type" : "string" }, "odata.id" : { "type" : "string" }, "odata.editLink" : { "t