Dynamics CRM Archives - Page 9 of 16 - - Page 9

Category Archives: Dynamics CRM

Update BPF using Power Automate when DocuSign Envelope is sent

Problem Statement: We need to update the BPF and move to the next stage using Power Automate. The change to BPF should happen after the DocuSign Envelope is Sent. In our scenario, DocuSign and CRM are not integrated and so we will be using Power Automate to help us achieve the task. Solution: When DocuSign Envelope is sent, trigger Power Automate by using the DocuSign connector. The Envelope event here will be Sent. Since our DocuSign is not integrated with CRM, we cannot complete the update of Opportunity, until we get the Opportunity ID. As a workaround, we have hidden the Quote Id on the Proposal during generation of proposal. On trigger of Power Automate, we extract the Quote ID from the document. To know more about it, you can refer the blog https://www.cloudfronts.com/close-quote-when-docusign-envelope-is-completed-using-power-automate/ In this blog I have directly saved Opportunity ID in Compose Action. To update the business process flow, we need to get the BPF record as below: List the Business Process Flow for the Opportunity ID. Get the Stage Id to which you want to set your business process flow and store in a Compose action. To know how to get Stage Id, refer my blog https://www.cloudfronts.com/get-stage-id-of-business-process-flow-stages/ Store the path traversed by the Opportunity in Compose. You can use the traversed path directly also. Update the BPF record Set the Active Stage and traversed path. Active Stage= processstages(ID of stage you want to set as active) Traversed Path= concat(existing traversed path,’,’,stage id)

Share Story :

How to bring in Project Task field from Resource Requirements to Time Entries if imported via, Bookings.

Import Bookings is one of the important features provided by PSA for users to do Time Entries quickly and efficiently. An issue faced while using this functionality is the Project Tasks are not imported with the Bookings Records (As Shown in the Image Below). A solution to this issue is two automated flows: To Bring the Project Tasks from Resource Requirements Entity to Bookable Resource Booking. Hence to bring the obtained Project Tasks from Bookable Resource Booking to Time Entries. Let’s Begin with the Implementation of the solution! (Flow To get Project Tasks from Resource Requirements to Bookable Resource Bookings) Step: 1 Bringing Project Tasks from Resource Requirement’s to Bookable Resource Booking. Step: 2 Update the Bookable Recourse Booking Record with the obtained project task. Now we have successfully obtained the Project task in the Bookable Recourse Bookings           Entity from the Resource Requirements, Our Next step is to Take this Project task on the Time Entries. (Flow to get Project Task from Bookable Resource Bookings to Time Entries) Step: 1 Bringing Project Task from Bookable Resource bookings to Time Entries. (Tip : It is better to check if the Project Task Field is empty or not hence we can also put a condition to do so, if the Project Task Field is empty proceed with updating the Project Task field else Terminate.) Step: 2 Get the Project Task from the Bookable Recourse Bookings. Step: 3 Update the Time Entries with the obtained Project task. Step: 4 Import Bookings and there you go you will now be able to see the Project Tasks. Hope this Helps!

Share Story :

Hide Tab using JavaScript

Introduction : In this blog we will see how to hide tab using JavaScript. Implementation : Step 1 : Javascript for hiding tab :  Step 2 : Upload script on load of form -> ok -> Save and Publish . Result : Hope this helps

Share Story :

Display Month in Text Format Using Power Automate

Introduction: Using Power Automate we can format date in various formats, however we had a requirement to populate date in document in  June 10,2020  format. Solution: Here is how to achieve the same. In this example I am formatting the System date which is obtained from function utcnow(). formatDateTime(utcNow(),’MMMM dd, yyyy’) Output: If you do not need to display the full Month in words, you can write “MMM” instead of “MMMM” and get the below output.

Share Story :

Auto-refreshing Views or Grid in D365 CRM

We all know that Views show records based on filter criteria that is applied to the Views. But, what if there is a custom button that will change the records status and according to the Views filter criteria it should not be present in the View. The View should have been Auto-Refreshed. We can achieve this by JavaScript.  Use Case: We had a requirement where we wanted to Auto-Refresh the View as soon as the status of record is changed. We have a custom button that will change the status of the selected records but when the Status changes, it  doesn’t auto refreshes the View. We had to manually reload the page or click on refresh button on the View.  Steps: 1. When the status of the Record changes, you have the id of record then there’s a fully supported way which we can use to Auto-Refresh the View: “refreshParentGrid=Refreshes the parent grid that contains the specified record.” 2. In our case, We had the custom button which changes the status of the record. This is the code: Suppose the custom button is called as “Submit”. On clicking the button it should change the Status and also the records should not be visible in the view as the filter criteria is Status= “In Progress and Rejected” 1. The filter of the View. 2. On clicking the Submit Button, the selected record should not be visible. 3. The View Auto-Refreshed and the selected records are not visible in this View. Note: This can be used in Sub-grids of the forms also. Conclusion: I hope this blog helps you to Auto-Refresh the View.

Share Story :

