Bean Shell Formatter allows you to write custom Java code to transform values on the datalist column.

Figure 1: Bean Shell Formatter Properties


NameDescription
Script

Script in Java.

The entire script is defaulted to be applied to every row in such column, hence user does not need to perform looping to apply transformation to every row.

To customize this behaviour, user need to handle datalist, column, row variables appropriately.

Injected variables available for consumption are:-

  • datalist - org.joget.apps.datalist.model.DataList
  • column - org.joget.apps.datalist.model.DataListColumn
  • row - Object in the collection list (org.joget.apps.datalist.DataListCollection) returned by the datalist binder (org.joget.apps.datalist.model.DataListBinder). Service method org.joget.apps.datalist.serviceDataListService.evaluateColumnValueFromRow(Object row, String propertyName) can be used to retrieve the property value from the row object.
  • value - String

Returns a String.

return value + "append this text to every column value";

 

It is also possible to inject hash variables into the values.

return value + " #currentUser.firstName#";