Tuesday, 25 December 2018
Get Organization Unit (OU) Name - MS CRM 2011/2013/2015/2016/D365 On-Premise
I am a Dynamics CRM Technical Consultant based in Noida, India.
I am Microsoft CRM certified. I've been working with CRM systems for over 7+ years and with Dynamics CRM and ASP.net.
Feel free to email me on anshul12003@gmail.com. Views expressed are my own.
Thursday, 20 December 2018
The request failed. The request was aborted: Could not create SSL/TLS secure channel.
Error: The request was aborted: Could not create SSL/TLS secure channel.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Reason: The error is generic and there are many reasons why the SSL/TLS negotiation may fail. The most common is an invalid or expired server certificate, and you took care of that by providing your own server certificate validation hook, but is not necessarily the only reason. The server may require mutual authentication, it may be configured with a suites of ciphers not supported by your client, it may have a time drift too big for the handshake to succeed and many more reasons.
Solution: Added some more code to make it works -
ServicePointManager.Expect100Continue = true;
ServicePointManager.DefaultConnectionLimit = 9999;
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12 | SecurityProtocolType.Ssl3;
I am a Dynamics CRM Technical Consultant based in Noida, India.
I am Microsoft CRM certified. I've been working with CRM systems for over 7+ years and with Dynamics CRM and ASP.net.
Feel free to email me on anshul12003@gmail.com. Views expressed are my own.
Saturday, 1 December 2018
Windows Authentication Errors on local Servers
Windows Authentication Errors on local Servers (Loopback Protection)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LsaDisableLoopbackCheck (DWORD)1 to disable the
loopback check (local authentication works), or to 0 (local
authentication is not allowed).
I am a Dynamics CRM Technical Consultant based in Noida, India.
I am Microsoft CRM certified. I've been working with CRM systems for over 7+ years and with Dynamics CRM and ASP.net.
Feel free to email me on anshul12003@gmail.com. Views expressed are my own.
Thursday, 1 November 2018
Domain Migration/Change for Existing MSCRM/D365 On-Premise
Domain Migration/Change for Existing MSCRM/D365 On-Premise
Query: If your office and changed to a new domain and the users are all migrated to the new domain. Users are currently accessing CRM with the old credentials and you are planning to change the domain of existing CRM to point to new. Please advise me with the best approach to proceed further -
There are 2 Approaches you can follow to migrate domain -
Approach 1
1) Install CRM on a new server in the new domain.
2) use SQL backup restore to move the MSCRM DB to SQL Server in the new domain
3) Point to CRM new CRM OU while DB import
4) Use the user mapping tool to change the existing domain with the new domain name.
5) Use a CRM deployment manager to import it as a new organization.
Approach 2
1) Directly change the Domain name of the existing CRM setup
2) Modify registry or update database appropriately to fix the server URL / ConfigDB changes and so on.
I am a Dynamics CRM Technical Consultant based in Noida, India.
I am Microsoft CRM certified. I've been working with CRM systems for over 7+ years and with Dynamics CRM and ASP.net.
Feel free to email me on anshul12003@gmail.com. Views expressed are my own.
Sunday, 28 October 2018
Reporting Error: Error while fetching data extension
I am a Dynamics CRM Technical Consultant based in Noida, India.
I am Microsoft CRM certified. I've been working with CRM systems for over 7+ years and with Dynamics CRM and ASP.net.
Feel free to email me on anshul12003@gmail.com. Views expressed are my own.
Sunday, 21 October 2018
Validation are allowed in MSCRM using JavaScript
function validateLastName(executionContext) {
var formContext = typeof executionContext != 'undefined' ? executionContext.getFormContext() : Xrm.Page; // get formContext
var pattern = /[^a-z]/ig;
var fieldName = 'lastname';
var currentValue = formContext.getAttribute('lastname').getValue();
if (pattern.test(currentValue)) {
formContext.getControl(fieldName).setNotification('Invalid value, please only enter letters.');
} else {
formContext.getControl(fieldName).clearNotification();
}
}
function validateAccountName(executionContext) {
var formContext = typeof executionContext != 'undefined' ? executionContext.getFormContext() : Xrm.Page; // get formContext
var pattern = /[^a-z0-9&\'"#\-\/<>]/ig;
var fieldName = 'name';
var currentValue = formContext.getAttribute(fieldName).getValue();
if (pattern.test(currentValue)) {
formContext.getControl(fieldName).setNotification('Invalid value, only these special characters are allowed: &\'" #-/<>');
} else {
formContext.getControl(fieldName).clearNotification();
}
}
function validateCity1(executionContext) {
var formContext = typeof executionContext != 'undefined' ? executionContext.getFormContext() : Xrm.Page; // get formContext
var pattern = /[^a-z]/ig;
var fieldName = 'address1_city';
var currentValue = formContext.getAttribute(fieldName).getValue();
if (pattern.test(currentValue)) {
formContext.getControl(fieldName).setNotification('Invalid value, please enter only letters.');
} else {
formContext.getControl(fieldName).clearNotification();
}
}
function validateTelephone1(executionContext) {
var formContext = executionContext ? executionContext.getFormContext() : Xrm.Page; // get formContext
var pattern = /[^0-9,\-]/ig;
var fieldName = 'telephone1';
var currentValue = formContext.getAttribute(fieldName).getValue();
if (pattern.test(currentValue)) {
formContext.getControl(fieldName).setNotification('Invalid value, please enter only numbers or - and ,');
} else {
formContext.getControl(fieldName).clearNotification();
}
}
function validatePostalCode(executionContext) {
var formContext = typeof executionContext != 'undefined' ? executionContext.getFormContext() : Xrm.Page; // get formContext
var pattern = /[^0-9\-]/ig;
var fieldName = 'address1_postalcode';
var currentValue = formContext.getAttribute(fieldName).getValue();
if (pattern.test(currentValue)) {
formContext.getControl(fieldName).setNotification('Invalid value, please enter only numbers or -');
} else {
formContext.getControl(fieldName).clearNotification();
}
}
I am a Dynamics CRM Technical Consultant based in Noida, India.
I am Microsoft CRM certified. I've been working with CRM systems for over 7+ years and with Dynamics CRM and ASP.net.
Feel free to email me on anshul12003@gmail.com. Views expressed are my own.
