Advanced Find – “NOT IN” Query is Supported in v9.0

Dynamics 365 9.0 supports “Not In” \ “Does Not Have” type of queries as an OOTB feature in Advanced Find. In previous versions of Dynamics 365 had no this feature but there were some custom solutions to facilitate this problem.

The problem in previous versions : 

This post (“Not In” \ “Does Not Have” Query in Dynamics CRM – By Cobalt) explains the problem and it describes a solution for the problem for previous versions.

The solution in 9.0 :

The scenario is to query all the accounts which have no cases under in each account.  Following query returns the expected results using advanced find without installing any third party components.

“Does Not Contain Data” Clause

AdvancedFindNotInQuery

The above advanced find query doesn’t allow users to select any more attributes from the cases as it looks for accounts which have no cases. It’s very logical to restrict the user to filter values from the cases when “Does Not Contain Data” option is selected. Continue reading “Advanced Find – “NOT IN” Query is Supported in v9.0″

Advertisement

Dynamics 365 : Promote to Admin

Promote to Admin feature allows any user in Dynamics 365 to make himself an Administrator in the system if the user is authorized from the Admin Center.

Usually when you create an online instance of Sales/Customer Service by yourself but you won’t be able to see most of the admin settings.

promotetoadmin2

If any user has been granted the admin priveledges from the admin center, but that user has no system admin roles assigned (under manage roles) in Dynamics 365, then this feature is useful for getting the System Administrator user role back.

promotetoadmin1

 

Promote to admin is one of the options that you can use in order to gain the admin priveledges. It will add “System Administrator” user role to the user.

Dynamics 365 – Copy Price List

Price List is a member of Product Catalog in Dynamics 365. The same product can have different prices depending on the geographical area, season, membership/customer level etc… A price list may contain all the prices (Price List Items) for a given set of products during a time period in Dynamics 365.

Product Price List 2016 Price List 2017
Product 1 10
Product 2 20
Product N

Having a large number of products under a price list means, there are many price list items associating with them. Whenever a new price list is added to Dynamics 365, Continue reading “Dynamics 365 – Copy Price List”

Dynamics 365 + CTI / IVR Integration

What is CTI / IVR?

Computer Telephony Integration, CTI enables computer systems to interacts with the telephone system. There are two main forms of CTI which are Outbound dialing and Inbound call handling.

Interactive Voice Response, IVR is a well-known technology which allows computer systems to interact with humans through the use of voice and DTMF(Dual Tone Multi-Frequency) tones input via the keypad.

How does it work?

Simply, when a customer communicates with a customer care service using the telephone, IVR system can interact with the customer to verify information during the call. This can be Outbound or Inbound, but most organizations use IVR only for handling Inbound calls. Continue reading “Dynamics 365 + CTI / IVR Integration”

Xrm.Utility : openEntityForm with Parameters

Using “openEntityForm” a CRM form can be opened. While it is opening, different form fields values can be populated and those values can be passed to the form.
Xrm.Utility.openEntityForm(name,id,parameters,windowOptions)
name: Entity Logical Name
id: Record id
parameters: Form id, Field Ids, and Values, Custom query string parameters
windowOptions: Flag to open as a New Window

Passing Parameters and Populate Field Values in a New Contact Form

function openNewContact() {
var caseId = Xrm.Page.data.entity.getId();
var title = Xrm.Page.getAttribute(“title”).getValue();
    var windowOptions = {
openInNewWindow: true
};
var parameters = {};
parameters[“new_caseid”] = caseId;
parameters[“new_caseidname”] = title;
Xrm.Utility.openEntityForm(“contact”, null, parameters, windowOptions);
}

Continue reading “Xrm.Utility : openEntityForm with Parameters”

“Not In” \ “Does Not Have” Query in Dynamics CRM – By Cobalt

In Dynamics CRM Advanced Find, Querries can be built for various conditions \ for various filter criteria. But, “Not In” type queries cannot be built and it doesn’t work with OOTB querying. Cobalt has a cool feature which allows users to make “Not In” \ “Does Not Have” types of queries in Advanced Find and for Views.

The Problem:

One Account can have many Cases. Dynamics CRM can display all the “Accounts which has Cases” in Advanced Find\Views. But, Dynamics CRM cannot display all the “Accounts which has no Cases” using Advanced Find\Views.

query1

Solution:

Use “Does Not Contain Data” clause for filtering Continue reading ““Not In” \ “Does Not Have” Query in Dynamics CRM – By Cobalt”

