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

I am working in a project where we are doing a lot of work in the Usability area, and one challenge we got was that there was a need to be able to add a reason code when the customer creates corrective invoices in M3.

How can we solve that without modifying the Java code? The answer is creating a jscript and use the custom extension tables to store the data.

When you create a corrective invoice you change price/quantity on the lines, and then you approve. Our jscript will open a popup window when we do the approval, and in that box you have to choose a reason code.


The available reason codes are taken from CRS103, reason codes. We are using CMS100MI to get the codes. CMS100MI is a new API, available from 13.3, for which you create your own API-transactions.

When you click save, the data is saved in CUGEX1, which is one of the custom extension tables that was introduced in 13.1. Since there are standard API:s available for add/change/delete records in CUGEX1, we don´t have to code any API:s on our own.

To be able to view the reason codes we have created a mashup, but we will also use the data in reports. Below you can see a part of a mashup, where we see the lines from the corrective invoice, combined with the changed values, the reason codes and who did the change from CUGEX1.


This is one example of how you can create really good solutions combining the new Infor tools. More examples will follow, so keep reading the blog!

Subscribe to the M3 Usability Blog


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