Search This Blog

Friday, September 21, 2018

Plugin Registration Tool For Dynamics 365 V9

Step 1: Create a folder in D Drive and name it as “Dynamics_365_Development_Tools
Step 2: Click on Windows, search for Windows PowerShell and open it.
Step 3: Type the below command to change the directory.
cd D:\Dynamics_365_Development_Tools
and press Enter.
Step 4: Copy & Paste the below PowerShell script in PowerShell Window to download tools from Nuget.
$sourceNugetExe = "https://dist.nuget.org/win-x86-commandline/latest/nuget.exe"
$targetNugetExe = ".\nuget.exe"
Remove-Item .\Tools -Force -Recurse -ErrorAction Ignore
Invoke-WebRequest $sourceNugetExe -OutFile $targetNugetExe
Set-Alias nuget $targetNugetExe -Scope Global -Verbose

##
##Download Plugin Registration Tool
##
./nuget install Microsoft.CrmSdk.XrmTooling.PluginRegistrationTool -O .\Tools
md .\Tools\PluginRegistration
$prtFolder = Get-ChildItem ./Tools | Where-Object {$_.Name -match 'Microsoft.CrmSdk.XrmTooling.PluginRegistrationTool.'}
move .\Tools\$prtFolder\tools\*.* .\Tools\PluginRegistration
Remove-Item .\Tools\$prtFolder -Force -Recurse

##
##Download CoreTools
##
./nuget install Microsoft.CrmSdk.CoreTools -O .\Tools
md .\Tools\CoreTools
$coreToolsFolder = Get-ChildItem ./Tools | Where-Object {$_.Name -match 'Microsoft.CrmSdk.CoreTools.'}
move .\Tools\$coreToolsFolder\content\bin\coretools\*.* .\Tools\CoreTools
Remove-Item .\Tools\$coreToolsFolder -Force -Recurse

##
##Download Configuration Migration
##
./nuget install Microsoft.CrmSdk.XrmTooling.ConfigurationMigration.Wpf -O .\Tools
md .\Tools\ConfigurationMigration
$configMigFolder = Get-ChildItem ./Tools | Where-Object {$_.Name -match 'Microsoft.CrmSdk.XrmTooling.ConfigurationMigration.Wpf.'}
move .\Tools\$configMigFolder\tools\*.* .\Tools\ConfigurationMigration
Remove-Item .\Tools\$configMigFolder -Force -Recurse

##
##Download Package Deployer 
##
./nuget install Microsoft.CrmSdk.XrmTooling.PackageDeployment.WPF -O .\Tools
md .\Tools\PackageDeployment
$pdFolder = Get-ChildItem ./Tools | Where-Object {$_.Name -match 'Microsoft.CrmSdk.XrmTooling.PackageDeployment.Wpf.'}
move .\Tools\$pdFolder\tools\*.* .\Tools\PackageDeployment
Remove-Item .\Tools\$pdFolder -Force -Recurse

##
##Remove NuGet.exe
##
Remove-Item nuget.exe
Press Enter.
Step 5: Below Tools will be downloaded to D:\Dynamics_365_Development_Tools\Tools Folder.

Source Link: https://arunpotti.wordpress.com/tag/plugin-registration-tool-dynamics-365/


Friday, August 4, 2017

Hide Ribbon button on form using javascript in crm 2015

var deativebtn=top.document.getElementById("button id");
 deativebtn.style.display="none";

Example:
var deativebtn=top.document.getElementById("cms_applicant|NoRelationship|Form|Mscrm.Form.cms_applicant.Deactivate");
deativebtn.style.display="none";

Hide Subgrid Create button from form using javascript in crm 2015

  document.getElementById("subgridname_contextualButtonsContainer").disabled = true;
document.getElementById("subgridname_contextualButtonsContainer").style.display = "none";
document.getElementById("subgridname_contextualButtonsContainer").style.visibility = "hidden";

Wednesday, July 12, 2017

Set Current date and time in feild using Javascript in crm 2015

function settodaydate()
{
var currentDateTime = new Date();
Xrm.Page.getAttribute("fieldname").setValue(currentDateTime);
}

make whole form fields readonly using javascript in CRM 2015

function MarkAllFieldReadOnly() {// this function will make whole form fields readonly

Xrm.Page.ui.controls.forEach(function (control, index) {

try{

control.setDisabled(true);

}

catch (e)

{

}

});

}

Tuesday, August 30, 2016

Group Row based on Multiple related records to show single record

Add following expression:
=Microsoft.VisualBasic.Strings.Join(LookupSet(Fields!COurseActivtyiD.Value, Fields!COurseActivtyiD.Value, Fields!invigilator.Value, "DataSet1"), ", ")

Now Edit in row Group:



Tuesday, March 15, 2016

Get Record's User Security Roles in CRM 2015 using Javascript

Get Record's User Security Roles in CRM 2015 using Javascript

function GetUserRoles() {
    var roles = Xrm.Page.context.getUserRoles();

    for (var i = 0; i < roles.length; i++) {
        GetRole(roles[i]);
    }
}

function GetRole(roleid) {
    var serverUrl = Xrm.Page.context.getClientUrl();
    var oDataSelect = serverUrl + "/XRMServices/2011/OrganizationData.svc/RoleSet?$select=Name&$filter=RoleId eq guid'" + roleid + "'";

    var retrieveReq = new XMLHttpRequest();
    retrieveReq.open("GET", oDataSelect, false);
    retrieveReq.setRequestHeader("Accept", "application/json");
    retrieveReq.setRequestHeader("Content-Type", "application/json;charset=utf-8");
    retrieveReq.onreadystatechange = function () {
        GetRoleData(this);
    };
    retrieveReq.send();
}

function GetRoleData(retrieveReq) {
    if (retrieveReq.readyState == 4) {
        if (retrieveReq.status == 200) {
            var retrieved = JSON.parse(retrieveReq.responseText).d;
            if(retrieved.results[0].Name="System Administrator")
            {
            Xrm.Page.getAttribute("cms_showdialogbutton").setValue(0);
            }
            else
            {
            Xrm.Page.getAttribute("cms_showdialogbutton").setValue(1);
            }
            alert(retrieved.results[0].Name);//Security Role Name
        }
    }
}