Wednesday, 18 September 2013

Siebel eConfigurator Buttons Signal Flow



Please find an overview of the siebel product configurator buttons signal flow & the swt Call:


A) "Save Siebel.log"

SWT InvokeMethod="SyncInstance"

Signals raised:
***RaiseSignal*** Instance: , Signal: Disable Pricer, Mode: .
***RaiseSignal*** Instance: , Signal: SyncInstance, Mode: .
***RaiseSignal*** Instance: , Signal: Done, Mode: Quote.
***RaiseSignal*** Instance: , Signal: Enable Pricer, Mode: .
***RaiseSignal*** Instance: , Signal: UnloadInstance, Mode: .
***RaiseSignal*** Instance: , Signal: ConfiguratorCleanup, Mode:
***RaiseSignal*** Instance: , Signal: LogOff, Mode:

Workflows:
Signal Workflow Process: Configurator Save
Signal Workflow Process: Configurator Cleanup


B) "Cancel Siebel.log"

SWT InvokeMethod="PrevView"

Signals raised:
***RaiseSignal*** Instance: , Signal: UnloadInstance, Mode: .
***RaiseSignal*** Instance: , Signal: ConfiguratorCleanup, Mode: .
***RaiseSignal*** Instance: , Signal: LogOff, Mode: .
***RaiseSignal*** Buscomp: Quote Item, Signal: Product Recommendation Signal, Mode: Quote.

Workflows:
Signal Workflow Process: Configurator Cleanup
Signal Workflow Process: Product Recommendation Driver Workflow


C) "Done Siebel.log"

SWT InvokeMethod="DoneConfig"

Signals raised:
***RaiseSignal*** Instance: , Signal: CfgUIExternalValidate, Mode: .
***RaiseSignal*** Instance: , Signal: CfgExternalValidate, Mode: .
***RaiseSignal*** Instance: , Signal: Cfg Eligibility & Compatibility, Mode: Quote.
***RaiseSignal*** Instance: , Signal: Disable Pricer, Mode: .
***RaiseSignal*** Instance: , Signal: SyncInstance, Mode: .
***RaiseSignal*** Instance: , Signal: Done, Mode: Quote.
***RaiseSignal*** Instance: , Signal: Enable Pricer, Mode: .
***RaiseSignal*** Instance: , Signal: UnloadInstance, Mode: .
***RaiseSignal*** Instance: , Signal: ConfiguratorCleanup, Mode:
***RaiseSignal*** Instance: , Signal: LogOff, Mode: .
***RaiseSignal*** Buscomp: Quote Item, Signal: Product Recommendation Signal, Mode: Quote.

Workflows:
Signal Workflow Process: Configurator External Validate Workflow
Signal Workflow Process: Configurator Eligibility Compatibility Workflow
Signal Workflow Process: Configurator Save
Signal Workflow Process: Configurator Cleanup
Signal Workflow Process: Product Recommendation Driver Workflow


D) "Verify Siebel.log"

SWT InvokeMethod="ExternalValidate"

Signals raised:
***RaiseSignal*** Instance: , Signal: CfgUIExternalValidate, Mode: .
***RaiseSignal*** Instance: , Signal: CfgExternalValidate, Mode: .
***RaiseSignal*** Instance: , Signal: Cfg Eligibility & Compatibility, Mode: Quote.
***RaiseSignal*** Instance: , Signal: UnloadInstance, Mode: .
***RaiseSignal*** Instance: , Signal: ConfiguratorCleanup, Mode:
***RaiseSignal*** Instance: , Signal: LogOff, Mode: .

Workflows:
Signal Workflow Process: Configurator External Validate Workflow
Signal Workflow Process: Configurator Eligibility Compatibility Workflow
Signal Workflow Process: Configurator Cleanup


Friday, 31 May 2013

Hierarchical Pick list inside the Siebel product configurator

While performing Siebel product configuration, multiple place you might need to configure the Pick list based on a list of value or any business components.

