BusinessObjects Board

Creating an universe which enables drop-down menus

Hi everyone,

I need to create an universe that enables the use of drop-down menus.

Indeed, in the application that already exists (not at all in BO) and that I need to replace with a BO solution, a user can create a report with a selection on up to 10 objects in a particular order : for example ‘Market Type’ (level 1)-> ‘Supplier’ (level 2) -> ‘Energy’ (level 3) -> ‘Country’, etc.

What I need is to have dynamic lists of values that are refreshed when the user selects the value of the object of upper level.
Ex : the list of values of ‘Supplier’ is not the same if ‘Market Type’=‘AJU’ or ‘CTE’.

I tried several posibilities with BO, but nothing seems to be adequate.

  • I tried to insert a clause Where in the objects (the Where clause concerns the object of upper level, such as
REF_TYPE_MAR.LIB_TYPE_MAR IN @Prompt('1 - Which market type?','A','MyClass\Market Type',MULTI,CONSTRAINED)
  • I tried the same thing in the list of values query (for each object again).
    But then, if I try to edit the list of value for, let’s say, the ‘Country’, BO asks me :
    -> Which Market Type?
    -> Which Supplier?
    -> Which Energy?
    That is OK, but when I try to select the Energy, I am again asked for the Supplier and Market Type… etc :crazy_face:

  • I also tried whith @Select

REF_PRODUCTEUR.LIB_PRODUCTEUR IN @Select(MyClass\Supplier)

Well, I’m not sure that’s very clear (sorry), but I find it quite difficult to explain without the universe itself.

Does anyone know a way to create menus and dynamic lists of values?

Thanks a lot :wink:


Sigagip (BOB member since 2005-09-27)

Hi,

try a search on ‘cascading prompt’, I think you’ll find what you need.
Well, I think you’re trying to ask that ie a customer first selects a country and the next prompt shows only the cities within that country, so the list for the second prompt depends on the answer of the first prompt.

Regards,

Gerard


highandstoned :netherlands: (BOB member since 2005-08-01)

Thanks for your answer, highandstoned: I didn’t know how that was called in English.

I found an explaination in the FAQs https://bobj-board.org/t/15227/8 but as I don’t have the Island Resort Marketing Universe, I don’t really understand what I have to do… and all the answers in the other topics on the subject send to this FAQ page :crazy_face:

If my hierarchie is: Market Type then Supplier then Energy, in which objects do I have to insert the conditions, and concerning which other object (the one of upper or lower level?)?

Thansk for your help


Sigagip (BOB member since 2005-09-27)

Hi,

just read that example, it explains it well.
The trick is to set a prompt in the LOV which you want filtered.
For your example, you need a condition with a prompt on supllier within the energy list. That way it will show first the prompt on supplier before refreshing the energy list.

Regards,

Gerard


highandstoned :netherlands: (BOB member since 2005-08-01)

Of course I read it, but I think it is what I was doing… and what doesn’t work! :frowning:
I am asked several times for the choice of the ‘Market Type’ (first level) but I would like it to be automatic, and not to have to enter it several times.

What I need is the user to be asked, and only once, for all values (Market Type, Supplier, Energy…) and the LOVs to be refreshed directly.

I already have that… just several times :?


Sigagip (BOB member since 2005-09-27)

Hi,

just to be sure: the only thing that works in BO is a cascading prompt which, when used (and created properly) creates the following effect:
You have continent, country,city. I want the list of cities filtered based on the country choosen and the country list filtered based on the continent choosen.
When created and the user has a report which has a prompt on the city, the user will be asked first which continent, when supplied he will be given a list with countries to pick from and when he enters this, then the cities list will be presented.
This is the only way it works in BO, with the downside that the answer to earlier prompts can NOT be shown in reports and can NOT be used in the filter. This last aspect means that when a user selects Netherlands and then selects Harlem, he will see all results where the city is Harlem, even when Harlem is in the USA.
(the only way to prevent this last effect, is to concatenate the results)

Perhaps one mistake you made (reading your text): did you create one prompt per LOV ? So for the Energy LOV you ONLY need to create the prompt on supplier and in Supplier LOV only the prompt on market

Regards,

Gerard


highandstoned :netherlands: (BOB member since 2005-08-01)

Yes, I created one and only one prompt for each LOV, just as you described.

That’s the point: it’s not what I get. If I create a report with a prompt on City (for your example), I will then have a prompt on Country and then a prompt on Continent (not in the same order).In addition, if in the report I only set a prompt on City, I eventually get a table with all the results for this City, and there can be several Countries and Continents (BO doesn’t record the values I gave it for these variables).

It seems that I won’t be able to match the specifications. :frowning:


Sigagip (BOB member since 2005-09-27)

Hi,

did you set the LOV’s on autorefresh ? Otherwise, yes, you get them backwards since you then have to refresh the cities list to get the prompt for country.

Gerard


highandstoned :netherlands: (BOB member since 2005-08-01)

Hi,
yes I had set the LOV’s on autorefresh, but it doesn’t work better.

Actually, I made further searches, and I was told that BO couldn’t solve my problem, as I want cascading prompts and the reports to be filtered on all the variable values. :?

Then, I was told to try to use either VBA (to record the values entered by the user in the prompts and filter the report with these values) or SDK.

As VBA may be simpler to implement, it may be the solution I’ll keep. Does anyone know how to code that in VBA, and if it is a good solution?

Thanks :wink:


Sigagip (BOB member since 2005-09-27)

Hi,

like I wrote earlier:

and the solution (since it IS possible):

VBA works for FC reports, I don’t believe you can do it in webi without a lot of modifications which would be report specific.

Good luck, you’ll need it.

Regards,

Gerard


highandstoned :netherlands: (BOB member since 2005-08-01)