I have two List Lookup controls, both looking to different lists. I have RootCause looking to list "RootReasons" and then SubCause looking to "SubReasons". SubReasons has a column titled ParentReasonID which identifies what item in RootReasons is the SubReasons item parent. I also have a Calculated Value named RootNumber which takes the value of RootCause(returned like 34#;REASON TEXT HERE) and uses subString to trim that down to just the two digit number(which matches the two digit number I use in field ParentReasonID). Hopefully that makes sense.
The RootCause control is working fine. I cannot get the SubCause control to bring back a filtered set of items. I'm sure I'm either setting a value incorrectly or expecting something to work in a way in which it doesn't.
The SubCause Lookup control is pointing to SubReasons as it's Source List and then for List column name I have "Reasons". In the filtering options I have it set to "By a control's value", where field = ParentReasonID, and filtered by control RootNumber.
Am I doing something wrong? am I expecting it to work in a way in which doesn't make sense?
Solved! Go to Solution.
what you need to implement is so called concept of 'cascading dropdowns' (search the forum for the phrase and you you will get plenty of examples.
you do not need, however, any parsing or substring cut offs of lookup values, simply set up on lookup control (Subcauses) to be filtered by the other lookup control (Rootcause)
see some examples eg. here
lookup control cascade cascading dropdowns waterfall multilevel multiple levels
The video from one of those links was exactly correct.
I think something important to mention is that the "List column name" goes off internal name, not the display name. For some reason my "Reason" column was given the internal name of "rynl" when I created it. I have no idea why this happened but this was the biggest confusion for me and I sadly did not find it until I was doing a caml query against the list.