9
Siebel eScript Tutorial: Basics by SiebelGuide.com There are two scripting languages in Siebel, eScript and Siebel-VB. Out of these two eScript is the most popular scripting language among Siebel developers because eScript runs on both Unix base OS and Windows OS whereas Siebel-VB only works on Windows OS. So we will learn eScripting in this section. Siebel eScript is a scripting or programming language that allows developers to write simple scripts to extend Siebel applications. This language is very similar to Java Script but has some significant differences between them. Scripting is the highest level of customization and it adds complexity and cost to the configuration. So it should be strongly discouraged and should only be used as the last resort of customization. Siebel Tools provides many ways to configure your Siebel application without coding, and these methods should be exhausted before you attempt to write your own code. Following are the reasons for discouraging scripting: Customizing using Siebel Tools is lot easier than writing code. It adds complexity during the upgrade would need manual intervention. Performance degrades with scripting. Following are some quick facts about Siebel eScripts: Siebel eScript is a case sensitive language. Siebel eScript is a fully functional procedural programming language. White spaces are ignored. Siebel Tools has a debugger to assist in detecting errors in eScript. Siebel Tools comes with a compiler for eScript. Can be added in both Siebel Client and in Siebel Tools. Is stored in Siebel Repository and then compiled to an SRF. Full documentation on eScripts can be found in Siebel Book Shelf. Next we will see some general guidelines on eScript. Previous

Siebel eScript Tutorial

Embed Size (px)

Citation preview

Page 1: Siebel eScript Tutorial

Siebel eScript Tutorial: Basicsby SiebelGuide.com

There are two scripting languages in Siebel, eScript and Siebel-VB. Out of these two eScript is the most popular scripting language among Siebel developers because eScript runs on both Unix base OS and Windows OS whereas Siebel-VB only works on Windows OS. So we will learn eScripting in this section.

Siebel eScript is a scripting or programming language that allows developers to write simple scripts to extend Siebel applications. This language is very similar to Java Script but has some significant differences between them.

Scripting is the highest level of customization and it adds complexity and cost to the configuration. So it should be strongly discouraged and should only be used as the last resort of customization. Siebel Tools provides many ways to configure your Siebel application without coding, and these methods should be exhausted before you attempt to write your own code.

Following are the reasons for discouraging scripting:

Customizing using Siebel Tools is lot easier than writing code. It adds complexity during the upgrade would need manual intervention. Performance degrades with scripting.

Following are some quick facts about Siebel eScripts:

Siebel eScript is a case sensitive language. Siebel eScript is a fully functional procedural programming language. White spaces are ignored. Siebel Tools has a debugger to assist in detecting errors in eScript. Siebel Tools comes with a compiler for eScript. Can be added in both Siebel Client and in Siebel Tools. Is stored in Siebel Repository and then compiled to an SRF.

Full documentation on eScripts can be found in Siebel Book Shelf.

Next we will see some general guidelines on eScript.

Previous

Next

 

Page 2: Siebel eScript Tutorial

eScript General Guidelines

by SiebelGuide.com

In this part we will learn some general guidelines and concepts about Siebel scripting.

Note the following pointers:

Variable declaration required unlike Java Script Scripting is case sensitive User four-digit years in dates to avoid Y2K problem and Siebel format is

MM/DD/YYYY The "this" object reference is used to refer to the active business object

