Configure warranty tracking for customer assets using calculated fields

One question I received a lot from my customers is about warranty options for customer assets. We can configure products to automatically create a customer asset at the service account once a work order product is consumed, but currently there is no option to track if that asset is under warranty or not. Armed with these requirements and the configuration options in Dynamics 365 I decided to build this functionality myself.
Before I start the configuration I need to think about what type(s) of warranty I want to track. I decided that I want to track 2 types of warranty, one for labor and one for the actual product itself. I want to be able to set the warranty time (30 days, 90 days, etc) for each individual product, including the warranty on the labor. I.E Maybe a AC Unit will get 90 days of warranty on the labor, but an AC hose will get none, or less days.
I also want to system to automatically determine if the product or labor is still under warranty, so I don’t have to update it manually. I can do this by using calculated fields. The image below shows what I want the end result to be.

Warranty Info on Customer Asset

Configuration

In order to track the two types of warranty, I’ll add two fields to the product entity. This is where I can enter how many days of warranty there is on the labor and the product(part) itself:

– Warranty Labor Duration(Days) – Whole Number Field
– Warranty Part Duration(Days) – Whole Number Field

After the fields have been created make sure you add the fields to the product form. I added a section called ‘Warranty’ to the form and added the fields to the section.

Custom Product Field

As stated above, we want Dynamics 365 to automatically track if a product and the associated labor is still under warranty, which we can do by using calculated fields. We need to check the amount of days that have passed since the installation date (created on field) so we can compare that to the number of days in the warranty fields we added to the product entity in the previous step. In the customer asset entity, I’ll rename the ‘Created On‘ field to ‘Installed On‘. I’ll also add and configure the following fields:

Days since install – Whole Number Field – Calculated
Here is where we will track the total number of days that have passed since the asset was installed. This field will calculate the days based on the difference between the out of the box ‘Created On’ field (which we renamed to ‘Installed On’) and today’s date.
I only care about warranty for customer assets that are in an active stage, so this is reflected in the condition of the calculated field:

Condition: If Status equals Active.
Action: Set Days Since Install to DiffInDays(Installed On, Now())

Labor Warranty Status – Two OptionsCalculated
This is a Boolean field that will automatically show whether the product labor of this customer asset is under warranty or not. The two option values are Warranty Expired and Under Warranty, the default value is Warranty Expired. The calculation configuration will compare the data in the Warranty Labor Duration field on the Product entity to the Days Since Install field on the Customer Asset entity:

Condition 1: If (Product) Warranty Labor Duration(Days) is greater than or equal to Days Since Install
Action 1: Set Labor Warranty Status to “Under Warranty”

Condition 2: If (Product) Warranty Labor Duration(Days) is less than Days Since Install
Action 2: Set Labor Warranty Status to “Warranty Expired”

Calculation Configuration Labor Warranty Status Field

Product Warranty Status – Two OptionsCalculated
This is a Boolean field that will automatically show whether the product related to this customer asset is under warranty or not. The two option values are Warranty Expired and Under Warranty, the default value is Warranty Expired. The calculation configuration will compare the data in the Warranty Part Duration field on the Product entity to the Days Since Install field on the Customer Asset entity:

Condition 1: If (Product) Warranty Part Duration(Days) is greater than or equal to Days Since Install
Action 1: Set Labor Warranty Status to “Under Warranty”

Condition 2: If (Product) Warranty Part Duration(Days) is less than Days Since Install
Action 2: Set Labor Warranty Status to “Warranty Expired”

The last step is to add the field to the customer asset form and to test the functionality! Optionally you can add the fields to a customer asset grid to show on an account form so people will be able to view the information from the account record without having to open the customer asset record. You can also add this to the Field Service mobile app so technicians can see the warranty for each asset.

I hope you enjoyed my last post of 2019! Be sure to check in again next week for a new topic or subscribe here to never miss another post! Happy New Year everyone!

Share this!


Comments are Closed