Connect D365 CRM CDS Database from SQL Server

Many times, we feel like why I can’t access D365 CRM Database directly from MS SQL Server, so here is my blog that will guide you on how you can connect D365 CRM CDS Database using MS SQL Server Steps to enable D365 CRM CDS Database to make it connect from MS SQL Server: Login to https://admin.powerplatform.microsoft.com/ using administrator credentials. In Environment section, click on your environment for which you want to enable D365 CRM CDS for MS SQL Server. (In my case I am clicking on DemoEnvironment as shown below.) When Environment opens click on settings in header. Settings page will open, Click on Product and then click on Features. When features Page opens enable TDS Endpoint (Preview) and click save. Now, we have successfully enabled D365 CRM CDS to connect it from MS SQL Server. Steps to Connect CDS Database from MS SQL Server: Open MS SQL Server. In connect to SQL Server Window enter Server name (It will be your D365 CRM URL) followed by comma and Port Number (5558) e.g. of server name yourdomain.crm.dynamics.com,5558. Select Authentication as Azure Active Directory – Password. Enter Username: Your admin user id e.g. admin@xyz.com Enter Password: (Your Login password) ******** Click Connect. Now, you have successfully connected to D365 CRM DB. Write a select query and test if it’s working.

Share Story :

Get/Read Selected Record Information From Main View Or A Sub-Grid using Ribbon Workbench In D365 CRM

There is a common application of getting selected records information while working with custom buttons using Ribbon Workbench. Use Case: We had a requirement, where we needed the information of the all selected records from the Main View and Sub-Grid of an entity. We can achieve in Ribbon Workbench. Steps: 1. The button on which we are customizing is named as “Submit”. 2. In the Command section, click on “Actions” -> “Javascript Action” to add Custom Javascript. Then click on “Add Parameter” -> Click on “Crm Parameter” -> then on  SelectedControlSelecteItemReferences. SelectedControlSelecteItemReferences = grabs the information of all selected record from the view. 3. SelectedControlSelecteItemReferences will pass the information of all the selected records in my “selectedItems” variable passed to the method. 4. On clicking the Submit Button, the selected records information will be passed on to the Javascript Code. 5. On clicking the “Submit” button, it will pass the two selected records information to the method that the button is calling. 6. You can further read all the information from the Array and perform the actions that you want. Note: This can be done in Sub-grids of the forms also. Conclusion: Hope this blog helps to get/read the selected Information from the Main View or Sub-Grid

Share Story :

Create and Populate Word Template Using Power Automate

Introduction: We are aware of dynamics 365 CRM’s Document template functionality. However document templates do not need XML Mapping which limit the fields that we can populate in template. SO here’s a way to use Power Automate and SharePoint and implement the Document template functionality. Steps: Create Word Template with content controls and Upload to SharePoint. Enable the Developer tab and click on Design Mode. From the available controls add the Content controls, repeating controls(For data table). Click on properties and add title, tag. Once done save the word and upload to SharePoint. In you Power Automate (You can trigger the power automate as per your requirements). Action 1: Get File Content. Site Address: your SharePoint link File Identifier: Your uploaded document template. Action2: Populate a Microsoft Word Template. Location: SharePoint Location. Document Library: Share Point Site Contents. File: Your uploaded document template. Content control: the content controls from your template will be visible here. Action 3: Create file. File Name: Should end with .docx File Content: will be the populated word template. Conclusion: Thus when your power automate runs, a Document will be created in SharePoint from the document template. It is easy to populate a Content control, to know about how to populate a repeating control- check my blog. Populate Repeating Control of Word Template using Power Automate.

Share Story :

Populate Repeating Control of Word Template using Power Automate

Introduction: Power Automate makes it easy to populate word template, we can have table (Repeating control) that can be populated using Power Automate, For information on how to create and Populate Word Template- Refer my Blog: Create and Populate Word Template Using Power Automate Steps: Create a table and add content controls for each cell. After adding content controls, select the entire row and add repeating control. In Power Automate initialize an array Variable, Use append to array action and create the table you wish to populate in the Word Template. Note: Value for the array variable will be {“title in content control properties” : “actual value”} In Action populate the word template, you will see repeating control, Change the form to accept an array input, by clicking on the symbol highlighted in below screenshot. Now Add your array as input in populate word template action. Conclusion: You can populate any of your CRM Data to Word Template by using Power Automate.

Share Story :

Get Stage Id of Business Process Flow Stages

Introduction: I had a requirement where I needed to compare the Active Stage of Business Process Flow to perform an action of the Stage was Develop The Flow trigger body provided the active stage id which I had to compare with Stage id of Develop. However, I did not know the stage id, so I used the below API to get the stage details. Solution: API Query- https://CRMURL.dynamics.com/api/data/v9.0/processstages?$select=stagename&$filter=processid/workflowid eq BPFGuid Example: 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:

Share Story :

SEARCH BLOGS:

FOLLOW CLOUDFRONTS BLOG :


Secured By miniOrange