and components. Example function BusComp_PreQuery () { this.ActivateField("Account"); this.ActivateField("Account Location"); this.ClearToQuery(); this.SetSortSpec( "Account(DESCENDING)," + "Account Location(DESCENDING)"); this.ExecuteQuery(); return (ContinueOperation);

} Characters such as the double quote mark ("), the single quote mark (’),

the hard return, the semicolon(;), and the ampersand (&) have special meanings within JavaScript and eScript. Use Siebel escape (backslash(\) character) to avoid special meaning in the code

Single line comments are indicated using two forward slashes "//" Block comments are indicated with the beginning of slash and asterisk "/*"

and end with asterisk and slash "*/" Block statements should not be nested.

Put semi colons at the end of each statement to increase readability. Variable declaration can be either local or global. For local declare within

the function whereas in global variables declared in general declaration section.

Following are the Pre-defined Identifiers which have special meaning to Siebel Interpreter and should not be used as variable or function names.

break export super case extends switch catch false this class finally throw const for true continue function try debugger if typeof default import while delete in with do new var

Page 3: Siebel eScript Tutorial

else null void enum return

Next we will see Siebel Operators.

Previous

Next

 PURPOSE OF CATCH IN SCRIPT:

The catch clause is used to handle the exception. To raise an exception, use the throw statement. When you want to trap potential errors generated by a block of code, place that code in a try statement, and follow the try statement with a catch statement. The catch statement is used to process the exceptions that may occur in the manner you specify in the exception_handling_block. The following example demonstrates the general form of the try statement with the catch clause. In this example, the script continues executing after the error message is displayed: try { do_something; } catch( e ) { TheApplication().RaiseErrorText(Clib.rsprintf( "Something bad happened: %s",e.toString())); }

DIFFERENCE BETWEEN SIEBEL SALES & CALL CENTER

Siebel sales application is use to enabling sales force to do work effectively.sales application is use to identifying top opertunity and to better manager those oppertunity.callcenter application is use to give service and support to customer,create new customer

Page 4: Siebel eScript Tutorial

Sales applications refers to Pre Sales and Call Center appl refers to Post Sales.In Sales, the sales force involved handles the sales of the product, creating quotes and order enteries. In call center, the agents handles the queries reported by the users/customers related to the products sold by the respective compny.

What is eapps.cfg file. and what is its significance.

Answers:

Eapps.cfg file means swse.

This significance is which application should point to which object manager.

eapps.cfg is a single configuration file which contains configuration information,connection information,login and security settings.it alloes the SWSE to communicate with siebel server.

 Posted by: shikha Tripathi    

  Contact shikha Tripathi

Eapps is a single configuration file for all siebel applications. It contains configuration information, including connectivity information, login and security setting. It allows SWSE to connect with siebel server. It contains the connect string for each siebel application.

 Posted by: Devesh Rathore    

  Contact Devesh Rathore

eapps.cfg is the single configuration file for all siebel

Page 5: Siebel eScript Tutorial

applications.It contains configuration information login and security settings.It contains connect string for each siebel application.This significance is which application should point to which object manager.

CONFIGURING MVG:

To Configure MVG Both join and link are necessary.Expand BC Where u have the joined field. Go to multi value link create a new record give any name as it should not be null. In Destination BC property choose the BC where the joined field is originating (Child BC).In Destination link press F2 and pick the appropriate link.Go to field of parent BC create a field as ssa primary and give a join if BC has extensions like S_org_ext for account BC and give the column name (foreign key). Thengo to Multivalue link again and under primary ID field press F2 and select this ssa primary field. Go to Multivalue Field - create new record - give the same name of joined field but in different case just to differentiate( Ex: EMAIL for actual email field) under MVL property press F2 and select MVL name displayed. Under Field property press F2 and select 'email'.Open Wizard - select MVG applet - select child BC- Select all the fields along with SSA PRIMARY FIELD - select popup list as web template. Copy this MVG applet name and paste it in MVG applet property of EMAIL field in list - list column of parent list applet. (Ex: delete the old 'email' record, create new record and select EMAIL field. make changes in Edit web layout of parent list applet and compile. Add the necessary buttons in the MVG applet. IF configuring MVG for a M:M link u need to mentions association child applet to the MVG applet created. If that is 1:M link then a foreign key relationship exists.{Simple way to say: Create MVL(multivalue Link), mention primary field ID- Create MVF(multivalue field) - Replce the joined SVF(single value field) in parent applet list list column with the MVF. Create MVF applet paste the applet in MVG applet property. Compile.create new record in MVF give foreignkey name and under field give ID for 1:M link. For M:M link paste Association child applet associate applet property of MVG applet }

What is All Mode Sort?

This property determines whether or not siebel will override the sort specification and if so determines the sort that will be applied to the BC for All or Manager's view. The values are TRUE, FALSE or NORMAL

NORMAL --uses BC defined sort specificationTrue --Overrides the BC osrt and Uses the U1 indexFalse - Removes all sorting.

How is load balancing maintained in Siebel?

Load balancing is maitained by the Gateway server using the third party software Resonate Central Dispatch.

Page 6: Siebel eScript Tutorial

as mentioned above siebel load bal is done by third party software such as Resonate Dispatch manager....or can be done with the help of lbconfig.txt file,which is generated at siebel server and is place in webserver.which helps in identifyin the concerned OM..and transfer the request as per the load too.....read in supoprtweb....nice document is given for it.

  Contact

Resonate is no longer supported by Siebel 7.8 onwards. Internal Siebel load balancing can be used which uses round robin method.

Load balancing is maitained by the Gateway server using the third party software Resonate Central Dispatch.

as mentioned above siebel load bal is done by third party software such as Resonate Dispatch manager....or can be done with the help of lbconfig.txt file,which is generated at siebel server and is place in webserver.which helps in identifyin the concerned OM..and transfer the request as per the load too.....read in supoprtweb....nice document is given for it.

  Contact

Resonate is no longer supported by Siebel 7.8 onwards. Internal Siebel load balancing can be used which uses round robin method.

Load balancing is maitained by the Gateway server using the third party software Resonate Central Dispatch.

as mentioned above siebel load bal is done by third party software such as Resonate Dispatch manager....or can be done with the help of lbconfig.txt file,which is generated at siebel server and is place in webserver.which helps in identifyin the concerned OM..and transfer the request as per the load too.....read in supoprtweb....nice document is given for it.

Resonate is no longer supported by Siebel 7.8 onwards. Internal Siebel load balancing can be used which uses round robin method.

What are the differences between siebel 7.8 and 8.0?

Page 7: Siebel eScript Tutorial

The Major differences between siebel 7.x and 8.x

1) Siebel 8.0 has introduced Task UI for task automations.

2) Siebel 8.0 has Object Level check out which was not possible before.

3) Business user properties have become drop down list in tools and hence no need to remember syntax for each

Second point is not correct. Object Level Check out Check in is possible in version 7.7 also.

Can you create an extension table with an intersection table?

We can not create an extension table with an intersection table

What is s_party table

S_PARTY Table is the Base Table for all the Party related tables.

S_ORG_EXT

S_CONTACT

S_USER

S_BU

and etc.

the party tables can have the implied joins. the party related BC's have the S_PARTY as the base table. so, any of these tables are extension tables.

How will you edit the joined fields values in join

Using picklists and MVGs. MVGs require join field and link as prerequisites unlike picklists where just a join is enough.