#265 @SearchListTab annotation for references and collections

Not planned
Javier Paniza

Annotation for references and collections to specify the tab used to render the data for the search list. It's true that we already have a @SearchListCondition, but it allows define only the condition not the properties, filter, order, etc. Moreover, we reuse the tab definition we already have.

This save the the programmer to write @SearchAction which sole goal was to choose the tab for the list action.


  • Javier Paniza
    Javier Paniza

    • Group: --> v4.9
    • Priority: 7 --> 1
  • Javier Paniza
    Javier Paniza

    • Group: v4.9 --> Not planned
  • JoernZim

    What about gathering annotations for a standard reference/collection search like @DescriptionList annotation for Combo boxes (which in fact are display field and search list together):

    @SearchList(tab="tabname",                               <-- 1 -->
        properties="property1, property2, ...",              <-- 1 -->
        depends="property",                                  <-- 2 -->
        condition="${type} = ${this.property.type}",         <-- 3 -->
        order="property2")                                   <-- 4 -->
    1. Exclusive tab or properties
      • tab: name of tab in collection element
      • properties: comma separated list of properties of collection element
    2. depends normaly has only an effect on searchlist, but may be used to check current value whether it is still valid after master field changes (and clear reference if not)
      • therefore may be better taken outside as own Annotation? => @Depends
    3. condition replaces @SearchListCondition, supports ${this.xxxx}
      • Also condition="${type} = ?" with depends="" attribute or @Depends Annotation
    4. order: comma separated list of properties
  • Javier Paniza
    Javier Paniza

    Hi Joern,

    Your @SearchList idea is brilliant. Given it's like @DescriptionsList is coherent with the already existing annotations and easy to learn. Moreover, we avoid creating a lot of annotations to define the search list. Of course, we have to preserve the @SearchListCondition for backward compatibility. And maybe having a @SearchListTab and removing tab from @SearchList would be an option.

    Anyways, I'll implement your idea for sure.

  • JoernZim

    Hi Javier,

    And maybe having a @SearchListTab and removing tab from @SearchList would be an option.

    In this case I would handle it like @SearchListCondition, keep it in both versions and let @SearchListTab be just a short form for @SearchList(tab="tabname" ... which internally leads to the same implementation. Don't know whether this is easy to achieve? So you will have consistency over both forms, and everybody could use whats best for his situation (Just setting the tab or condition or configuring the complete SearchList).