Tuesday, June 24, 2008

Siebel Server Script

Go through the code and get logic ::::----:::::


function BusComp_PreQuery ()

{

var PBo=TheApplication().GetBusObject("Position");

var TBo = TheApplication().GetBusObject("Assignment (No Rule Groups)");

var PBc=PBo.GetBusComp("Position");

var TBc=TBo.GetBusComp("Assignment Group");

var Pos= TheApplication().PositionName();

var OBO= TheApplication().GetBusObject("Opportunity");

var Id=TheApplication().LoginName();

var OBC= this;

var ser=NULL;

//OBC.InvokeMethod("RefreshBusComp");

//OBC.ClearToQuery();

OBC.ExecuteQuery();

var View=OBC.GetViewMode();

var TerBc="";

var TerPos="";

var TerName="";

var temp;

var z=0;

var k="";

var m="";

var a=0;

var b=0;

var d=0;

var c=0;

var sear="";

var expr="";

var srcexpr= new Array();

if (View==0)

{

if ((View==0)||(View==3))

{

with (OBC)

{

SetSearchSpec("Primary Sales Rep Login",Id);

ExecuteQuery(ForwardBackward);

return (ContinueOperation);

}

}

}

if ((View==1)||(View==3))

{

if ((Pos=="VP Sales")||(Pos=="Marketing_Offshore"))

{

with (OBC)

{

//expr="[Territory]!=""";

SetViewMode(5);

ClearToQuery();

RefineQuery();

ExecuteQuery(ForwardBackward);

return (ContinueOperation);

}

}

else

{

with(PBc)

{

ActivateField("Name");

ActivateField("Territory");

SetViewMode(5);

ClearToQuery();

SetSearchSpec("Name","'"+Pos+"'");

ExecuteQuery(ForwardOnly);

if (FirstRecord())

{

TerBc = GetMVGBusComp("Territory");

}

var Postn=GetFieldValue("Name");

var Terri=GetFieldValue("Territory");

if ((Postn==Pos)&&(Terri!=""))

{

{

with (TerBc)

{

ActivateField("Name");

//ActivateField("SSA Primary Field");

ClearToQuery();

ExecuteQuery(ForwardOnly);

b=CountRecords();

a=b-1;

var count = new Array(b);

if (FirstRecord())

{

for (var i=0;i

{

// if (GetFieldValue("SSA Primary Field") == "Y")

{

count[i] = GetFieldValue("Name");

var Terr = count[i];

}

NextRecord();

}

}

}

}

{

for (z=0;z

{

if (z==a)

{

srcexpr="[Territory]= '" + count[z] +"'";

k=k+srcexpr+" ";

}

if (z

{

srcexpr="[Territory]= '" + count[z] +"'";

k=k+srcexpr+" or ";

}

z++;

m=srcexpr+" OR "+ k +" ";

}

}

with (OBC)

{

//if (temp!="test")

{

SetViewMode(3);

ActivateField("Territory");

ActivateField("Position");

ser= OBC.GetSearchExpr();

//ClearToQuery();

RefineQuery();

ExecuteQuery();

if (ser=="")

{

//SetSearchExpr(m);

ClearToQuery();

SetSearchExpr(m);

ExecuteQuery();

return (ContinueOperation);

}

{

if (Terr=="")

{

ExecuteQuery();

return (ContinueOperation);

}

if (View==3)

{

var appnd=ser+" AND ("+m+")";

//SetSearchExpr(appnd);

ClearToQuery();

SetSearchExpr(appnd);

ExecuteQuery();

return (ContinueOperation);

}

if (View==1)

{

var appnd=ser+" OR ("+m+")";

ClearToQuery();

SetSearchExpr(appnd);

//RefineQuery();

ExecuteQuery();

return (ContinueOperation);

}

}

}

}

}

}

}

}

//else

{

SetViewMode(5);

ser= OBC.GetSearchExpr();

ClearToQuery();

RefineQuery();

SetSearchExpr(ser);

ExecuteQuery();

return (ContinueOperation);

}

}

No comments: