Latest Microsoft Dynamics 365 Blogs | CloudFronts - Page 12

Resolving an “Error: Value cannot be null” issue in Microsoft Dynamics 365 Project Service Automation

Anyone who uses a CRM on a regular basis hopes that it will work seamlessly without errors. But from time to time, when creating and qualifying a lead, confusing error messages popup and leave users wondering about a resolution.  A very common error in Dynamics 365 Project Service Automation comes up when trying to qualify a lead using the Project Information form when the lead is type is set as “Work Based.” The popup below shows the error message: This error cropped up after I did the following steps: Step 1: Create a lead with the basic required details Step 2: Ensure the form selected is Project Information form Step 3: The Type of lead field should have the value Work Based Step 4: Save the lead Step 5: Try Qualifying the lead. This will lead to the above error shown in the screen shot. The best way to resolve this issue is to check the parameter settings, shown in the screenshot below. Upon researching the issue, I found that there is an important parameter setting that is missing, which needs to be changed in order to get to a resolution. When the lead is created, even though we do not have a customer specific price list, PSA asks for a default price list, inferring that this could be a potential customer. The go to place where PSA checks the global parameter setting is Project Service–> Parameters. Click on the default organization unit. In my case, CloudFronts Mumbai. Click on the price list tab (shown in the screen shot below) and then click on the add new project parameter Price List button on the grid. A pop-up opens that asks for the price list. Select the price list and save. Now, when you create your lead in the Work Based type and qualify it, the error will not reappear. With these changes, the price list for the organization unit is updated in PSA. Whenever we use the organization unit again for a quote, contract, or project, this price list will be the default setting. Most importantly, the parameter helps to qualify the lead successfully. This process reflects my personal findings, based on my experience using PSA for the last five years. We have benefited a lot from the implementation of PSA, because we save time and money due to easy access to resources and the ability to manage them.

Share Story :

Setting the WorkHourTemplate to schedule resources correctly in Microsoft Dynamics 365 Project Service Automation

I was trying to explore the Extend Booking functionality in Dynamics 365 Project Service Automation (PSA) and saw that the users were getting allocated for the entire 24 hours in a day. Immediately, I realized that the issue was coming up because the work hour template was not set properly. When the new work hour template was created, the work hour parameters for the resources were not set back to eight hours. To check the work hours of a resource, navigate to Project Service–>Resources–>Select a Resource. Click on the button “show work hours” as highlighted in the screenshot below. A popup opens. The screenshot shows that the work hours are not defined for the resource as of now. As a result, the resource will be allocated for 24 hours if they are selected for a project unless there working hours are defined.    I selected the resource in the Default Work Hour Template and then created the work hours for that resource (eight hours a day and Monday-Friday working). I assigned these work hours to all the resources in the navigation shown below. Select all resources and click on the ‘Set calendar’ button from the Ribbon Control. I assumed that the new work hours will be set for all the resources selected. I then tried to allocate via extend booking and saw that the resource was still not reflecting the new work hours set. Upon further research I worked out a solution that follows the proper way to define the work hour template of the resources. I created a new work hours template by navigating to Project Service Work Hour Templates. This new work hour template was created to define the following: Working hours per day of the resource. Working days in a week. Holidays in a year. The resource selected should have the proper work hours defined. Select all the resources and assign the newly created work hour template. Because Kuldeep Gupta is a template resource in this example, all the resources will get assigned from Kuldeep Gupta. As a result, it’s not possible to select more than one resource. Now while creating the project select this newly created Work Hour Template  and the project will respect the new work hours. A word of caution: You will not be able to change the work hour template for the old projects as the field is locked and you are not allowed to change it in the midst of the project. I hope that these steps help you to create and assign the work hour template effectively.

Share Story :

Send Emails using WebApi in MS CRM

Posted On January 25, 2019 by Admin Posted in Tagged in

