-
Continue reading →: CRM 2016 Document Generation – Enable Developer Tab and Add repeated rows in word file
Document Generation is a new feature introduced in CRM 2016. Document Generation simplifies converting your CRM data to either Word or Excel documents. Below are the steps to Download Template Configure Template Upload Template Generate Document. Download the Document Template Navigate to ‘Settings -> Templates’ Choose ‘Document Templates’ Click ‘New’…
-
Continue reading →: “Bad Data” Error – During Web.Config file Decryption
In one of my web application we are reading credentials from Web.config file’s Connection Strings section. And we are encrypting the Connection Strings using aspnet_regiis.exe tool during deployments. Below are the steps to Encrypt/Decryption of Config file using aspnet_regiis.exe tool Encryption Command Open Visual Studio Command Prompt and run below commands.…
-
Continue reading →: Login failed for user SQL Server, Error: 18456 – Troubleshoot steps
In my SQL server I have a Login account ‘sa’ with ‘SQL Server Authentication’. Even though all the properties provided properly, I was unable to login with below login exception. Troubleshooting steps: SQL Server Authentication: Open ‘SQL Server’ properties window Make sure SQL server’s ‘Server Authentication’ set to ‘SQL and Windows…
-
Continue reading →: Host a SSRS report which gets data from external Data Source – CRM on-premise
We got a requirement to host a SSRS report in CRM, which gets data from external data source (i.e., Data Base from another SQL server). CRM normally uses Shared Data Source when you upload any SSRS report which pulls data from CRM. In our case we had to Create a new…
-
Continue reading →: Post XML over HTTP and capture the response – C#
Recently we got a requirement to post the data from ‘CRM Plug-in’ to an external API and capture response. External API was built as XML over HTTP (i.e., Its not a SOAP based and no WSDL). In this approach we post the Request XML to a URL and in return…
-
Continue reading →: CRM 2016 Web API – Impersonate User
In CRM, Impersonation is possible in Plug-ins (using ‘Run As’ while registering Plug-in step) or using ‘CallerId’ property while instantiating OrganizationServiceProxy. What if I have to impersonate ‘Retrive’ operation from Jscript? This was not possible. With advent of CRM Web API with CRM 2016 we can impersonate in Jscript. What…
-
Continue reading →: CRM 2016 Web API – Optimistic Concurrency
Assume a scenario, you retrieved an Account and wanted to update the ‘Name’ field. But due to concurrency the same Account has changed on the server since you retrieved it and you may not want to complete the update. So how to detect this situation and avoid concurrency issues? The…
-
Continue reading →: CRM 2016 Web API – Retrieve a record
Below is the sample script to retrieve an Account record using Web API. Key Points to perform Retrieve: Use ‘GET’ request while performing Retrieve ‘Status’ code would be 200. Sample Script: function retrieveAccounts() { var clientURL = Xrm.Page.context.getClientUrl(); var req = new XMLHttpRequest() req.open(“GET”, encodeURI(clientURL + “/api/data/v8.0/accounts?$select=name&$top=1”), true); req.setRequestHeader(“Accept”, “application/json”);…
-
Continue reading →: Specified domain does not exist or cannot be contacted – Error connecting to SharePoint from CRM on premise Plug-in
In one of our Plug-in, we have logic to upload the note’s attachment to SharePoint server. Everything was working as expected until we got this unexpected exception ‘Specified domain does not exist or cannot be contacted’. Reason & Fix: Reason for this exception while updating Plug-in Assembly, I accidentally set…
-
Continue reading →: Boot failure reboot and select proper boot device – Error connecting to VM – Hyper V
I was getting below ‘Boot failure error’, while connecting to one of my VM with Windows Server 2012 OS, from Hyper V. Reason & Fix There could be many reasons for this problem. In my case below steps solved the issue. I initially chosen ‘Generation 1’ while configuring VM. Re-configuring the…


