BusinessObjects Board

cascading prompts...

this is a pretty obvious request and something i get from all my clients but have never found a great way to accomplish… anyone have ideas on how to create cascading prompts that work well? i’ve gone about the typical BO way of editing my child objects LOV and entering a prompt on the Parent object (to allow the users to pick a state first, then a city (only listing cities for the state previously chosen))… but that doesn’t seem to work well at all in BO (and only halfway acceptable in Webi to be honest). In BO the users have to know to click “Show Values” to initiate the cascade - and it’s all cludgy because sometimes they will see the “state” and “city” prompt on the main screen and not know that they have to show values on city to prompt for the parent state… etc. any workarounds???


BOzilla (BOB member since 2002-08-29)

Rod,
Some things never change. You’ll notice by the lack of responses that there is no other way. You could do some heavy VB work up front that deals with the prompts and then “passes” them to BO, but that’s generally not worth the efffort.


Steve Krandel :us: (BOB member since 2002-06-25)

so there’s not even a way to automatically kick off that LOV refresh (of the child object) so that the included prompt pops up first? like refresh on open for LOV’s? it just sucks to have to teach each of my users to click the refresh button to initiate the cascade…


BOzilla (BOB member since 2002-08-29)

You can force the LOV to generate each time, but it takes building your prompts in the right order for this to work correctly. I will try to piece something together using either Club or EFashion that can be used as an example.

-RM


digpen :us: (BOB member since 2002-08-15)

:blue: Ohhh. I can’t wait!


Cindy Clayton :us: (BOB member since 2002-06-11)

Let’s create a Series of Cascading Prompts for the Island Resort Marketing Universe. We’ll simply work our way through the Resort class for a quick example. All of the prompts will be fairly similar, and I am going under the assumption that everyone has some Designer Experience.

Let’s start at the Highest Level that we’d need a prompt for. That would be the Resort itself, since we need to know what Resorts we’re interested in.
[list]* Edit the List of Values for the Resort object.

  • Check the Automatic Refresh Before Use option.
  • Click Edit.
  • Bring Country into the Conditions and set it to: in list Prompt(‘What Country are you interested in?’)
  • Click Save and Close
  • Click Apply and edit the next LOV object.
    [/list]
    Edit the Service Line and set up the same Prompt on Resort as: in list Prompt(‘What Resorts are you interested in?’)
    Again… Save and Close, ensuring that the Automatic Refresh Before Use checkbox is selected then Edit the next.

Service will have: Service Line in Prompt(‘What Service Lines are you interested in?’) with the Automatic Refresh…


Save this Universe and let’s generate a report.

Generate a report that pulls in the Country, Service Line and Revenue. Set a prompt on Service Line and apply a prompt as a condition asking: ‘What Service Lines are we tracking?’

Refresh this report.

For the Service Line, click on Values… A new Prompt should appear, asking about the Services. Again… click the Values button, and so on… and so forth.

Once you’ve answered the questions, you only need to hit the Values button when you need to backtrack to another level.

Hope this helps! I’d include a universe and examples, but I have nowhere to place 'em. :oops:

-RM


digpen :us: (BOB member since 2002-08-15)

Just for giggles ( :lol: :lol: ), I created an MSN group and placed the Sample Universe and Report as a Zipped file.

Please feel free to grab this and let me know if it helps.

Thanks!

-RM

http://groups.msn.com/BUSOBJ/messages.msnw


digpen :us: (BOB member since 2002-08-15)

I am looking at your Island Resort example and I only see one prompt. Am I missing something?


surfsista (BOB member since 2002-12-07)

Isn’t there a way to use subqueries within prompts to generate the next level of prompts?


surfsista (BOB member since 2002-12-07)

If the prompts are named consistently, you can build LOV queries that reference the previous prompted value. In usual BO style, if the prompt has already been used once, it won’t re-prompt.

So, build level 1 with a prompt called ‘Level 1’
Level 2 object LOV query must use @variable() syntax to restrict by level 1 prompt
Level 3 object LOV query must use @variable() syntax to restrict by level 2 prompt - and so on

I think this only works well in recent 5. releases - have a go!

Cheers,


philmorris :uk: (BOB member since 2002-11-12)

will this work in webi?


