The following should be considered before starting:
- Investigate if a specific modification is used and if it is still relevant for your business. In this process, you may need help from an Infor M3 process consultant. A modification may have been replaced by standard M3 or can be rewritten using new tools like building a CMS015MI custom API, using ION Workflows/MEC, Event Hub in combination with CMS047, or a Custom-built Web application hosted in Homepages.
- User surveys should be carried out to determine if a feature is used and helpful for your users. Use the result in your cost-benefit analysis to decide whether to lift a modification out to new technology or completely scrap it.
M3 program scripting has been here for a while, and many, like me, have created a lot of scripts in the Smart Office Client, benefiting our customers and end-users. This approach has resulted in fewer program modifications.
I have now successfully managed to rewrite a few quite advanced scripts to the H5 Web client. H5 is also an M3 Client for Infor M3 Multi-Tenant Cloud. I am looking forward to exploring this technology over the next months further. H5 Scripts are created in TypeScript language and are using Infor H5 SDK libraries and jQuery to simplify creating interesting M3 program experience features.
Scripts have commonly been used to validate input values, either by validating existing panel information or making API transactions to get more input from the M3 server. As a result, you move customer-specific logic for validation to the client as a script instead of server-side modification. Another advantage is the immediate notification to the user in case of error. By doing this, routines for fixing master data may be less required.
Default settings/business data in panel
Since scripts are customized in the program panel, this is a simple way to configure and set up fixed data standards for the panel/program.
Extra information can be added to the panel, helping users making better decisions. Extra information can be retrieved from API transactions, either M3 standard or by using a customer-specific API. It can be set up in CMS015MI, EXPORTMI, or MDBREADMI.
Perform something on behalf of the user / additional updates to M3
The script makes it possible to add buttons to perform various tasks, for example, calculations. When saving a panel, calls for M3 table updates can be made, for example, by saving information to the customer extended tables: CUGEX1 or CUGEX3, or to other M3 tables using standard API transactions. Several new standard APIs have been released in later On-Premise and Cloud versions making this feature more powerful.
Make it more visual/exciting to the user.
Panel content can be visualized in a new and better way, for example, by highlighting fields with a specific color.
The H5 clients still support automation when you need to jump to another application fast, and bookmarking cannot be used. I have done a lot of advanced stuff in the old Smart Office client. I am looking forward to seeing if some of these scripts will work after being rewritten to H5.
I have developed some scripts by using background threading in Smart Office. For example, several order lines can be updated using APIs, often called using URL in a Mashup or from a button in the M3 program. A mashup cannot do script routines like looping itself. I can’t see this approach is supported in the H5 SDK. In conclusion, scripts I have developed this way should be replaced by a back-end routine by utilizing Infor Server Extensions technology. In some cases, this can be solved by using mass updates with Vince Excel (VXL) or Vince Butler (VBU) when it detects deviations. The Mashup itself can be replaced by a Web application written in a powerful, modern, and flexible Web framework, like React or Vue.
Watch the video on H5 Scripting here.
Download content as .PDF