Sunday, Jun. 25, 2017

How to dynamically hide items in a custom picklist field

Written By:

|

October 31, 2012

|

Posted In:

This Article has been contributed by Yaroslav Golub.

Requirement:
Hide items in a custom picklist field dynamically (at runtime).
For Example:
We have a subtask “Create New Card Task” which creates new discount card for any campaigns.
Subtask has input task property “CampaignType”.
User can select type of card (“Personified” or “Non-Personified”) at task step “Card Personification Selection View”:

hide_items_in_picklist1

Object hierarchy:

hide_items_in_picklist2

“Personified Flag Picklist”:
Type Field:  Type
Type Value: TASK_PERSON_FLAG
Type “TASK_PERSON_FLAG” has two values in LOV:
-Personified
-Non-Personified

Clause:

User should be able to select only one type of card (“Personified”) in case of campaign type “Modern”.
And user must see this step (which means that we can’t set necessary value to the type of card and passed over this step).
Like this:
hide_items_in_picklist3

Solution:
We can’t display disabled choice  at form in Siebel, but can hide:

hide_items_in_picklist4

 

 

 

 
using “Profile Attributes”:
1.    Add Search Specification in “Personified Flag Picklist”:
IIf( GetProfileAttr(“ModernCardCampaignType”) = “Y”, [Value] = LookupValue(“TASK_PERSON_FLG”,”Personified”), [Id] IS NOT NULL)

2.    Add task step “Set Modern Profile Attr” to set profile attribute “ModernCardCampaignType” to “Y” or “N” depending on task property “CampaignType”:

hide_items_in_picklist5

So, if input task property “CampaignType” is “Modern”, then profile attribute “ModernCardCampaignType” = Y, and “Personified Flag Picklist” contain just one value – “Personified”. And applet looks like:

hide_items_in_picklist6

 



Share This Article

About Author

Rohit

Siebel Technical Consultant

Comments are closed.

Leave A Reply