Search This Blog

SBL-CFG-00107: %1. More details follow: %2.

Applies to:

Siebel Product Configurator - Version: 8.0.0.6 [20423] and later   [Release: V8 and later ]
Information in this document applies to any platform.

Symptoms

On version 8.0.0.6 when you run a script with the GetAttribute method in a customizable product definition you get the following error:
SBL-CFG-00107: Unhandled Exception: 'GetAttribute' is not defined

The GetAttribute method was used in a product configurator script event which worked successfully on version 8.0.0.9.

Cause

The GetAttribute method was made available in product scripts on version 8.0.0.9 as part of ACR 502.

Solution

As an alternative to the GetAttribute method on version 8.0.0.6, you can use the GetCPInstance method. This method returns the property set of the full product configuration and you will have to navigate the property set to locate the required attribute.

Applies to:

Siebel eConfigurator - Version: 8.1.1 SIA [21111] and later   [Release: V8 and later ]
Information in this document applies to any platform.

Symptoms

Customer has a product definition which raises an error in AttributeChanged event script:
(script skeleton"

function Cfg_AttributeChanged (ChangedAttribute)
{
   if (....) {
      TheApplication().RaiseErrorText("My error message");
  }
  ...
}
(similar scripts could be implemented on Cfg_InstInitialitize or Cfg_ChildItemChanged)

Testcase:
1) A quote line item is created with this product
2) Customers starts a configurator session via webservice BeginConfiguration
3) Product attribute is updated with call UpdateConfiguration, SetAttribute
--> this will fire upper script and should return the error "My error message" in the response of the webservice call.

Current behavior shows a different message returned. Please see response below:

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
...
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Server</faultcode>
<faultstring>Error invoking service &apos;Configurator Web Service&apos;, method &apos;SetAttribute&apos; at step &apos;Set Attribute&apos;.(SBL-BPR-00162)</faultstring>
<detail>
<siebelf:siebdetail xmlns:siebelf="http://www.siebel.com/ws/fault">
<siebelf:logfilename>EAIObjMgr_enu_0025_26215364.log</siebelf:logfilename>
<siebelf:errorstack>
<siebelf:error>
<siebelf:errorcode>SBL-BPR-00162</siebelf:errorcode>
<siebelf:errorsymbol/>
<siebelf:errormsg>Error invoking service &apos;Configurator Web Service&apos;, method &apos;SetAttribute&apos; at step &apos;Set Attribute&apos;.(SBL-BPR-00162)</siebelf:errormsg>
</siebelf:error>
<siebelf:error>
<siebelf:errorcode>SBL-CFG-00107</siebelf:errorcode>
<siebelf:errorsymbol/>
<siebelf:errormsg>&lt;?&gt;. More details follow: &lt;?&gt;.(SBL-CFG-00107)</siebelf:errormsg>
</siebelf:error>
</siebelf:errorstack>
</siebelf:siebdetail>
</detail>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>


What needs to be done to get the correct error message in the webservice response?

Cause

The behavior is a defect with the underlying workflow and business service error handling and is addressed with change requests:
12-1XO6UN9 - No error message from RaiseErrorText in webservices
This is currently fixed with V8.1.1.4 and a quickfix for V8.1.1

12-1WV0HS3 - RaiseErrorText() on BS does not set error code/message on the workflow
This is currently fixed with V8.1.1.3 and a quickfix for V8.1.1

Solution

The behavior will be addressed by appropriate fixes in Siebel. For details please see information behind the change request links. Please note that the underlying workflow needs to have error code and error messages defined as process properties (OOB process properties).

Using RaiseErrorText during eConfigurator session will return following WS response:
(example is shown with event Cfg_InstInitialize and message "Error was raised")

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
...
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Server</faultcode>
<faultstring>Error running sub-process 'ConfiguratorWebChannelBeginConfig' at step 'Begin Configuration Subprocess'.(SBL-BPR-00183)</faultstring>
<detail>
<siebelf:siebdetail xmlns:siebelf="http://www.siebel.com/ws/fault">
<siebelf:logfilename>EAIObjMgr_enu_0016_16777226.log</siebelf:logfilename>
<siebelf:errorstack>
<siebelf:error>
<siebelf:errorcode>SBL-BPR-00183</siebelf:errorcode>
<siebelf:errorsymbol/>
<siebelf:errormsg>Error running sub-process 'ConfiguratorWebChannelBeginConfig' at step 'Begin Configuration Subprocess'.(SBL-BPR-00183)</siebelf:errormsg>
</siebelf:error>
<siebelf:error>
<siebelf:errorcode>SBL-BPR-00162</siebelf:errorcode>
<siebelf:errorsymbol/>
<siebelf:errormsg>Error invoking service 'Configurator Web Service', method 'BeginConfiguration' at step 'Begin Configuration'.(SBL-BPR-00162)</siebelf:errormsg>
</siebelf:error>
<siebelf:error>
<siebelf:errorcode>SBL-CFG-00107</siebelf:errorcode>
<siebelf:errorsymbol/>
<siebelf:errormsg>Error was raised: Cfg_InstInitialize(SBL-EXL-00151). More details follow: .(SBL-CFG-00107)</siebelf:errormsg>
</siebelf:error>
</siebelf:errorstack>
</siebelf:siebdetail>
</detail>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Another example for the response of the system is with 2 following events Cfg_ChildItemChanged and Cfg_ChildItemSelected. Please note that Cfg_ChildItemSelected is raised before eConfigurator engine will process the new selection while Cfg_ChildItemChanged is raised after the engine processed the selection. Therefore we have different behavior in UI for both events with RaiseErrorText() and this is mirrored in the webservice responses as well.


