How to send emails using Siebel Scripting ?
//Using SendMessage var bsOutBound = TheApplication().GetService("Outbound Communications Manager"); var psInput = TheApplication().NewPropertySet(); var psOutput = TheApplication().NewPropertySet(); psInput.SetProperty("CommProfile","Default SMTP Profile"); psInput.SetProperty("ProcessMode","Remote"); psInput.SetProperty("MsgToList", <email string>); psInput.SetProperty("MsgBody", <body string>); psInput.SetProperty("MsgSubject", <subject string>); bsOutBound.InvokeMethod("SendMessage", psInput, psOutput);
//Using CreateRequest var bs = TheApplication().GetService("Outbound Communications Manager"); var inputs = TheApplication().NewPropertySet(); var outputs = TheApplication().NewPropertySet(); inputs.SetProperty("PackageNameList","<Email Template Name>"); //inputs.SetProperty("TestAddress",mailid); inputs.SetProperty("RecipientBusComp","<Buscomp>"); inputs.SetProperty("RequestLocaleCode","ENU"); inputs.SetProperty("RecipientGroup","<RecipientGroup>"); inputs.SetProperty("RequestLanguageCode","ENU"); inputs.SetProperty("SourceIdList",<Contact Id>); bs.InvokeMethod("CreateRequest",inputs,outputs);
How to invoke workflow using Siebel scripting ?
var svc = TheApplication().GetService("Workflow Process Manager"); var psInput = TheApplication().NewPropertySet(); var psOutput = TheApplication().NewPropertySet(); psInput.SetProperty("ProcessName",<Workflow Name>); psInput.SetProperty("Object Id", <Row Id>); //Else can give other parameters svc.InvokeMethod("RunProcess", Input, Output);
How to add or remove records to/from MVG or Assoc Buscomp ?
var MvgBC = this.GetMVGBusComp(<MVG field name>); var AssocBC = MvgBC.GetAssocBusComp(); AssocBC.ClearToQuery(); AssocBC.SetSearchSpec(<Field Name>, <Value>); AssocBC.ExecuteQuery(); if (AssocBC.FirstRecord()) { MvgBC.ActivateField(<Field Name>); MvgBC.SetSearchSpec(<Field Name>, <Value>); MvgBC.ExecuteQuery(); var isRec = MvgBC.FirstRecord(); if(isRec == "") { vAssocBC.Associate(NewAfter); } }
Here is the example..
var boOpty = TheApplication().GetBusObject("Opportunity"); var bcOpty = boOpty.GetBusComp("Opportunity"); //To add record with name Rahul to MVG of Opty record RahulOpty with(bcOpty) { ClearToQuery(); SetViewMode(AllView); ActivateField("Oppty Name"); SetSearchSpec("Oppty Name","RahulOpty"); ExecuteQuery(); if (FirstRecord()) { var MvgBC = GetMVGBusComp("Sales Rep"); var AssocBC = MvgBC.GetAssocBusComp(); AssocBC.ClearToQuery(); AssocBC.SetSearchSpec("Name","Rahul"); AssocBC.ExecuteQuery(); if (AssocBC.FirstRecord()) { AssocBC.Associate(NewAfter); } //Making Rahul Primay MvgBC.ClearToQuery(); MvgBC.SetSearchSpec("Name","Rahul"); MvgBC.ExecuteQuery(); if (MvgBC.FirstRecord()) { MvgBC.SetFieldValue("SSA Primary Field","Y"); } //To Delete MVG record with Name Rahul MvgBC.ClearToQuery(); MvgBC.SetSearchSpec("Name","Rahul"); MvgBC.ExecuteQuery(); if (MvgBC.FirstRecord()) { MvgBC.DeleteRecord(); } //After Adding/removing Save the record WriteRecord(); }
How to add values from Picklist Buscomp ?
var oBC = this.BusComp(); oBC.NewRecord(NewAfter); oBC.ActivateField("Status"); oBC.SetFieldValue("Status","Active"); //not using pick() as for static picklist direct value can be given var oAccBC = oBC.GetPicklistBusComp("Account"); with (oAccBC) { ClearToQuery(); SetViewMode(3); SetSearchSpec("Id", "xxxx"); ExecuteQuery(); If(FirstRecord()) Pick(); }