I am trying to create product forms with dynamically populated lists with relevant options for selection by data entry officers.
The test-case I am using is stocking computer hardware and software. If the item ‘Type’ is Hardware, the ‘Category’ list should filter out Software categories and vice-versa.
I am attempting to use the ‘Select list’ syntax for a “list depending on another complementary attribute list”, with the Category list structured as:
desktop,Desktop|options_type:hardware
workstation,Workstation|options_type:hardware
laptop,Laptop|options_type:hardware
tablet,Tablet|options_type:hardware
However, the Category list does not dynamically update subject to the selection of the Type list.
Can anyone advise whether the select list syntax I am using is correct, or should I be using an alternative field type than ‘Select list’ in order to achieve dynamic lists, or whether this is a bug?
Category complimentary attribute
Type complimentary attribute
As can be seen below, the Category list is not updated dependent upon the selection of the Type list.
Type: Hardware - Category list shows all entries (4x Hardware)
Type: Software - Category list still shows all entries (4x Hardware)
The Category list also saves incorrectly:
For those struggling with this, I finally got it to work.
My First List
Label or translation key = Catagory
Attribute code = catagory
Type = Select list
Value =
1,CPU
2,Power Supply
(Note no spaces)
My Second List (is dependent on what is selected in the first list)
Label or translation key = Spec
Attribute code = spec
Type = Select list
Value =
1,AMD|options_catagory:1
2,Intel|options_catagory:1
3,750W|options_catagory:2
4,500W|options_catagory:2
(Note No Spaces, Use Pipe Symbol, Use underscore, Use colon)
Basically we are saying If option 1 (CPU) is selected in the first list then only show AMD or Intel, If option 2 (power supply) is selected in the first list then only show 750W or 500W
2 Likes
Can anyone tell me if this feature is working in Version 20.0.3?
I am not able to get the simple example above to work.