Project Service Automation is a fully featured Dynamics 365 application for the management of service based projects and includes features like estimating projects, tracking projects actuals and resource planning. There is not too much documentation available for Project Service Automation so I intent to blog about any nuggets I discover as I start to use Read More…
Quick Tip – Turn Activity Feed Posts Off in Dynamics
Sometimes your clients not interested in using the Activity Feed Posts functionality in Dynamics. You can turn it off system wide in two simple steps. Firstly go to Settings -> Activity Feeds Configuration and filter all the Active records and Deactivate them. Now goto Customization -> Default Solution and Publish all Customizations. You could do it for Read More…
Message Listener with No Code Json Parsing
In this post I am going to show how you can configure a message listener in Dynamics CRM that will receive Json messages, parse the Json and create a record using the parsed data We are going to do all of this without any custom code. First a bit of background on an unused corner of Read More…
Simple Dynamics CRM Console Application
This is a quick tip on how to create a simple Dynamics CRM console application in C# that connects to Dynamics CRM 2016 and creates an account record. There is some sample code in the SDK that demonstrates how to do this but this sample is even simpler. static void Main(string[] args) { // Get the CRM connection string and connect to the CRM Organization CrmServiceClient crmConn = new CrmServiceClient(ConfigurationManager.ConnectionStrings[“CRM”].ConnectionString); IOrganizationService crmService = crmConn.OrganizationServiceProxy; Entity acc = new Entity(“account”); acc[“name”] = “Joe’s New Account”; crmService.Create(acc); Read More…
How to add an Editable Grid to a Dynamics CRM Form
A frequent request from users of Dynamics CRM is how can I edit records in a grid. This is not possible out of the box and users find it frustrating to edit records one by one. You could use the immersive Excel feature but this is limited in controlling which fields you can update as Read More…
How to handle Nulls in Dynamics CRM Calculated Fields
One of the little wrinkles with calculated fields is that they cannot handle nulls and so if one of the values in the calculation is null then the calculated field value is null. In this example I have four custom fields on the opportunity entity to track the customers estimated sales by quarter. The calculated field Read More…
Dynamics CRM – Google Charts Mashup
The combination of HTML Web Resources, Web API and Javascript libraries in Dynamics CRM allows you extensively customize the user interface. Here I am going to show how you can create a mashup of these technologies to show a custom appointments timeline chart on the account form. The out of the box charts are somewhat limited In Read More…
Open Dynamics CRM Form Using Alternative Key
The introduction of alternative keys in Dynamics CRM 2015 give us the ability to add unique identifier fields to entities in CRM. This is particularity useful when you need to store an unique identifier from an external system against a CRM record. At the same time the Upsert command was added to the SDK to Read More…
Tracing in Dynamics CRM Custom Assemblies
When writing custom assemblies for Dynamics CRM you can add trace messages to your code to help track down problems and identify performance issues. Trace messages can logged by initializing the tracing service in your code and calling the Trace method. I usually add the execution time as part of my trace messages especially when calling external services as this Read More…
Interactive Service Hub – Sub Account Activity Issue
I have started to have a look at the capabilities of interactive service hub for a potential project. The interactive service hub is a new user interface for Dynamics CRM currently targeted at service functionality. The interactive service hub user interface is very slick and although only a subset of the core entities are supported Read More…