I think we all know what search specification means in Siebel. But just for introduction purposes I would like to give an overview.

Search Specification is criteria that we can apply on an Siebel object to restrict the amount of data that reaches the user.

You can apply search specification on objects like BC, Applet, Picklists etc.

Search Specification becomes a part of where clause when the query is executed on the database hence only those records are brought back those satisfy the criteria.

For quite a considerable time I thought Search Specification can only be static, meaning once you give the criteria on a particular object then you need change SRF in order to make a change in that. But I was wrong, we can have a dynamic search spec too but that can result in performance impact.

How to make search spec dynamic?

We can use

  • LookupValue function
  • GetProfileAttr function

Above said two functions can help us to create a dynamic search spec.

I will give some search specs as example to show their usage.

  • [Activity Id]  = GetProfileAttr(”ActId”)
  • [Name] LIKE GetProfileAttr(”NameofUser”)
  • ([Lead PNL] = GetProfileAttr(’LeadPnlConstrain1′) OR [Lead PNL] = GetProfileAttr(’LeadPnlConstrain2′)) AND ([Contractor Flag]<>’Y')
  • [Sales Tool Type] = LookupValue (’SALES_TOOL_TYPE’, ‘Component’)
  • (([Sales Tool Type] = LookupValue (’SALES_TOOL_TYPE’, ‘Component’)) AND [Created By]=LoginId()) OR ([Sales Tool Type] LIKE (LookupValue (’SALES_TOOL_TYPE’, ‘Sales Tool’) + “*”))

We can also use * as wild character in our Search Specification for example

  • [HTML Control Type] = “Field OR MiniButton*”
  • [Name] LIKE *Neel*

In next post I would like to share a requirement where we created a dynamic SearchSpec using LOV and Profile Attributes.

OkAvarageGoodVery GoodExcellent (2 votes, average: 3.5 out of 5)
Loading ... Loading ...

Related Posts