Overview and Key Features of Kupp Code Analytics (Visual Studio Extension for Dynamics 365 / Power Apps)


Kupp Software, Microsoft Partner, based in Austria, last year released their product Kupp Code Analytics (Code Analytic Tool) for Microsoft Dynamics 365, intending to help the teams to be more proficient through automating manual tasks, provide IntelliSense, code analysis, performance analysis, etc.

In this blog post, we’d have a brief look at Kupp Code Analytics. Kupp Code Analytics is a powerful Visual Studio Extension, for Microsoft Dynamics 365 and Power Platform (Dataverse). The technical team can use the tool to code faster, easier, and more efficiently, and at the same time can use the tool to analyze and get insights and adhere to best practices.

There are 2 versions of the products, the Community Version which is free, and other is Premium Version with additional capabilities.

The community version provides key features like

IntelliSense

Below we can see IntelliSense in work, we get the name of the table suggested while writing the code.

Also, we can see it listed down the corresponding attributes of the table in the context.

It also filters the suggestion based on the attribute or column type as shown below. We can see only the OptionSet type attributes being listed down.

IntelliSense is not limited to C# code but also applies to OData. (Retrieve operations)

Below we can see it listing down different Query Options

This allows us to write our OData queries that use the filter

Or any Query Functions

It also provides IntelliSense for some complex scenarios as well both, which we’d cover in detail in the forthcoming posts.

Deploy Assemblies and Web Resource

The developers can also quickly deploy/update plugins and web resources from within Visual Studio.

To deploy the plugin, right-click on the project and select Deploy to D365 option.

For the Web resource file, right-click and select the Deploy to D365 option.

Generate Early Bound Code and Convert Late Bound code to Early Bound

Developers can configure and quickly generate Early Bound Entities using the Code Generation feature of the tool.

Below is the code generation dialog for C#.

Similarly, early bound classes can be generated for TS/JS


The users can also convert the late bound code to early bound with just one click.

In the premium version of the tool, the users get the below additional capabilities.

Code and Performance Analytics

The tool has a custom code analysis rule set defined that guides the developers while writing the code.

Below we can some of the rules like usage of early bound entity, specifying only required columns instead of all columns, in action. There are other rules also which we will cover in later posts.

Debug Plugin

Another feature that is available in the premium version of the tool is the option to debug the plugin.

Selecting the options Tools >> Debug Plugin generates a ready-to-use Unit test project to test the plugin with the required plugin context generated.

Here we covered some of the key capabilities of Kupp Code Analytics, check the below links to download it and learn more about it.

Hope it helps..

Advertisements

Notes Control – Dynamics 365


We now have new Notes control for the Case table.

The new notes control allows us to associate/create note without the need to create the case record first.

Here we are adding the Notes control in our Case form.

Specify Pre Create Notes Id (Text) as Table Column for Bound Attribute.

Save and publish the changes.

On creating the record we can see notes added to the timelines.

Also, we can observe that the control now shows – “No Data Available”.

In the case of the Enhanced Case Form, we have a script that hides that section after creation.

Due Open Activities Control – https://nishantrana.me/2023/05/09/due-open-activities-control-dynamics-365/

Attachment Control  – https://nishantrana.me/2023/05/08/new-attachment-control-dynamics-365/

Hope it helps..

Advertisements

How to set Date Picker as Blank (Null)- Canvas Apps / Dataverse


If no dates are selected the Date Picker control will display a default date.

This comes from the InputTextPlaceholder property

We can update the formula to set the field as blank.

If(IsBlank(Self.SelectedDate), Text(Blank()))

Hope it helps..

Advertisements

Enable email address validation (preview) in the Model Driven app / Dynamics 365


To enable the new email address validation feature (preview), log in to Power Platform Admin Center >> Settings >> Features >> Data Validation


Switch On – Data Validation. (Interestingly in one of the environments enabling this setting was enough to get the smart email validation working however in another environment had to enable the below settings as well to get that working)

Next open the Model Driven App in Maker Portal – App Designer and switch on  Enable Smart Email Address Validation Control 

EmailOn

Below we can see it validating the email address while we enter its value

We get the below messages

And this works for the email field in a custom entity as well.

Refer – https://learn.microsoft.com/en-us/power-apps/maker/data-platform/data-validation-email-column

Also, check the similar feature we have for Sales Hub App

Hope it helps..

Advertisements

How to – Extend (Recover) the trial environment (Dataverse / Dynamics 365)


On logging into Power Platform Admin Center, we would see our trial environment as expired

And then within one day or so, we would see them deleted inside Recently deleted environments

Select the deleted environment and Select Recover

Within 10 -15 minutes we can see the environment recovered with the trial extended for 13 more days.

Hope it helps..

Using existing Web Resources (image) and Icons for button/ command – Dynamics 365 / Model-driven apps


In case of a new command that is added through Command Designer, we can specify an existing Icon using the Use Icon option.

We can also search and specify an existing Web Resource

Similarly, we can use Icon Gallery (XrmToolBox Plugin) to search for the existing web resource image and icons.

We can then use Copy Name option to get the full path of the web resource

msdyncrm_/KnowledgeManagement/_imgs/KnowledgeSearchProvider.svg

use it to specify Modern Image for our buttons

Hope it helps..

Advertisements