surfsista (BOB member since 2002-12-07)

hmmm… unusure :confused:

As the variable part is implemented in the universe rather than a report variable, I would guess so.

I don’t have the chance to try it for you, so I’d suggest having a go to see if you can get it going in Full Client, then try the same universe with WebI to see what happens…


philmorris :uk: (BOB member since 2002-11-12)

Digpen, I tried to do this with my universe. I have 3 objects:

Make name
Model name
Model description

I put a prompt in the LOV for Make name. I pulled the Model name into the conditions and had an InList prompt “Enter the Model Name”

I put a prompt in the LOV for Model name. I pulled the Model description into the conditions and had an InList prompt “Enter the Model Description”

When I run a query selecting these 3 objects and put in a condition prompt for Make name “Enter the Make name:” I get the prompt for the Make name. If I click on ‘values’ it just takes me to the Model name prompt, and so on.

What I am looking to do is have a prompt that asks for Make name. If I click on values it would give me all of the possible values of Make name. When I select one, I wish to have another prompt appear asking me for the Model name. If I then click on values, I only want those Model names that are associated with the Make name I entered in the first prompt. As well I would like a third prompt to appear asking for which Model Description I would like and if I then click on values, I only want to see those Model Descriptions that are associated with the Make name and Model name that were entered in the previous two prompts.

What could I be doing wrong? I did select Automatic Refresh Before Use.


Ted Michalski :us: (BOB member since 2002-08-20)

Ted,

I think this can be done by adding an additional Condition for the other object. As long as the “Condition” prompt is EXACTLY the same, then it will propagate through to the other condition… but if and only if it was already answered.

One of the “other” methods of getting these to work, aren’t necessarily through Cascading LOVs, but rather through Hierarchial LOVs. There have been recent rants about this as well, but they should give you the “drill-down” LOV abilities that you want.

-RM


digpen :us: (BOB member since 2002-08-15)

I did what you said and it KIND of works.
I have 3 objects

Make
Model
Description

When I put a prompt for Description in my query, and click on ‘values’,
it indeed will prompt me for the Make(s) and Model(s) that I want. Then
when I click on ‘values’ for Description, it indeed only gives me the associated descriptions for the Make(s) and Model(s) that I chose, BUT
after I chose the Description(s) that I want and execute the query, the query returns ALL Makes and Models that have the Descriptions that I chose. The query does not seem to remember that I only chose certain Make(s) and Model(s). :hb:

The only way I could get around this is to have a prompt for Description AND Model in the query. But then, it goes through the Make and Model prompts for both the Model and Desctiprion prompts (i.e. you have to go through the selection process for Make and Model twice).

Any ideas?


Ted Michalski :us: (BOB member since 2002-08-20)

Ted,

Add Conditions for your two other objects. For the Condition, choose the @PROMPT that should be there as an available option and these too will be populated. You can also add these @Prompts to the WHERE clause of your Object and that will always ensure that they are used.

Of course… it may mean that you have to have an additional object if you want to bring in “Non Filtered” objects. Maybe an additional Condition Object? Hmmm.

It may mean that your First Dialog Box has 3 lines, but what’s a man to do?

:smiley:

-RM


digpen :us: (BOB member since 2002-08-15)

Robert has a MSNGroup where he has published a document (with pictures and all!!!) that goes into great detail on this exact subject. I don’t remember all of the details on subscribing…but I strongly suggest it!

Robert…do you want to publish that link again? :mrgreen:


Eileen King :us: (BOB member since 2002-07-10)

Thanks Eileen, I’d surely appreciate it.


Ted Michalski :us: (BOB member since 2002-08-20)

Is this it? It was earlier in this same thread…


Cindy Clayton :us: (BOB member since 2002-06-11)

That’s the group: http://groups.msn.com/BUSOBJ/

The exact location of the PDFs is at:
http://www.msnusers.com/BUSOBJ/msgattachments/20

additionally at:
http://homepage.mac.com/rmetzk/Busobj_Tutorials.html

If it helps, and there’s demand for it, I can re-modify the documents and try to get the Universe to represent the results of the other prompts. So this will really be a Triple Prompting Universe.

-RM


digpen :us: (BOB member since 2002-08-15)