<img src="https://secure.leadforensics.com/133892.png" alt="" style="display:none;">

In previous blog posts I have described features in the new list standard. The new list standard is a gold mine of good features, don´t forget about it! All programs listed in CMS005 have the new standard, and today I am going to describe how to create your own virtual field for a date comparison. (The new list standard is available from 13.2 and onwards).

When you have a list of purchase orders (PPS220 in this case) you can create personalizations to highlight the late order lines, but if you only see the delivery date, it is hard to quickly figure out how late an order line really is.

In the example below I have created a virtual field that shows the number of days an order is late. To the field I have added a personalization that highlights the number of days late with red when the order is delayed, and adds a grey background if the order is more than 50 days late.


Virtual fields really helps the users to see data in an easier way, and they are not difficult to configure. So let’s start making a field that shows number of days late!

We will start from CMS005, and in the example we are using the program purchase order lines, PPS220.


Option 12 takes us to the virtual fields.

To be able to show number of days late I need three virtual fields. First I need to find the day number for the requested delivery date, then I need to find the day number for today’s date, and at last I need to calculate the difference.

To get the day number for requested delivery date I create a field called &DWDT. The field type should be 7 - Date, and it is a numeric field. I want the base date to be based on an object, in this case IBDWDT (delivery date) and the date output is 2 – Day number.


To get the day number for today’s date, I create a field called &TODA. This field is also of type 7 – Date, but the base date is set to current date.


The last step is to create the field that will show number of days late, &LATE. This field is of type 1-Calculation. Since you need to have the day numbers before you can do the calculation, I need to use the calculation sequence, highlighted in yellow below.

The calculation is easy in this case, we just calculate the difference between requested delivery date (&DWDT) and todays date (&TODA).


When the fields are ready, I will add the new field to the view in PPS220, and once that is done I can see the number of days late!



Discuss this post

Recommended posts

How does your food company manage climate change, globalisation and stricter regulatory requirements? One thing is for sure, it has never been more important to have a business system that can manage different types of parameters in your food production chain.
If a problem were to be detected in one of the foodstuffs sold by your company, how long would it take for you to check every product affected? With a traceability solution you can do it in just minutes.
Managing and keeping track of external documents like customer contracts does not have to be difficult. With a simple configuration you can archive customer contracts in Infor Document Management (IDM) and automatically associate the document with a customer record. This way you will always be able to easily find the document, without leaving the M3 user interface.
Sometimes you want to know how many records you have of a certain type in a list. If I am looking at purchase order lines I might want to know how many open order lines I have per supplier, or how many delayed order lines we have at the moment. If I am working with manufacturing orders I might want to know how many open orders we have in my facility, or how many orders we have of a certain type. How do we show this in a simple way?
Sometimes you need a simple way of following changes of values for certain fields in M3. By using the event log in M3 you have a handy solution 😊 Follow the steps below and you will have a log of changed values for supplier bank accounts in just a few minutes!
right-arrow share search phone phone-filled menu filter envelope envelope-filled close checkmark caret-down arrow-up arrow-right arrow-left arrow-down