Siebel Script Libraries

Siebel 8 (or ST engine to be more specific) has a elegant way of calling business service methods. Script libraries provide the ability to call functions on a business service directly, no more is the need for building property sets and setting the parameters!

If you have not already used Siebel script libraries, do take a look. The reduced coding implies lesser mistakes, debugging time and easier maintenance! The simple demo below illustrates the usage. The examples are in Siebel eScript, and need to be tuned for use in Siebel VB.

Step 1

Create the target business service ‘COG Test Script Lib’. A custom function ‘Echo’ is defined here.

Service_PreInvokeMethod:

function Service_PreInvokeMethod (MethodName, Inputs, Outputs)
{
  return (CancelOperation);
}

Echo:

function Echo (MyString) {
  return "Echoed: " + MyString;
}

Step 2

Create the caller service ‘COG Test Script Lib Call’. There is only one method here - ‘Service_PreInvokeMethod’, and the following code has to be input:

function Service_PreInvokeMethod (MethodName, Inputs, Outputs)
{
  var bsTest = TheApplication().GetService("COG Test Script Lib");
  Outputs.SetProperty("Output", bsTest.Echo("abc"));
  bsTest = null;
  return (CancelOperation);
}

Compare this to the approach in earlier versions. In most probability you will be coding something like:

function Service_PreInvokeMethod (MethodName, Inputs, Outputs)
{
  var bsTest = TheApplication().GetService("COG Test Script Lib");
  var psIn = TheApplication().NewPropertySet();
  var psOut = TheApplication().NewPropertySet();
  psIn.SetProperty("MyString", "abc");
  bsTest.InvokeMethod(psIn, psOut);
  Outputs.SetProperty("Output", psOut.GetProperty("ReturnString"));

  psOut = null;
  psIn = null;
  bsTest = null;

  return (CancelOperation);
}

And, don’t forget to add a line or two in the target service ‘COG Test Script Lib’ to set required properties in the output propertyset. Now, a simple ‘bsTest.Echo(“abc”)’ does the job. Isn’t life simpler?

Tags :
Comments powered by Disqus

Related Posts

SFDX on any org (preview)

Did you miss all the sfdx goodness on your developer org?

Read More

Apex Debug Log Analyser

Apex logs are full of “stuff”. While that generally may be a good thing, getting around to the problem at hand may be a tad bothersome.

Read More
Route your leads and contacts from Facebook or website to Zoho CRM

Route your leads and contacts from Facebook or website to Zoho CRM

Zoho CRM makes it really easy to integrate web forms on externally built sites on standard platforms or even from your Facebook page.

Read More