We update the configuration with UpdateConfiguration and generate an error message by using a script on CfgChildItemChanged:

<faultstring>Error invoking service 'Configurator Web Service', method 'AddItem' at step 'Add Item'.(SBL-BPR-00162)</faultstring>
<detail>
<siebelf:siebdetail xmlns:siebelf=HYPERLINK "http://www.siebel.com/ws/fault""http://www.siebel.com/ws/fault">
<siebelf:logfilename>EAIObjMgr_enu_0014_14680099.log</siebelf:logfilename>
<siebelf:errorstack>
<siebelf:error>
<siebelf:errorcode>SBL-BPR-00162</siebelf:errorcode>
<siebelf:errorsymbol/>
<siebelf:errormsg>Error invoking service 'Configurator Web Service', method 'AddItem' at step 'Add Item'.(SBL-BPR-00162)</siebelf:errormsg>
</siebelf:error>
<siebelf:error>
<siebelf:errorcode>SBL-CFG-00107</siebelf:errorcode>
<siebelf:errorsymbol/>
<siebelf:errormsg>Message from RaiseErrorText: Cfg_ChildItemChanged(SBL-EXL-00151). More details follow: .(SBL-CFG-00107)</siebelf:errormsg>
</siebelf:error>
</siebelf:errorstack>



Event CfgChildItemSelected:

<ListOfStatus xmlns=HYPERLINK "http://siebel.com/OrderManagement/Configurator/CfgInteractStatus""http://siebel.com/OrderManagement/Configurator/CfgInteractStatus">
<Status>
<ConflictResolution/>
<StatusCode>Success</StatusCode>
<StatusText>Your request resulted in one or more warnings. Please review these for more details.</StatusText>
<Messages>
<MessageType>
<MessageSource>Other</MessageSource>
<Message>
<MessageText>Hello andi2: Cfg_ChildItemSelected(SBL-EXL-00151)</MessageText>
</Message>
</MessageType>
</Messages>
</Status>


Please note the important difference between CfgChildItemChanged and CfgChildItemSelected. CfgChildItemChanged has the message under node error while CfgChildItemSelected has it under status.

Siebel Technical Support
Keywords: webservice, RaiseErrorText, defect, BeginConfiguration, UpdateConfiguration

References

BUG:12-1WV0HS3 - RAISEERRORTEXT() ON BS DOES NOT SET ERROR CODE/MESSAGE ON THE WORKFLOW
BUG:12-1XO6UN9 - NO ERROR MESSAGE FROM RAISEERRORTEXT IN WEBSERVICES

Applies to:

Product Release: V7 (Enterprise)
Version: 7.8.2.1 [19216]
Database: Oracle 9.2.0.4
Application Server OS: Microsoft Windows 2000 Server
Database Server OS: Sun Solaris 5.8

This document was previously published as Siebel SR 38-3224907201.

Symptoms

SBL-CFG-00107, SBL-SCR-00147, SBL-SCR-00156

Hi, We applyed the patch 7.8.2.3 yesterday. Previously we were in 7.8.2.1

The script (VB) written in eConfigurator script editor not working in 7.8.2.3.
The error is as below
Siebel VB runtime error 5 occurred at line 72 in procedure
'Cfg_AttributeChanged' of CfgItem [CSSELCxObjImpl]:
Illegal function call(SBL-SCR-00156). More details follow:
..(SBL-CFG-00107)

When we are commenting the line 72 then it gives error at some other line and it is very often. Error disappears as soon as we comment the some statements and reoccur again. This is very erratic. Is there any problem with VB script in 7.8.2.3 version?

Please note we have to move in to production with 7.8.2.3 in a week. This is a showstopper and need your attention quickly.

My question is why is script working in 7.2.1 is not working in 7.8.2.3
thanks,

Solution

Message 1

For the benefit of other readers,

The behavior:

