list and grid refers to exactly the same thing: The list of records shown in an M3 B-Panel program.
By default if you update a value in the list programmatically, it will not automatically reflect on the view. You need to refresh the grid so that it will update what is being shown on the screen. In H5’s Script Developer’s Guide, specifically the sample script for Custom column, the way to refresh the list is by executing these codes:
let columns = list.getColumns();
Sure it gets what it needs to be done, but i think this is not the optimal way to do it.
Custom list is a really useful tool in M3 extensibilities. It allows us to create views and apis that would not be possible with just MDBREADMI. We can get multiple data from different tables in single view by utilizing the Related table feature. The filter and selection fields gives us a lot of flexibility on how to retrieve specific set of data. We can also create are own sorting options and subsequently change the filter options we can use. You can also utilize Enterprise search should you want to.
But from time to time there are requirements, that even with all this capabilities, would be really difficult to pull off. Here are some features that I wish exist in H5’s Custom list.
Widgets are small applications that lives inside Infor Ming.le Homepages. Essentially a “homepage” is a collection of one or more widgets. You can find official guidelines here on working with widgets.
The latest widget sdk version can be found here. As of this writing, the version is 1.0.32.
This one may be too simple if the question was asked to the people responsible for the code of H5 client. But as for me who is but a user of H5 I had to dig in to their minified source codes to figure out how to disable a row on a list panel.
So I start by debugging inforDataGrid‘s code to see how disabling a row is currently done. I was looking for a flag or property that is needed to be set. In my mind it should be easy to locate the correct line of code to find this since after all, inforDataGrid should hold all the things involving list panels in H5. After hours of editing grid’s column and row properties to match the code’s expectation, I was still unsuccessful in disabling a row.
Whenever I want to do a quick check on how to implement a specific requirement in H5 scripting, I just use the browser’s (non-internet explorer) console to play around and explore the functionalities. By opening the browser’s Developer Tools we can start exploring structure of H5 client’s code and give as an idea on the functionalities we can use.
Two years ago I had a requirement to make a field in CRS624/G browsable via H5 scripting. I managed to achieve this by using an external tool called jsGrid(http://js-grid.com/).
Then about a week ago, i learned from a colleague that the script I created was adopted and used by other consultants, being implemented on other environments. It got me to thinking in revisiting my code see if there is anything in there that can be improved.