Introduction: This blog explains how to Send Emails using WebApi in MS CRM. Request: Post URL:  <your instance url>/api/data/v9.1/ emails (<guid of the email record>)/Microsoft.Dynamics.CRM.SendEmail Header: Content-Type: application/json Parameter To be send in body: Parameter Value Comment IssueSend False If value is set as false, then email is market as sent only in MS CRM. IssueSend True If value is set as true, then email is sent and as well as marked as sent in MS CRM. Body: {        “IssueSend”: “true”  } Response:

Share Story :

Creating an Email activity in MS CRM through WebApi

Posted On January 16, 2019 by Admin Posted in

Introduction: This blog explains how to Create an Email activity in MS CRM through WebApi Request: Post URL:  <your instance url>/api/data/v9.1/emails Header: Content-Type: application/json Prefer: return=representation Body: 1. Creating Email with resolved emails (To field of email is record in MS CRM). { “description” : “Email Created”, ///Email Body “regardingobjectid_account@odata.bind” : “/accounts(69C38067-EDB7-E811-A961-000D3A363C81)”, “subject” : “Test Email Creation”, “email_activity_parties” : [ { “partyid_systemuser@odata.bind” : “/systemusers(CED2E02D-188E-4AA8-B6E2-D746E9B370C1)”, “participationtypemask” : 1 ///From Email }, { “partyid_account@odata.bind” : “/accounts(69C38067-EDB7-E811-A961-000D3A363C81)”, “participationtypemask” : 2 ///To Email }] } 2. Creating Email with unresolved emails (To field of email is not record in MS CRM). { “description” : “Email Created”, “regardingobjectid_account@odata.bind” : “/accounts(69C38067-EDB7-E811-A961-000D3A363C81)”, “subject” : “Test Email Creation”, “email_activity_parties” : [ { “partyid_systemuser@odata.bind” : “/systemusers(CED2E02D-188E-4AA8-B6E2-D746E9B370C1)”, “participationtypemask” : 1 }, { “addressused”:”vvyas@cloudfronts.com”, “participationtypemask” : 2 } ] } 3. Creating Email with multiple unresolved emails (To field of email is not record in MS CRM). { “description”: “Test Email”, “regardingobjectid_account@odata.bind”: “/accounts(69C38067-EDB7-E811-A961-000D3A363C81)”, “subject”: “Update Your Phone Number”, “email_activity_parties”: [ { “partyid_systemuser@odata.bind”: “/systemusers(CED2E02D-188E-4AA8-B6E2-D746E9B370C1)”, “participationtypemask”: 1 }, { “addressused”:” vvyas@cloudfronts.com”, “participationtypemask”: 2 }, { “addressused”:” smahato @cloudfronts.com”, “participationtypemask”: 2 } ] }

Share Story :

Rename Dynamics 365 Sales Entity

Posted On December 25, 2018 by Admin Posted in

Introduction: This blog explains how to rename the Dynamics 365 Sales Entity Scenario: In this we will rename Account Entity To Company. Steps: 1. Rename the Entity. Go to your solution. Select the entity and change the Display Name and Plural Name of entity. Save and Publish your Customizations. 2. Export Translations Click on Translations –> Export Translations. Extract the downloaded .zip file.  Open the CrmTranslations.xml file in Excel 3. Now we have to make changes in CrmTranslation file.  Steps: a. Unprotect all the sheets. Go to Review tab –> Click on Unprotect Sheet button Repeat this for all the sheets. Information Display Strings Localized Labels b. Go to Display Strings Sheet Highlight the whole column C Find and Replace (or press Ctrl-H) Open Options on the Replace window and ensure that Match Case is ticked You need to replace the plural names first and then the singular names. Find – Accounts, Replace with – Companies Find – accounts, Replace with – companies Find – Account, Replace with – Company Find – account, Replace with – company c.  Go to Localized Label sheet. Highlight the whole column D and repeat the steps performed in Display Strings sheet. d. Save the file. 4. Import Translation File Create .zip file. Make sure you select both the files and zip them rather than zip the folder. Go To solutions. Click on Translations -> Import Translations. Choose your .zip file and click import. Publish your Customization after Successful Import. Now you can see  changes Account entity is renamed as Company.

Share Story :

Dynamics 365 Online Authentication with Client Credentials

Introduction: This blog explains how to Authenticate Dynamics 365 Online with Client Credentials. Steps: Steps in Azure 1. Register a App in Azure Active Directory. Login to portal.azure.com Navigate to Azure Active Directory –> App Registration –> New Application registration 2.  Create App with Application type -> Web app/ API. Copy the Value of Application ID. 3. Give permission to Dynamics 365 Online. Go to Settings –> Required permissions –> Add –> Dynamics CRM Online –> Select  Select the following permission. 4. Click on Grant Permissions –> Yes 5. Generating client secret key. Go to Settings –> Keys Create a new key and copy its value Steps in D365 Sales Create Application user. 1. Add a user from Portal.office.com 2. Go to settings -> security -> users. Change the view to Application Users. Add New user. 3. Enter User name and Application ID. Value of Application ID is obtained from MS Azure. 4. save 5. After Saving values of Application ID and Azure AD Object ID will come automatically. Steps in Azure 1. Add this user as Owner of the App which we created in MS Azure. Settings –> Owners –> Add owner 2. Obtain tenant id Azure Active Directory –> Properties –> Directory ID   Making a Request using Postman POST URL: https://login.microsoftonline.com/<tenant id> /oauth2/token Header:Content-Type: application/json Body: Key Value client_id Application ID of the registered app in Azure resource https://trial.crm.dynamics.com (Dynamics 365 Online Insance URL Client_secret Key value from the registered app in Azure Grant_type client_credentials Below screen shows how to use above given keys to generate the access token. This token has expiration time. You need to refresh this token.

Share Story :

Actual vs Estimated hours myth

Introduction: All these years, I was calculating ‘Actuals’ as the billable hours on the project with the chargeable role. It was a myth that I continued to believe until I stumbled upon the solution that potentially demystifies this myth in PSA itself. Description: Below is how PSA helped to resolve this complex situation and this is how I cleared my understanding towards Actuals vs Estimated in PSA. In the project, I observed that the project was estimated to be a short project of 22 hours and the ‘Actuals’ were of 24 hours. Thereafter, I decided to dig deeper into it to understand the issue of these 2 additional hours, as this was not a big project and getting the additional 2 hours mistake would be very easy. To fix this, below are the actions that I followed: I accessed the Actuals from Project–> Project Name–> Actuals, as shown in the screen shot below. In the grid there, I sorted the “cost” aspect and calculated the number of hours which turned out to be 24. This was strange for me. Then I looked at the “Resource Role” column in the grid and found a 2-hour entry under the Non-Billable role. I pondered why these 2 hours Non-Billable hours are getting summed up in the actuals. But, if thought correctly, even the Non-Billable hours spent by the Resource is an Actual cost to the company. Conclusion: In this way, I could clear the air of confusion surrounding this and for my project budget calculations, I got another field created in the form named billable hours and calculated the sum of all the chargeable roles hours in that field. This now gave me all the three i. e Actuals, Estimated and billed hours in one go. Microsoft Dynamics 365 PSA is the next generation of cloud-based systems which provides an overview of business processes from Sales, Project Management, Customer Service and Fields Service.

Share Story :

How to Display Custom Entity in D365 Field Service Mobile App

D365 For Field Service provides everything you need from optimized work order scheduling to predictive maintenance. While you may have used Microsoft Dynamics 365 for Field service, very few may know about the actual steps required to display Custom Entity in D365 Field Service Mobile App. Let’s see how to display Entity in D365 Field Service Mobile App. 1. Find Entity by using Quick Find feature in Woodford. 2. Select Entity and Click Enable Button. 3. Enable Fields on Entity. Open Fields Section Select Fields to be exposed Click Save button 4. Create Form for Entity. Open Form Section on Entity. Click New Button for Form. Enter Name for Form and click OK. Select fields for display by clicking “Add Field” menu. Design form as per need by dragging fields from Fields Section and click Save & Close button. 5. Create View for Entity. Click View Section. Click New Button. Enter Name for View and Click Ok button. Design View as per need by dragging fields from Fields Explorer Section and click Save & Close button. 6. Display Entity in Home. Open Home tab. Drag Entity from Available Items Section to Home Section. Click Save button. 7. Publish the Solution. Conclusion: Hope the above description explains clearly about the Entity in D365 Field Service Mobile App. There are endless possibilities to what D365 Field service Mobile App can do and displaying entity is just one of them. D365 Field Service is one of the greatest applications that is capable of improving business capabilities and increase efficiency to the highest level.

Share Story :

Chargeability view substitute in PSA V3

Introduction: In recent deployments of Dynamics 365 Project Service Automation (PSA) V2 for customers, I’ve come to rely on the chargeability view as a way to modify a quotation and reach the appropriate pricing for a project. In V3, PSA has abandoned the chargeability view. But no need to worry, I will show you how to accomplish the same thing with customer pricing in PSA V3! Steps: Let’s take the example of a quotation I have prepared for the Rotary Club. They need CRM to be implemented. By default, the price list that gets tagged comes from the opportunity that we create or the one that we tag with the quotation. Let’s check the price of a developer in the default price list in the screenshot below. Here, the default price that it shows is $1,250. I built a quotation to the customer based on my default sales price list. Below is what it looks like. The quote now is $12,500 ($1250 x 10 quantity) for 10 hours of requirement gathering. After submitting the quotation to the customer, they came back with a request to reduce the pricing. Now how do we achieve this in V3 which lacks the chargeability view of V2? In V3 we will need to follow these steps: 1. Open the quote 2. Click on “Project Price Lists” as shown in the below image: 3. Click on Create Custom Pricing and PSA creates a custom price list for the quote where you can store the negotiated price like you used to do in chargeability view. 4. Open the price list by clicking on it. There you can navigate to role prices. Select the line on which you want to update the price and click on the edit button that comes up in the header of the grid. Then you can proceed to update the prices based on what you have negotiated. To post the updated prices, click on the activate button. The sequence is shown in the image below. Overall, the process tends to be pretty intuitive. 5. Navigate back the Quote line and follow one more final step: If you open the Quote line details to see if the prices have been updated, you will see that the prices are still the same as the old entries. In order to reflect the new updated roll prices, open the line, go to remove the roll, and re-enter the roll to fetch the updated price. The updated quote with the updated price looks like this: And with that, you have achieved the functionality. Conclusion: Microsoft Dynamics 365 for Project Service Automation enables companies to deliver projects more productively and profitably with higher client satisfaction. Even though PSA V3 has eliminated the chargeability view, it is still possible to access the view in a much simpler way.

Share Story :

Expand & Collapse Matrix Row Headers in Power BI

Posted On November 14, 2018 by Admin Posted in

There are two ways you can expand/collapse row headers in matrix visualization. First one is through the Right-click menu. You will see options to expand/Collapse the specific record or row you clicked on, entire level or all down to the very last level of the hierarchy. In exactly same way you can collapse row headers as well. Right- Click -> Expand/Collapse Also, you can add +/- buttons to the row headers through the formatting pane under the row headers card. By default, the icons will match the formatting of the row header. Additionally, you can format it with the color and size. Once you have turned on the icons, it will work similarly to the icons of drill-down.

Share Story :

SEARCH BLOGS:

FOLLOW CLOUDFRONTS BLOG :


Secured By miniOrange