In an eScript Configurator script (Cfg_AttributeChanged) customer wanted to set an string attribute to a blank string (""). However, this caused the following error:

Error:
"Siebel eScript runtime error occurred in procedure "SetAttribute" of CfgItem [CSSELCxObjImpl]:

Error: SiebelError: The #3 argument passed to method 'CfgItem.SetAttribute' was invalid. A String was expected. (SBL-SCR-00147)
(SBL-SCR-00141). More details follow: .(SBL-CFG-00107)"


Resolution:

There is a general Enhancement Request 12-1CG5DIX in order to provide the possibility to set attributes to NULL with SetAttribute in a future release.

However, the same worked when using VB instead of eScript. Therefore, eScript specific Change Request 12-1HGJSE8 has been logged in order to address this product defect..

Currently, here is no ("easy") workaround available. One possible approach for a workaround would be the following:
- In a configurator script (eCfg_AttributeChanged event) the attribute could be set to a dummy value (e.g. "NULL")
- Using java script (.swt and .js changes) this dummy value could be shown in the configurator UI as a real null value
- After configuration, the dummy value need to be turned into a real NULL value. (E.g. Via workflow changes)

...

Message 2

...

However, please note, in order to realize such a workaround I would strongly recommend to consult with your TAM and Expert Services.

Thank you,

Applies to:

Siebel Configurator Runtime - Version: 8.1.1 SIA [21111] - Release: V8

Information in this document applies to any platform.

Symptoms


According to Bookshelf cfgscript.log log file should be created if a script contains syntax errors:

Product Administration Guide 8.0 > Customizable Product Scripts > Reviewing the Script Log

"If a method within a script fails or the script contains syntax errors, you can obtain valuable diagnostic information by reviewing the script log.

To review the script log

Navigate to \log\cfgscript.log. It is located in the Siebel installation directory.
"

However, if we use AddItem in a Configurator script incorrectly we do NOT get the cfgscript.log file.

Cause


This is caused by a Bug.

Bug 12-1U5UM5X has been logged in order to address this behavior.

Solution


Configurator script is used like the following:

function Cfg_InstInitialize (RootProduct)
{
var i
i = AddItem("$.[CP1]#1", "R1", "P1");
}

NOTE: In above sample script product path is incorrect + paramter is missing

When I validating the product, the following error is displayed in the UI:
Error:
"[1] Error invoking service 'Cfg Web UI Service Loader', method 'LoadCfgUIService' at step 'Go to UI'. (SBL-BPR-00162)
[2] The #1 argument passed to method 'Cfgitem.AddItem' was invalid. A String was expected. (SBL-SCR-00147), More details follow: .(SBL-CFG-00107)"

However, there is no CfgScript.log file created.

Bug 12-1U5UM5X has been logged in order to address this.

The error message shown on the UI however indicates what the cause of the error is and that it's a problem with AddItem method. Instead of the CfgScript.log file also the shown error can be used in order to resolve the incorrect script.

Applies to:

Product Release: V7 (Enterprise)
Version: 7.5.3.6 [16186] ESN Com/Med
Database: Oracle 8.1.7.4
Application Server OS: HP-UX 11i
Database Server OS: HP-UX 11i

This document was previously published as Siebel SR 38-1723398191.

Symptoms

SBL-CFG-00107, SBL-EXL-00111

Hi,

We have detected the next problem in Vanilla, connected at Sample database as SADMIN:

We have added a script in Cfg_InstPostSynchronize event for a Sample database's product (for example: "Comtel Video Conferencing Pack").
The script is as simple as follow:
TheApplication().RaiseErrorText("SCRIPT IS WORKING");

If this product is included and customized in a 'Service order' ('Order Entry - Line Items View') the script runs correctly when 'Done' button is clicked in eConfigurator.
However the script doesn´t run when the same product is included and customized in a 'Sales order' ('Order Entry - Line Items View (Sales)').

Why this behavior?

Thanks in advance.

Solution

Message 1

For the benefit of other readers:

We have added a script in Cfg_InstPostSynchronize event for a Sample database's product (for example: "Comtel Video Conferencing Pack").

The script is as follows:
TheApplication().RaiseErrorText("SCRIPT IS WORKING");

If this product is included and customized in a 'Service order' ('Order Entry - Line Items View') the script runs correctly when 'Done' button is clicked in eConfigurator.

However the script doesn´t run when the same product is included and customized in a 'Sales order' ('Order Entry - Line Items View (Sales)').

Resolution:

Customizable product Cfg_InstPostSynchronize scripting event is not supported for Asset Based Ordering (ABO) implementations. This is because in case of ABO, the PMT service handles the sync instance (Done) call and users should use the PMT service methods/ABO workflows to write such code. Therefore the reported behaviour cannot be classed as a defect, it is intentional behaviour.

No comments:

Post a Comment