Microsoft Dynamics CRM content packs for Power BI – Web and Mobile

Power BI transforms data into rich visual forms such as Different Graphs, tables, Reports and into many more types. Power BI is capable of taking data from files, databases, and online services.

Power BI has Sales Manager and Service Manager content packs which can be used to connect to Dynamics CRM Online and Power BI. Following content packs can be used to connect and visualize a rich set of predefined Dashboards and Reports. Content packs use OData feeds to get data from OOTB entities in Dynamics CRM Online 2016.

  • Microsoft Dynamics Online Sales Manager Content Pack
  • Microsoft Dynamics Online Service Manager Content Pack

This is how you can use it with Power BI and Sample Data comes with Dynamics CRM 2016 Online have been used for examples.

1. Connect to Power BI with the Office 365 account.

1

2. Click on “Get” under the “Services” tile to get the content packs. Continue reading “Microsoft Dynamics CRM content packs for Power BI – Web and Mobile”

Solution Enhancements in Dynamics CRM 2016

Clone a Patch, Clone Solution, and Apply Solution Upgrade are the cool new features released with Dynamics CRM 2016.

CRM Solution is an excellent way of transferring customizations from one environment to another and solution version helps to identify each set of customizations of transferring. CRM solutions will contain different components such as entities, processes, plugin assemblies, user roles etc…. There are two types of CRM solutions called unmanaged and managed. Usually, development environment of any CRM solution will contain the unmanaged solution and that will be transferred to test\production environment as a managed solution, which is not supposed to edit directly in those environments.

However when transferring CRM solutions from one environment to another, even if you change only one component or only one piece of a component you have to send the whole solution to the other environment to apply the change in the other solution.  Also, the changes will be applied in the other destination environment as soon as you import the managed solution from the development environment.

1

Dynamics CRM 2016 has set of new features added to solve the above difficulty and has introduced a more methodical way of managing patches and solution versions. Following topics describe those new features in detail using a CRM solution named “CORE” containing 3 system entities(Contact, Account and User) and one custom entity(Application). Continue reading “Solution Enhancements in Dynamics CRM 2016”

ISSUE: The plug-in type could not be found in the plug-in assembly

I registered one plugin assembly with two plugins written targeted to contact entity and registered in one of Dynamics CRM 2015 Online instances. It worked properly after adding steps into it. Here I am discussing the issue raised, an observation was done and the solution to the issue. But this only on a scenario for this issue to be raised and there can be many other scenarios to see this same issue.

Issue: After some time I wanted to add few more plug-ins to the same assembly, targeting some custom entity events and I updated the same registered plugin assembly with the newly build assembly. However, after adding steps to the relevant plugins and after triggering relevant events I got some errors from all the plugins I newly added. I checked the very first plugin events I registered in the same assembly and those functioned perfectly.

Error Message: All the errors showed the same error message “The plug-in type could not be found in the plug-in assembly:” in them.

Unhandled Exception: System.ServiceModel.FaultException`1[[Microsoft.Xrm.Sdk.OrganizationServiceFault, Microsoft.Xrm.Sdk, Version=7.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]: System.ArgumentNullException: Value cannot be null.
 Parameter name: TrackingId: 87e5f936-7499-4bc1-b649-f78fd4739016, Depth: 1, Message: SandboxAppDomainHelper.Execute: The plug-in type could not be found in the plug-in assembly:  Continue reading "ISSUE: The plug-in type could not be found in the plug-in assembly"

Dynamics CRM – Azure Integration (Part 3) : Explore Service Bus Messages

Detailed explanation on Dynamics CRM – Azure Integration. Technologies, mechanisms, tools and issues are enclosed under three topics in three connected posts.

Connected Posts:
Dynamics CRM – Azure Integration (Part 1) : Create Azure Service Bus Namespace
Dynamics CRM – Azure Integration (Part 2) : Create Dynamics CRM Service Endpoint
Dynamics CRM – Azure Integration (Part 3) : Explore Service Bus Messages


Azure Portal Queue\Topic Dashboard

Azure portal shows stats, monitoring, usage for each component in the Namespace such as Queue, Topic etc.

QueueUsage

Service Bus Explorer

Service Bus Explorer is a good tool to manage, monitor and test entities (Queues\Topic-Subscriptions\Relays\Event Hubs). Service Bus Explorer tool can be Continue reading “Dynamics CRM – Azure Integration (Part 3) : Explore Service Bus Messages”