Design:
Adding 2 new reference type
1. Multi Select Table
2. Multi Select List
When multi select table reference column is sync to DB, create column of Integer array. When multi select list reference column synced, create column of string array.
create editor for each reference type and allow check box to select multiple value.
Add support for handling array data type in PO class as well as GridTable.
JSON impact performance as serializing and deserialize add overhead. Also we need to check how easy to perform DB operations in json content. We expect that contains, comparison like operation for values require in sql
Implemented as Chosen Box control:
Added 3 Reference Type:
ChosenMultipleSelectionList
ChosenMultipleSelectionTable
ChosenMultipleSelectionSearch
Store as comma separated string
Implemented for window, info window and report parameter
For window find/advanced find and info window search, intersect is use for searching on csv column
For report parameter, IN is use for _ID and single value list column (for e.g DocAction) and intersect is use for csv column
Noticed the seed database for oracle is incomplete (no type TABLE_OF_VARCHAR2 and function toTableOfVarchar2) because there was one missing / in the script.
Will fix it in 7.1
Added documentation
https://wiki.idempiere.org/en/NF7.1_Multi_Select
Pull request 185 configure most of the report parameters to use this new feature.