How to create Hierarchical Picklist?

I know there aren’t many articles on this website related to basic configuration and a lot of you have asked for it.
So,  as the saying goes “better late than never”,  I am starting with an article on Hierarchical Picklist.

Let’s start with the most basic question:

What is Hierarchical Picklist?

A Hierarchical Picklist is a Picklist that has constrained values based on values of a different Picklist, best example to explain Hierarchical Picklist is Country and State.

Problem Statement.

When I select value in Country field and I should see only see its related States in State Field.

Solution:

To solve this we need to create a Hierarchical Picklist so lets get on with solution

First create two different LOV Type PARENT_LOV and CHILD_LOV with values as shown below:
listofvaluesscreenshot

Create 2 Picklist objects for the above-created LOV Type:

parentchildpicklist

Now we have to do the usual configuration of creating business components fields and associate the above created Picklist as shown below:

parentfieldconfiguration

childfieldconfiguration

After this configuration we will have two fields that are independent of each other showing values as shown below.

parentpicklistvalues childpicklistvalues

Now we need to convert them in Hierarchical Picklist.

To do that, go the List of Values View and query for CHILD_LOV Type and in the Description Field enter Respective Parent LOV Display value. For Simplicity sake I have take LOV names Parent 1 and Child 1 as it child name. Your Child LOV type should look like the picture below:

childpicklistconstraint

Now, go to Tools and for State Field create the record in Pick Map object with following details

Field: Country
Constraint: Y
Picklist Field: Description

childpickmapconstraint

Compile BC and you are done. You have now State Hierarchical Picklist which is constrained on Country Field Value as shown below:

finalhierarchialpicklist

Now, this post might raise a few eyebrows as bookshelf says that to create Hierarchical Picklist we need to have the BC for Picklist record as Picklist Hierarchical but I have chosen it as Picklist Generic. Also there is one more problem: if I change the parent value after choosing child value doesn’t change the Child Picklist (State field in this case) still shows same old value.

I will discuss reason why Picklist Generic BC also works and also the solution of the above mentioned problem  in follow up post.

This Post has been viewed : 43,994 Times


13 Responses to How to create Hierarchical Picklist?

  1. Hi ,
    This is very nice article for dependent picklist.But i would like to add here , we need to make True “Immmidiate change post ” property of BC Field:’Country’also.
    Danish

  2. Hi ,
    This is very nice article for dependent picklist.But i would like to add here , we need to make True “Immmidiate change post ” property of BC Field:’Country’also.
    Danish

  3. Hi ,

    Using “Parent LIC column” in STATE LOV would be better then using “Description” column.Because Siebel suggests to use “Parent LIC column” for Dependent Pick List . So better use “Parent LIC column” for identifying Parent LOV.Otherwies Oracle Report on SRF can show you warning in RED.

    Danish
    “When you focus on giving you will never be at a loss !”

  4. Hi ,

    Using “Parent LIC column” in STATE LOV would be better then using “Description” column.Because Siebel suggests to use “Parent LIC column” for Dependent Pick List . So better use “Parent LIC column” for identifying Parent LOV.Otherwies Oracle Report on SRF can show you warning in RED.

    Danish
    “When you focus on giving you will never be at a loss !”

  5. Hi,

    Nice article.

    Would like to see the next post which deals with the issue you have mentioned at the bottom.

    If it is already available. Kindly add the link to this post.

  6. Hi,

    Nice article.

    Would like to see the next post which deals with the issue you have mentioned at the bottom.

    If it is already available. Kindly add the link to this post.

  7. Usually for creating Hierarchial Picklist we are using same LOV types,but in your explanation you mentioned that for creating Hierarchial picklist we need to create different LOV types(Picklists).
    You have explained about Constrained picklist not about hierarchial..
    Please correct me if anything is wrong from my side.

  8. This article is really helpful!

    I 'm trying to load LOVs through EIM and it is getting loaded. Though, the lovs are appearing on the List Of Values screen however, it is not appearing in the drop down list. The main cause for this effect is that Parent LIC is not getting loaded. And once I associate the Parent LIC with the name of the LOV, then it is getting displayed in the drop down list. Please help me.

  9. Hi,
    The above example is finest example of Contraint pick list. Hiearchical Pick list is supported out of box to achieve saem then why some one need to go by contraint pick list route to approch the Hiearchical Pick List. Use out of box as you can because there are some classes return/associated with the BC which supported the functionality in performance manner as well.
    RD

      • Hi,
        hpl is the one which siebel provided out of box.
        Create single LOV Type.For the child LOV type set the Parent to the Parents LOV value.
        Create two picklists.And for the fields at BC level, configure pickmaps.Please refer to ConfigApps.pdf – Heirarchical picklist.

        Example given above by neel is related to constrain picklist.
        In the above,neel creates 2 LOV Types.Uses Description field of child LOV Type to store the Parents display value. Configures the pickmap for child field such that its constrained based on the parents display value.Hence cpl.
        hpl is an example of cpl.

  10. When we create hierarchical pick lists, both the pick list will be based on the same LOV_TYPE, when we create constrain pick list then the pick lists will be based on different LOV_TYPES.

    The above explained in the thread best suites for Constrain Pick List.

    Karthik Sadashiva

Leave a Reply

Contribute