The Steps to Configuring Picklist inside the Product Configurator are:
Outside of product configuration:
Create a Pick Applet by following the normal pick applet configuration.
Create a Pick List by following the normal pick applet configuration.
Create the hierarchical LOV values.

Product Configurator:

                  Click on the property tab
              Select the attribute from the hierarchy view, where in the pick applet need to be visible to the user.
            Create the below UI properties for the attribute:
Name
Value
PickApplet
<<Name of the Pick Applet>>
PickList
<<Name of the Pick List>>
PickMap01
<PickMap Field = "AttrName" PickField = "BC Field Name"/>
PickMap02
<PickMap Field = "AttrName 2" PickField = "BC Field Name2" Constrain="Y"/>


Sample configuration:







Dynamic Product configurator SWT

I had a very interesting business requirement, where in Siebel product configurator is expected to show 1000+ characters static product description for 10+ components based on the user selection i.e. if user select product named “A condition”, the detailed description of the component is expected to show to the users:



How this can be achieved? The sample snippet will help use to put this logic on the “on the “eCfgControlComboPriceMultiLevelJS” web template.



Sunday, 5 May 2013

Hi All,

Welcomes you to my Siebel Product configurator BlogSpot. This BlogSpot is created for sharing your Siebel product configuration experience and thoughts.

Thanks and Regards
Jose Joseph

Wednesday, 24 April 2013

Configure Picklist Inside the Product Configurator.

While performing Siebel product configuration, multiple place you might need to configure the Pick list based on a list of value or any business components.

The Steps to Configuring Picklist inside the Product Configurator are:
Outside of product configuration:
Create a Pick Applet by following the normal pick applet configuration.
Create a Pick List by following the normal pick applet configuration..
Product Configurator:
                                                   Click on the property tab
                         Select the attribute from the hierarchy view, where in the pick applet need to visible to the user.
                         Create the below properties:
Name
Value
PickApplet
<<Name of the Pick Applet>>
PickList
<<Name of the Pick List>>
PickMap01
<PickMap Field = "AttrName" PickField = "BC Field Name"/>
PickMap02
<PickMap Field = "AttrName 2" PickField = "BC Field Name2"/>


Sample configuration:







Sunday, 17 March 2013

Configuration Script and Linked Item


The Remote Complex Object Instance Service (RCOIS) is a business service. It can be accessed
by anything in the Siebel architecture that can use a business service. As a business service, it
is used by invoking methods, passing in property sets with input arguments, and getting results
from the Outputs property set.

GetLinkItemValues API helps you to get the linked item values inside the Siebel product configuration. Please find sample use of GetLinkItemValues  API :

Siebel Version : Siebel 8.2
Event               :  Cfg_ChildItemChanged:
Linked Item Details:
      

Sample Script:


var bs = TheApplication().GetService("Remote Complex Object Instance Service");
var inp = TheApplication().NewPropertySet();
var out = TheApplication().NewPropertySet();
var cnt=0;
var birthdate;
for (var n = 0; n<nCnt; n++ )      
    {     
    var psItem = ChangedItem.GetChild(n);     
    var objname = psItem.GetProperty("ObjName");
    var OQty = psItem.GetProperty("OldQty");                  
    var NQty = psItem.GetProperty("NewQty");
       if(objname =="Comp1") //Sample Component Name
        {
        inp.SetProperty("ClearValues","N");
        inp.SetProperty("GetAllValues","Y");
        inp.SetProperty("RootProductId","1-1RLV38");
        bs.InvokeMethod("GetLinkItemValues",inp,out);
          cnt=out.GetChildCount();
          for ( var i = 0; i < cnt; i++)
          {
          var LinkedItemV =out.GetChild(i).GetProperty("CxLnkItmName");
          if (LinkedItemV == "Transaction Reason")
            {
            birthdate = out.GetChild(i).GetProperty("CxLnkItmValue");
             }
    
          }
        
       }
  }