Refreshing H5 list properly

list and grid refers to exactly the same thing: The list of records shown in an M3 B-Panel program.

H5’s list are built using the SlickGrid.js. It is an open source javascript-based grid framework. If you want to achieve something in relation to a list of an M3 program and no wrapper code is available in H5 scripting, you can rely to SlickGrid‘s documentation. One of this is how to refresh the list when you update a value.

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(); 
list.setColumns(columns);

Sure it gets what it needs to be done, but i think this is not the optimal way to do it.

Read More »
Advertisements

Features I wish Custom Lists have

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.

Read More »

Disabling a row in H5

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.

Read More »

M3 Browsable Fields Via H5 Scripting

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.

Read More »