Dynamics 365 – Developer Toolkit & Extensions for VS2017

Microsoft Dynamics 365 Developer Toolkit and Dynamics CRM & 365 Developer Extensions are great Dynamics 365 development accelerators available in the Visual Studio Marketplace. Still, these tools are not compatible with Visual Studio 2017, which is the latest release of VS. This is a workaround that you can make use of these tools with Visual Studio 2017.

Dynamics 365 Developer Extensions is a great replacement for Dynamics 365 Developer Toolkit, steps of the workaround has been given below for both the tools.

Step 1: Download  Toolkit or Extensions from following links.

Microsoft Dynamics 365 Developer Toolkit

https://marketplace.visualstudio.com/items?itemName=DynamicsCRMPG.MicrosoftDynamicsCRMDeveloperToolkit

Dynamics CRM & 365 Developer Extensions

https://marketplace.visualstudio.com/items?itemName=JLattimer.DynamicsCRMDeveloperExtensions

Step 2: Extract the .vxis file as follows.

Extracting Microsoft Dynamics 365 Developer Toolkit vxix file Continue reading “Dynamics 365 – Developer Toolkit & Extensions for VS2017”

Advertisements

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”

“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”

Updating Resolved Cases in Dynamics 365

Some Dynamics 365/CRM record updates need specific workarounds. Due to various reasons such as adding new fields to case entity, option set changes, migrating data to some other environments etc… developers need to modify the case records including resolved cases. This post is to explain a workaround for updating and migrating Resolved Case records.

Get resolved cases using views or advanced find.

1

Export all the resolved case records using Excel Online. Continue reading “Updating Resolved Cases in Dynamics 365”

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”

Dynamics CRM – Azure Integration (Part 2) : Create Dynamics CRM Service Endpoint

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


Detecting a Change in Dynamics CRM Records

In Dynamics CRM there are few ways of detecting record changes. It is really important to track\trigger changes in Dynamics CRM systems when synchronizing data between systems.

Change Tracking is a new feature comes with latest Dynamics CRM version and this feature can be used to get a bulk of records changed in an entity. It always provides changes compared to the last retrieval  of changes. Also, this will not raise the change as soon as it happens. Some code has to be executed externally and should get the changed records from the specific entity.

CRM Workflow executions in an event is another solution of detecting changes. With the real-time workflows, the workflow can be started before or after the change.

In this post, we discuss sending Plugin Execution Context to Azure and solving issues related to that.

 

Get the Plugin Execution Context Out

Plugins can be registered to track record changes. Plugin execution context has lots of information on the record change such as data changed, images, plugin step information etc. If we need to get the record changes and related information out of CRM we can use plugins and perform any action on that data. Also, we can integrate Dynamics CRM and Windows Azure using a Service Endpoint to Azure.

PluginExecutionContext

Plugin steps can be created for different entities at different events of Continue reading “Dynamics CRM – Azure Integration (Part 2) : Create Dynamics CRM Service Endpoint”

Dynamics CRM – Azure Integration (Part 1) : Create Azure Service Bus Namespace

Detailed explanation on Dynamics CRM – Azure Integration related technologies, mechanisms, tools and issues is 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


 Windows Azure Services

Microsoft Windows Azure or Azure’s compute mainly offers three types of offerings; Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Software as a Service (SaaS).

Simply under Infrastructure as a Service (IaaS), Azure offers servers in the cloud \ virtual machines which give the feeling like a server that has been setup manually with hardware, operating system and running other applications in it. It provides Networking, Storage, Servers and Virtualization.

Windows Azure itself can be taken as a Platform as a Service. Windows Azure offers Middleware services including messaging, listening services, processing messages etc. under this. These components are really awesome when extending application behaviours, exposing to other systems and distributing services to other systems. Service Bus and its entities such as Queues, Topics, Relays, Event Hubs and Notification Hubs play a vital role under this.

Azure Websites are cheapest and easiest method of getting an application on the cloud. Web applications can be deployed from anywhere and Azure take care of CI, network traffic, availability etc.

Understanding Windows Azure Service Bus

Azure Service Bus is a generic, cloud-based messaging system for connecting applications, services and devices. Service Bus is a multi-tenant cloud service which can consist of namespaces with different types of messaging mechanisms. Depending on the requirement messaging mechanisms can be selected and the choices are; Queues, Topics, Relays and Event Hubs.

AzureServiceBusNamespace

Namespaces can be defined under Azure Service Bus. Namespace is Continue reading “Dynamics CRM – Azure Integration (Part 1) : Create Azure Service Bus Namespace”