Creating Cascading Style Pull Downs in EPDM

In my previous blog, I showed you an example of a problem a customer ran into using pull down type fields in his data card.  What I didn’t show you was how those types of pull downs are created in the first place.  So, this blog will get down to basics.

 

  • Life is complicated enough already, why do I need cascading pull downs?

Good question.  Think of it as category and subcategory.  I could have a pull down with a list of manufacturers:

  • Toyota
  • Honda
  • Volkswagen

Then, I could have a second pull down that will display different car models depending on what I selected in the first list. So for example, if I chose Volkswagen in the first list, my second list might be limited to:

  • Beetle
  • Jetta
  • Passat

Where as, if I chose Toyota in the first list, the second list might be limited to:

  • Corolla
  • Camry
  • Avalon

Pretty cool, right?  In the case of my previous blog, I used a list containing “A, B, C” in the first pull down and the second pull down would display “A1, A2, A3″ or “B1, B2, B3″ or “C1, C2, C3″ depending on what was selected in the first list.  Let’s see how I did this wonderful bit of “EPDM-ing”.

 

  • First, you have to create the lists.
In the EPDM admin tool, there is a node beneath your vault called, “Lists (for cards).”  Right click on it and select, “Add New.”

 

 

 

 

 

What you get next, is a simple window where you can enter in the items of your list in the order in which you would like them to appear to the user.  Be sure to name your list in the “List name:” field, and also be sure to save your list when you are done.  Fortunately, EPDM is polite enough to ask if you want to save if you attempt to exit the list editor without saving first.

 

 

 

 

 

 

You will need a list for each category and subcategory.  So I created a list for my main categories of “A, B, C” and separate lists for “A1, A2, A3″ etc.

 

 

 

 

 

 

Here are all my lists next to each other.  So, you can see what I did:

 

 

 

 

 

 

 

 

 

 

 

  • Great.  Now what?
Now you need to place your fields on your data card.  You will have to choose between “Combobox Dropdown” or “Combobox Droplist.”  You can refer to my previous blog to see what can potentially happen if you use the wrong one.
For now, I’ll just say that “Combobox Dropdown” allows the user to enter text as well as select an item from the associated list.  “Combobox Droplist” only allows the user to select from the list.  They cannot enter their own text.
In this example, I am going to use “Combobox Droplist”  The first combobox is connected to a variable I called, “List 1″ and the second combobox is connected to a variable called “List 2.”
The variables you choose to associate to your Comboboxes have nothing to do with what is displayed in the list.  Variables are just a place holder to store the information that is being displayed in the field.  Don’t get that part confused.  For the “List 1″ field I am having it display a “Special Vlaue” of “List A-C.”  That’s the first list I created.
For the second combobox, I am going to choose the option “Controlled by variable.”
Then choose the “Details” button.  This is where all the magic happens.  The second combobox needs to be dependent on the first.  So, the variable it is being controlled by is “List 1.”  That’s the list that has A, B or C in it.  If the list 1 variable is equal to A, then the second combobox should display “List A1-A3.”  If the list 1 variable is equal to B, then the second combobox should display “List B1-B3.”  If the list 1 variable is equal to C, then the second combobox should display “List C1-C3.”
Here’s the finished data card with A selected in the first Combobox.
With the B selected in the first Combobox.
And with C selected in the first Combobox.

And that’s it.  With a little bit of practice, I’m sure you will be using intelligent, cascading style pull downs in your own data cards.

I look forward to hearing any questions or comments on this topic.  So, please feel free to post comments below, or to email me at SWTech@prismeng.com. 

Thanks for taking a look at today’s blog.  Until next time, I wish you happy data management.

 

Stephan Hess

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>