Skip to main content

Applet Search Spec not working on Status field of S_EVT_ACT

Issue:

Below applet search spec is not working. On UI all Approved records are also showing.

[Primary Owner Id] = LoginId() AND [Status] <> LookupValue("EVENT_STATUS", "Approved") 

Analysis:

For Logs found that Siebel is not picking the correct Status column of S_EVT_ACT table.

Actual column is S_EVT_ACT.EVT_STAT_CD for status field.

Siebel is picking wrong column from wrong table: S_ACT_EMP.ACT_EVT_STAT_CD

Query part from logs:

T1.EMP_ID = :2 AND T33.ROW_ID = T1.ACTIVITY_ID AND
T1.EMP_ID = T21.ROW_ID AND
T33.TARGET_PER_ID = T29.ROW_ID (+) AND
T33.TARGET_PER_ID = T7.PAR_ROW_ID (+) AND
T33.PR_PRDINT_ID = T27.ROW_ID (+) AND
T27.PRDINT_ID = T23.ROW_ID (+) AND
T33.TARGET_OU_ADDR_ID = T19.ROW_ID (+) AND
((T33.OWNER_PER_ID = :3 AND T1.ACT_EVT_STAT_CD NOT IN ( :4 )) AND
(T33.X_ENTITY_TYPE = 'Research') AND
(T33.CREATED >= TO_DATE(:6,'MM/DD/YYYY HH24:MI:SS')))
ORDER BY
T33.CREATED DESC

Work around:

Create a calculated field in Business Component as below:

Name: Status LIC

Value: LookupName ("EVENT_STATUS", [Status])

Now change the Applet search spec to below:

[Primary Owner Id] = LoginId() AND [Status LIC] <>  "Approved"

Compile and test.

Comments

Popular posts from this blog

How to set Profile Attribute in Siebel Workflow

For setting the Profile Attribute in Siebel Workflow, follow below steps: Add Business Service box in workflow. Open Business Service properties. Set  SessionAccessService in Business Service Name. Set  SetProfileAttr in Method Name. Then click on Business Service and set Input Arguments as below: Against Name argument you will add your profile attribute name and against Value argument you will add value for the new profile attribute, it could be from Process Property or Literal.

How to call Popup Applet through Server Script in Siebel

Background: Based on the requirements you need to show data or reports on a popup applet. You can invoke popup applet using workflow (below business service will be used in business service step), applet server script or browser script and using vanilla method and setting field user properties. Procedure: Below is the script for calling popup applet through server script: if (MethodName == "MethodName") { var oServiceAF = TheApplication().GetService("SLM Save List Service"); var inputPropAF = TheApplication().NewPropertySet(); var outputPropAF = TheApplication().NewPropertySet(); inputPropAF.SetProperty("Applet Name","ABC Popup Applet"); inputPropAF.SetProperty("Applet Mode","6"); inputPropAF.SetProperty("Applet Height", "700"); inputPropAF.SetProperty("Applet Width", "700"); oServiceAF.InvokeMethod("LoadPopupApplet", inputPropAF, outputPropAF) return (CancelOperati...

How to create and publish Inbound Web Service in Siebel based on Workflow

Inbound Web Services: The Inbound Web Service allows an external system to call a Siebel published Web Service. You can publish a business service or a business process as a Web Service and generate a Web Service Definition Language (WSDL) file that an external system can import. The Inbound Web Services can only be published from Siebel C using SOAP-RPC binding. Source: Oracle Docs What Is The Difference Between Web Services and APIs? An API is an interface that allows you to build on the data and functionality of another application, while a web service is a network-based resource that fulfills a specific task. Yes, there’s overlap between the two: all web services are APIs, but not all APIs are web services. Both web services and APIs are — at their core — very useful and very much used today. However, it’s the web services associated with SOAP and/or Service Oriented Architecture which are falling out of favor. Source: NordicApis Process: Prepare the workflow which will serve as Si...