Skip to Content
avatar image
Former Member

Webi: Dynamic Multi-Select Input Control

How are dynamic multi-select input controls created?

The goal of this piece of the report is to have a multi-select input control (such as the checkbox) drive whether or not a few measures are included in a calculation.

I did check this document here: https://blogs.sap.com/2015/12/03/dimensions-as-input-control-dynamic-control/
However, that is focused on a single-select input control.

Let me state the goal using a fictionalized example.

If I have three 4 choices of gum flavors: Cinnamon, Spearmint, Peppermint, and Watermelon, I want the user to select which flavors will be accounted for in a calculation. Let's say it is for # of packs sold per week. If Cinnamon and Spearmint are selected, then just those two numbers will go into the calculation. We do not have an object that has these flavors listed in it.

1. Creating a string dimension to base the input control after:

*I am not sure if this first input control is correct, but only using one string value, such as ="Cinnamon" resulted in the next step not allowing for selecting a multi-select input control.

2. Set up the multi-select input control:

3. Created a custom list of values (List of Values ...)

The result of the input control:

4. Next, I created a dimension to capture the user's input, using ReportFilter([ObjectName])

5. Adding a table and selecting a couple of flavors results in no values being displayed:

6. Created a formula to test if it would return a 1 if cinnamon is selected. The result here is 0:

So at this point I am stuck, as I do not know how to utilize what the user has selected.

Thanks in advance for your ideas.

Version: BI Platform 4.1 Support Pack 5

test1-variable.png (11.8 kB)
capture2.png (31.3 kB)
capture3.png (38.7 kB)
capture5.png (10.9 kB)
capture4.png (7.3 kB)
capture6.png (12.2 kB)
capture7.png (12.7 kB)
capture6.png (11.3 kB)
capture7.png (12.9 kB)
Add comment
10|10000 characters needed characters exceeded

  • Hi,

    May be you can try this to get multiple values selected which are dynamic.

    =If (RowIndex() =1) Then "YES" ElseIf (RowIndex() =2) Then "NO"

    Thanks,

    Jothi

  • Former Member Abhilasha Patil

    That is correct, Abhilasha. With simple selection input controls, only "equal to" is allowed for the operator. You might see that when the variable that is used to create the input control is just a single string, such as = " ", only the simple input control is allowed. Is it possible to create a dynamic multi-select input control?

  • Former Member

    Thanks Jothi. It is unclear to me how or where to use that row index formula.

  • Get RSS Feed

1 Answer

  • Jul 25, 2017 at 01:56 PM

    hi,

    if you select cinnamon and spearmint you will have to be able to see: "cinnamon;spearmint" like this concatenated in one string.

    to show the values, do not use reportiflier() formula, just use your variable in the table .. other aspect can you check if the input control is set to whole document?

    Add comment
    10|10000 characters needed characters exceeded

    • Hi Jonathan,

      You can't use a Multi value select input control with Custom LOVs, I've BO 4.2 SP2, and the option to create Multi value select input control is grayed out as soon as I begin creating an input control on a dummy variable which I created to capture the value selected.

      So, the workaround may be to have Custom LOVs as below, and you'll have to calculate by using substr to find which values were selected (as an LOV will have multiple values in an LOV)

      Custom LOVs:
      Cinnamon, Spearmint
      Cinnamon, Spearmint, Peppermint
      Cinnamon, Spearmint, Peppermint, Watermelon
      Spearmint, Peppermint, Watermelon
      Peppermint, Watermelon
      and so on, this looks ugly though!!

      So, a better solution would be to bring these values from another data provide like excel, that way have a dim object for them, and when we create an Input Control on that object, we can select multiple values.

      Thanks,
      Mahboob Mohammed