Siebel CRM is one of the most effective CRM solution available till date. Clients with complex business requirements opt for Siebel to help themselves in identifying, acquiring and retaining their respective Customers. As a Siebel Professional we use Configuration, Scripting and EAI in order to build an Application.
There are nearly 200 different types of objects that can be configured in Siebel to reflect the changes in the User Interface Layer, Business Objects Layer, and Data Objects Layer. Also, the Siebel objects have intertwined multiple relationships between them.
We need to write programs in case of complex requirements (According to Siebel best practices — scripting should be the last resort in situations where only configuration cannot accomplish the business and technical requirements).
There are primarily 4 programming languages used when customizing Siebel.
But there are some limitations of scripting in Siebel which are cited below:
- It’s case sensitive.
- Siebel eScript code is executed one statement at a time, in the order in which it is read.
- If objects are not instantiated properly then it can lead to Memory leakages.
- Need to take extra care while declaring the variables at application level.
- Difficult to maintain the code.
Some of the biggest demerits of Scripting in Siebel are:
- May not be fully upgradable. In Siebel upgrades, scripts undergo extensive retrofitting
- One object can be scripted in only one programming language, i.e. if you are writing a BS in eScript and want to access some COM / ActiveX object then in most of the cases you need to switch on to a different Object which is written in VBscript. If the facility to use many scripting language in an Object has been given then one do not require to switch in between objects.
- In one method of an Object one can write only 16KB of code, which some times becomes critical especially when one wants to modify some existing functionality.
- If the script is written in Browser side then one can easily call Server side script and get it executed, but the vice-versa is not true.
There are numerous benefits of scripting in Siebel in comparison to its miniscule limitations. However it is very vital that one is aware of the limitations too.
Please feel free to comment/discuss/debate!