How to test service protection API limits in Dataverse

When I read this documentation about Service protection API limits, I was curious about the easiest way to get the error to validate the code in the documentation and enhance it. I read the documentation and found out about Dataverse search, which has a stricter policy (one request per second) which means it is easier to test. Service protection … Continue reading How to test service protection API limits in Dataverse

How to use the getUserPrivilege function in Dataverse Client API

getUserPrivilege is a function that will return canRead, canCreate, and canUpdate. This function correlated with the Field Level Security feature makes it suitable to check if users have enough privilege to run our custom function on Javascript. For example, we have below customization on formOnLoad: var BlogJs = BlogJs || {}; (function() { this.formOnLoad = function(executionContext){ onLoadCustomerId(executionContext); setValueIcNumber(executionContext); }; var onLoadCustomerId … Continue reading How to use the getUserPrivilege function in Dataverse Client API

How to use OnExternalUpdated for Dataverse Virtual Entity

When we have already set up a Virtual Table/Entity in the Dataverse, sometimes there is a scenario when a data is being updated in the source system, it also needs to trigger the Dataverse Event (that contains our custom business logic). Today, we will learn how to enable Virtual Tables to support Dataverse events. In the … Continue reading How to use OnExternalUpdated for Dataverse Virtual Entity

Dynamics CRM: Populate Data using InitializeFrom Function

Do you notice when we create a Lead and qualify it in Dynamics CRM, the out-of-the-box feature will convert the Lead to Contact (all the data that was input in Lead, automatically populated in the Contact)? And sometimes, we are also being requested to make the same feature (mapping the data from one table to … Continue reading Dynamics CRM: Populate Data using InitializeFrom Function

Dataverse: Create GetLastDateOfMonth Function in Custom Connector

Do you know we can write Code (Preview) in Custom Connector? In this blog post, we will make a simple function that will return the last date of the month to try the feature. Without further ado here are the steps: Go to make.powerapps.com > Dataverse > Custom Connectors > on the top right hit + New custom connector > Create from blank option: … Continue reading Dataverse: Create GetLastDateOfMonth Function in Custom Connector

Dataverse: Export Import Solution from your command prompt using PowerApps CLI

Powerapps CLI have lots of function to support our daily activities. The most useful to me of course the command "pac plugin init" that automatically creates Plugin Project. Today, we will learn about Authentication and Solution commands to do export-import across the environment. Installing You can find the download link of the PowerApps CLI on this page. Once you have … Continue reading Dataverse: Export Import Solution from your command prompt using PowerApps CLI

Dataverse: Improve Performance using Partition Key

Do you know we can pass the partitionID parameter when doing CRUD to improve performance? The information I got from this documentation link. Today we will prove how what is the difference between using the partitionID and not using it. To collect the data, I'll run below code: using System; using System.Web.Configuration; using Entities; using Microsoft.Crm.Sdk.Messages; using Microsoft.Xrm.Sdk; using Microsoft.Xrm.Sdk.Messages; … Continue reading Dataverse: Improve Performance using Partition Key

Dataverse: Four Ways to Bypass PluginExecution in CrmServiceClient

There is always a scenario in your organization that requires you to bypass PluginExecution (can be workflows or plugins) when doing CRUD (Create, Read, Update, or Delete) operations. Today, we will learn how we can do it in several ways. For this demonstration, I create a Workflow that will be running on Contact when Created: Create Workflow For Contact on … Continue reading Dataverse: Four Ways to Bypass PluginExecution in CrmServiceClient

Dynamics CRM: addOnLookupTagClick and removeOnLookupTagClick

Today we will learn simple methods that are related to the datatype lookup on CRM: addOnLookupTagClick and removeOnLookupTagClick. Basically, addOnLookupTagClick is a function to register an event when the user is clicking the lookup tag value. Click the Lookup Tag value From the image above, if we click the lookup tag value and we register the events using addOnLookupTagClick, those events will be … Continue reading Dynamics CRM: addOnLookupTagClick and removeOnLookupTagClick

Dynamics CRM: ExecuteBatch vs ExecuteMultipleRequest

When working with CrmServiceClient (creating integration custom app to CRM), I always pass this object as IOrganizationService. But when I try to inspect the difference between interface IOrganizationService vs CrmServiceClient class (indeed CrmServiceClient is inherited from IOrganizationService). Later on, I found the ExecuteBatch method on CrmServiceClient and ended up google it and found an article from Inogic that you can access here (from 2017!). Based on the blog post, we … Continue reading Dynamics CRM: ExecuteBatch vs ExecuteMultipleRequest