Scripting often gets complicated with heavily customized applications. Not every business requirement can be met with just configuration. So developers resort to scripting. But if not properly implemented, this could cause a lot of mess. Below are some more Siebel recommended best practices.
Tip3:
Use SetSearchSpec only on Indexed column. Before we do ExecuteQuery in the script, we use SetSearchSpec to retrieve only relevant records. SetSearchSpec also limits the number of records retrieved which makes the ExecuteQuery faster. But on what type of column we do SetSearchSpec on is also very important. We should always do a SetSearchSpec on indexed column so that the records are retrieved very fast. This saves a lot of burden and time on both application and database servers. Look at the code below.
Tip4:
When we use ExecuteQuery, we need not do execute query again on child BC. ExecuteQuery on parent BC also forces a query on all active child BC defined using Links. For example in the screenshot below, consider Account Object. There is Link defined between Account and Action BC. So if a query is executed on

Also, if you need to do a use SetSearchSpec on child BC, do it before the ExecuteQuery. This way, ExecuteQuery is done only once. Again this is similar to searching in the Siebel Application UI. Below is the screenshot with a simple code to demonstrate this.
I will be posting few more tips again very soon. So do check back or subscribe to RSS.
Also, if you think that this post makes sense and is helpful, leave a comment.
Related posts(Auto Generated):





January 4th, 2008 at 5:29 am
Good One, I don’t think lot of people including myself knew that a query would be also be executed in the child BC. This is a great tip. Thanks.
January 21st, 2008 at 1:09 pm
Dear sir,
I am very happy to see this website.
This is very informative site.
I am also learning Siebel and if i will get any information sure i will share with you all.
please make this site more informative.
regards
arvind
January 22nd, 2008 at 12:33 am
Thanks for the Compliments Arvind. I am adding content everyday. I will be very happy to receive any content contribution from you. I am looking forward for it.
Regards,
Sridhar
March 31st, 2008 at 3:33 pm
Dear sir,
I am very happy to see this website.
This is very informative site.
I am also learning Siebel and if i will get any information sure i will share with you all.
please make this site more informative.
regards
Agastyan
May 15th, 2008 at 5:36 pm
Simply Superbbbbbb…:)
June 4th, 2008 at 5:34 am
Good work..!!
Cheers
Piyush
June 4th, 2008 at 4:18 pm
Thank You all for the appreciation.
As you people must be aware, I need participation from your side to bring more content on this website. I wish to make the Siebel Community stronger by bringing more content on this website. So please throw some ideas or write something that I can post it over here.
I would really appreciate that!
Regards,
Sridhar
June 12th, 2008 at 5:56 am
thanks a lot for this site it really make siebel simple
this site is very good..
its wonderfll site for siebel developers…:)
September 26th, 2008 at 10:02 am
hai i need a in formation like
function BusComp_PreNewRecord()
1.Check if GetProfileAttr(Primary Position Type != ‘Admin’) and GetProfileAttr(Organization Name) = ‘BIOGEN AUSTRIA’
a. ErrMsg (“ABM’s are not allowed to create a new Contact Market record. Please contact Administrator”
function BusComp_PreDeleteRecord()
2.Check if GetProfileAttr(Primary Position Type != ‘Admin’) and GetProfileAttr(Organization Name) = ‘BIOGEN AUSTRIA’
a. ErrMsg (“ABM’s are not allowed to delete Contact Market record. Please contact Administrator”
how do i write the script for the above senarios
can u help me plz
September 26th, 2008 at 12:04 pm
hai i need a in formation like
function BusComp_PreNewRecord()
1.Check if GetProfileAttr(Primary Position Type != ‘Admin’) and GetProfileAttr(Organization Name) = ‘BIOGEN AUSTRIA’
a. ErrMsg (“ABM’s are not allowed to create a new Contact Market record. Please contact Administrator”
function BusComp_PreDeleteRecord()
2.Check if GetProfileAttr(Primary Position Type != ‘Admin’) and GetProfileAttr(Organization Name) = ‘BIOGEN AUSTRIA’
a. ErrMsg (“ABM’s are not allowed to delete Contact Market record. Please contact Administrator”
how do i write the script for the above senarios
can u help me plz
September 26th, 2008 at 4:21 pm
Hi Zakir,
Can you please post this question in Siebel Forums section?. I will help you over there. Thanks.
August 4th, 2009 at 1:53 pm
hi
i am frsher in seibel. want to knw about siebel and work on siebel.
please can any one help me for that
i have exp in testing like 3+
but nt on siebel.
can any body help me for that
my mail id ruprashu07@gmail.com
August 5th, 2009 at 6:26 am
Hi Rupali,
did you check this?
http://siebelguide.com/siebelblogs/2008/06/13/tips-to-find-your-first-siebel-job/
May 26th, 2010 at 9:07 am
hey nice blog.
I was doing one small POC….where in a error message occured at the server end has to be sent to browserscript and to be shown as a proper popup message.
one way ,i was thinking of was on preinvoke of applet browserscript i will check for a profile attrib that is set on the serve side whever the error would occur….and then later ony on the basis of the profile attrib value will check and show the message to the user.
is there any other best way to achieve the same.
June 15th, 2010 at 8:23 am
Hi Sridhar,
thanks for such wonderful tips on how and when to script.
Being a newbie to Siebel can you share your idea on how to update fields on an MVG based on the values on the other fields on an applet.
For eg.
There is ‘X’ Flag. If ‘X’ flag is set then update 2 LOVs on an Address MVG
If not, update 2 LOVs to a different value on Address MVG
June 15th, 2010 at 5:45 pm
Hi Shobhit,
I hope you have tried to explore how to do this without scripting and if scripting is the only way you can get this below is my idea.
OnSetField value event of the flag,
use GetMVGBusComp Method to get the MVG Business component Address and then you can update accordingly.
check bookshelf for GetMVGBusComp method.
June 9th, 2011 at 8:32 pm
technically and grammatically correct even after you have used a spell and grammar check software, because this one is unlike
November 23rd, 2011 at 2:07 am
Sridhar it is very helpful!!
January 25th, 2012 at 12:58 pm
related to the materials of distinct styles inside the participating in marbles made use of by