Category Archives: Blog
SSRS Report Preview not working for D365 CRM V9 (Solution)
Issue: If you are trying to preview a FetchXML report in SSRS and you are a facing an issue due to a Sign-In Failure, then the reason for that most probable is due to the reason that you are trying to connect to CRM v9. When we try to connect to a v9 environment using report authoring extensions, the connection fails without any proper error and loops back to organization selection screen or login screen. If you would try to preview the same report in a v8.x environment then you would be able to preview it successfully. Reason: The main reason for this issue is that v9 only uses Transport Layer Security(TLS) 1.2 and TLS 1.0 & 1.1 connections whereas the previous CRM versions still support all TLS connections. Solution: The first solution would be to update your Business Intelligence Development Studio(BIDS) to the latest version. Please use the link below: https://www.microsoft.com/en-us/download/details.aspx?id=56973 The second solution is to make a few changes in your regedit For systems running on .NET Framework 3.5 on x64-based systems: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727 Create a DWORD key Name: SchUseStrongCrypto Value: 1 For systems running on .NET Framework 4.5 or later on x64-based systems: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\ v4.0.30319 Create a DWORD key Name: SchUseStrongCrypto Value: 1 Restart your PC Note: Please take a backup of your regedit before editing it. Regedit used incorrectly can cause serious problems in your operating system. For x32-based systems do not add the \Wow6432Node in the HKEY paths mentioned. Your Report should preview fine now!
Share Story :
How to Export and Import Voice of the Customer Surveys
Introduction: This blog explains how to Export and Import Voice of the Customer Surveys. Steps to be followed: Step 1 : Go to the Survey that you want to export. (survey should be in published state) Step 2 : Navigate to Notes section and download both the files. Step 3 : Navigate to your destination environment where you want to import the survey. Go to Settings -> VOC Settings -> VOC Imports Click New Enter name for the import Open the download Survey Stored xml file with notepad and copy and paste the content in Survey XML to import. Save the record Step 4 : You can see the imported survey in Draft state. Open the record. Delete the automatically created Translations file from Notes section. Attach the downloaded Translation file in notes. Step 5 : Publish the survey.
Share Story :
D365 Retail POS Customization – Adding Custom Column to Picking and Receiving View
Introduction: In D365 Retail POS, if you want to customize anything you need Extension Points. Over-layering is completely sealed. So, now if you want add custom columns to your View which is designed using code you can do it using Custom column extension. Each view has its own custom column interface which you can import and use to add columns. You can view the available Views for adding custom columns in ‘Pos.Api.d.ts’ file. Scenario: In Picking and Receiving, Update view you want to view details of Product variants like Size, Color and Config for all lines. Steps: Open ‘ModerPOS.sln’ from K:\RetailSDK\POS. Navigate to Pos.Extensions -> SampleExtensions -> ViewExtensions. Create a new Folder ‘PickingAndReceivingDetails’. In Folder, Add a TypeScript file and name it ‘CustomPickingAndReceivingListColumn’. Add the below code in file. //Added new column size, color and config; Also, take care of existing column by mentioning it else it will throw error //Note: Summation of ratio should be 100 import { IOrderLinesListColumn } from “PosApi/Extend/Views/PickingAndReceivingDetailsView”; import { ICustomColumnsContext } from “PosApi/Extend/Views/CustomListColumns”; import { ClientEntities } from “PosApi/Entities”; export default (context: ICustomColumnsContext): IOrderLinesListColumn[] => { return [ { title: “Product Number”, computeValue: (row: ClientEntities.IPickingAndReceivingOrderLine): string => { return row.productNumber; }, ratio: 15, collapseOrder: 9, minWidth: 60, isRightAligned: false }, { title: “Description”, computeValue: (row: ClientEntities.IPickingAndReceivingOrderLine): any => { return row.description; }, ratio: 30, collapseOrder: 8, minWidth: 70, isRightAligned: false }, { title: “Size”, computeValue: (row: ClientEntities.IPickingAndReceivingOrderLine): string => { return row.sizeTranslation; }, ratio: 5, collapseOrder: 7, minWidth: 40, isRightAligned: false }, { title: “Color”, computeValue: (row: ClientEntities.IPickingAndReceivingOrderLine): string => { return row.colorTranslation; }, ratio: 10, collapseOrder: 6, minWidth: 40, isRightAligned: false }, { title: “Config”, computeValue: (row: ClientEntities.IPickingAndReceivingOrderLine): string => { return row.configurationTranslation; }, ratio: 10, collapseOrder: 5, minWidth: 40, isRightAligned: false }, { title: “UOM”, computeValue: (row: ClientEntities.IPickingAndReceivingOrderLine): string => { return row.unitOfMeasure; }, ratio: 10, collapseOrder: 4, minWidth: 40, isRightAligned: true }, { title: “Quantity Ordered”, computeValue: (row: ClientEntities.IPickingAndReceivingOrderLine): any => { return row.quantityOrdered; }, ratio: 10, collapseOrder: 3, minWidth: 40, isRightAligned: true }, { title: “Quantity Received”, computeValue: (row: ClientEntities.IPickingAndReceivingOrderLine): any => { return row.quantityReceived; }, ratio: 5, collapseOrder: 2, minWidth: 40, isRightAligned: true }, { title: “Quantity Received Now”, computeValue: (row: ClientEntities.IPickingAndReceivingOrderLine): any => { return row.quantityReceivedNow; }, ratio: 5, collapseOrder: 1, minWidth: 40, isRightAligned: true } ]; }; Open manifest.json file and Add the View to manifest.json File inside the Views section. “PickingAndReceivingDetailsView”: { “orderLinesListConfiguration”: { “modulePath”: “ViewExtensions/PickingAndRecivingDetails/CustomPickingAndReceivingDListColumnExtension” } }, Build and Run the POS.
Share Story :
Email in Unified Interface as a separate app in D365
Introduction: Email in Unified Interface Dynamics 365 is also available as a separate app! Here’s how you can get it. By default, the new email capabilities are already available in the Unified Interface of D365. But you can have it as a separate app if you’d like. Installing the App: Here’s how you get it – 1. Navigate to the Instance Picker on the D365 Admin Centre, then go to Solutions area on the instance picker. 2. Once installed, it will appear as Installed. Provide Users access to the app & access it: The following security role should be provided to the users for them to access it – You can access the application from here. And here it is – Just a better way around than going into UCI and then looking for emails.
Share Story :
Enable SharePoint for Dynamics 365
Introduction: If you try to configure SharePoint with dynamics 365 sales, it will pop up with “Microsoft Dynamics 365 list component is not installed”. This error used to come in earlier version of dynamics CRM but now we are start receiving message to install the list component. Description: As it is explained in the introduction you need to install the List Component. If you follow steps provided in alert box you will not able to configure. As provided steps are for on premise version and would not install online. So, this will not help us as our environment is online, now what to do. Solution: You need to enable the server base SharePoint integration to configure the SharePoint. Go to setting ==> Document management and follow the steps provided. Once server-based configuration is completed you need to enable it for the document management setting. Provide the value valid SharePoint url.
Share Story :
Integrating Twilio with D365 CRM Online to send SMS Messages using Microsoft Flow
One of the most popular ERP systems that is amazingly popular among all small and mid sized businesses is Microsoft dynamics NAV integration. Installing CRM NAV integration is extremely easy and simple and its interface is so easy to understand that anybody can learn it within no time. This is the reason NAV integration has earned a good reputation in the market and people love using it as well. In today’s cloud based environment if you upgrade dynamics NAV you will surely have an edge in your business as compared to your peers. With improved functionality enhanced capabilities and new features your business productivity will be boosted multiple times reducing your overall business cost improving customer service. Introduction: SMS Messages can be sent from a D365 CRM Online to an individual using the Twilio. In this blog, we will see how we can send SMS Messages from CRM using Twilio and we will be using Microsoft flows to achieve this. Pre-Requisites: Twilio Account D365 CRM Microsoft Flow Steps to be followed: Dynamics 365- Create two fields in Contact Entity, named as a. Send SMS b. SMS Sent Data Type (Two options) Twilio- To Connect Twilio in Microsoft Flow You require: Twilio Account Id Twilio Access Token Steps: Sign in to your Twilio account Click on Dashboards Under Project info tab you can find the Account SID and Auth Token (Copy this value and paste it somewhere you will require this values in MS Flows) Setup Phone Number. a. Click on “All Products & services” b. # Phone Numbers MS Flow Login to Microsoft flow. Select Create from Blank. Select Dynamics 365 connector.a. Select when a record is updated trigger.b. Select the organization name and Entity. Select “+New Step” and “Add a condition”a. Enter condition in “Edit in advance mode”.Condition: @and ( equals(triggerBody()?[‘cf_sendsms’], true), equals(triggerBody()?[‘new_smssent’], false) ) If Yes a. Enter Twilio Account Id which is Acoount SID and Twilio Access Token which is Auth Token. b. After Connection is being established. Enter the From and To Phone Number. Enter Text message which you want to send. Click on “Add a connection” –> Dynamics 365 – Update a record. Overall Flow:
Share Story :
Applying Pivot Table in Excel using Automation Server Objects in NAV
Introduction: In NAV when building a custom report that deals with totalling the amount by multiple G/L accounts by week then the report becomes tough to read as well as develop in standard SSRS Report. A possible and easy workaround is dumping all the entries in the Excel and performing the pivot table operation on the entries to give a precise results. Pre-requisite: Microsoft Dynamics NAV 2017 Demonstration: 1. List of Variables: 2. UpdateRange function to automatically update the sheet range of the current row: 3. Creation of Excel Entries Sheet: Creation of Excel Sheet: Creation of Column Titles: Insertion of Data Entries: 4. Pivoting the Data from the sheet containing entries: Pivoting operation in Excel takes place with the help of Pivot Cache. This Cache is modified using the Automation Variable. Conclusion: The method of using Automation Variable is allowed in On-Prem version of NAV, as it uses Excel libraries that already installed with Microsoft Office. Although this method works perfectly fine Windows Client, it does not work on WebClient. Thanks for reading!!
Share Story :
Conditional Formatting By Values in Power BI: August Update
In the August 2018 update of Power BI, we can now apply conditional formatting based on field value. This allows us to use a measure or column that contains a color name, a hex name/code and apply that color to the background of the cells and the font in the cells of that column. For example, if I want to use color to signify the product name, we can create a calculated column to assign color names to each product as shown below: Then add that calculated column (‘Color’) to your table, and go to the Conditional Formatting dialog for ‘Color’. Select ‘Background Color’. Select ‘Field Value’ in the ‘Format by’ drop-down menu. Since I only have one color name per row, I will select First ‘Column Name’, Summarization ‘First’ and click OK. The background color of the cells in the calculated column will now be according to the color name in the cell. If you don’t want to see the color names, repeat the steps but select ‘Font Color’ as shown below. The entire cell will now be filled. If you want to use hex names/codes instead of color names, you can create a calculated measure/column using them as shown below. Now follow the same steps as above to apply conditional formatting to the table using hex codes/names. This can help highlight sets of data easily based on their values and without the need to set rules.
Share Story :
Row Numbering Issue for Grouped Data in SSRS
Issue: In SSRS if we are using an aggregate function in a group at the Tablix level, then you may realize that the simple row numbering function does not give a current sequential ranking. Using the function RowNumber(Nothing) gives something like this. Using RowNumber(“GroupName”) would also give an incorrect row numbering and look something like this. This is because RowNumber does not actually give the row count. Rather it counts the incidences of the data in the group and returns that value. Solution: We can use the “RunningValue” function in SSRS. The format for the expression would be. =RunningValue(<Grouped field>,CountDistinct,”<DataSet>”) Eg: =RunningValue(Fields!Name.Value,CountDistinct,”Accounts”) This would return something like this. This should fix your issue!
Share Story :
HTTP POST Requests using Microsoft Flows
Introduction: In this blog we will demonstrate the working of HTTP Request -Response in Microsoft Flows. Implementation: Step 1: In our example we will make a POST call to our Microsoft Flow so that we can further apply some logic in Flows. The POST request contains the following data. JSON: [{ “name”: “TestName”, “Address”: “TestAddress” }] Now we can use online editor tools to create a schema file of the above JSON. (https://jsonschema.net/). Submit the JSON data and the schema will be generated as shown below. Step 2: Now we go to Microsoft Flows,create a new flow and add the first step as “Request” as shown below: Step 3: We then paste the JSON schema that we earlier saved In the “Show advanced” options we have to add the following details: Once that is done we select a condition. In our example we will pass a JSON Array hence we will loop through each item. Here we add a apply to each condition as shown And we add a dynamic output from the previous stage Then inside the apply to each loop we can add any action and take the values passed from the POST request. For this example I create a new account in CRM with the name and address provided as shown below Step 4: Now when we save this flow a URL is generated in the First HTTP Request step. We test the flow by calling this URL from Postman. The URL generated is show below Step 5: Now we open Postman and write the request as shown below Also in the Header section we add the following details Step 6: Once we click on Send the two records are created in CRM as shown below Conclusion: We can call this URL from outside Dynamics CRM as well and using this we explore many more functionalities provided by Microsoft Flows to achieve the desired outcome.