Scriptless Siebel solutions – Part2
Creating a Workflow:
I used PRM ANI Utility Service (QueryBusComp Method) to Query Action BC and get the record count then used if Stop Step to display error message if record count is 1.
I tried that if I could put details of workflow here but couldn’t find a proper way. So, I am providing the Workflow XML file for you guys to download and see what I had created. I am posting a Screen Shot though to show you how it looks.

Download Workflow Process
I tried a lot of things (such as Named Method n, UP) but finally a runtime event at did the trick. Here are the details of that Runtime Event
Event Detail:
![]()
Sequence: -1
Object Type: BusComp
Object Name: Action
Event: PreDeleteRecord
Conditional Expression: GetProfileAttr(‘Me.ActiveViewName’) = ‘Opportunity Detail – Activities View’
[To limit the execution to just that particular view]
Action Set Name: CheckActivityDelete
Action Set Details:
You need to create two action records for this action set. One will set a profile attribute and other will call the workflow process
Action Details:
Name: OpptyId
Action Type: Attribute Set
Sequence: 1
Profile Attribute: OpptyId
Set Operator: Set
Value: [Opportunity Id]
Name: CallWF
Action Type: BusService
Sequence: 2
Business Service Name: Workflow Process Manager
Business Service Method: RunProcess
Business Service Context: “ProcessName”, “NewTestWorkflow”
Through this scriptess siebel series I will try to share scriptless solution of various requirements that I have faced in Siebel. I would like to thanks Alex for providing the idea and insipiration
.
Hope this helps !!!
<< Previous in series Next in series >>




I think you could also try the data validation manager which uses runtime events as well. You could probably use the GetNumBCRows function to get the record count. Just a thought.
Hi Neel,
Great solution! I believe that it proves that is is really worth the extra effort to investigate scriptless alternatives. The overall skill level of the Siebel developer increases over time as he/she becomes more familiar with all the administrative solutions like workflow, pre-built business services and runtime events. And the well designed and upgradeable solution comes at the lowest performance penalty.
have fun
@lex
Hi Neel,
I think there is a very simple way to do it . You went in a very complex way. Since Opportunity is Parent and Action is the Child.There would be a link that is existing bewteen Opportunity and Action.
There is a function called COUNT(MVL).
To use that you should have constructed a MVL on top of existing link in Oppty BC.
Then create a calculated field in Oppty BC and its value would be – COUNT(MVL). It would give you the child record count.
Then you could have used Runtime Events or WF to just verify the value of this field and then thorwn the Error.
Let me know your views on this !!
hi
nice work dude !!!!!
You could have also tried this using a data validation manager.
as action BC is the child BC you can do validation by selecting all records from the DVM.You can invoke the DVM from workflow using business service and can get the error message captured in the workflow. Added advantage of using a DVM in workflow is, you can display the messages in multilingual format. Main draw back of using DVM is it is not supported on mobile and handheld applications.
Leave your response!
Polls
Recent Posts
Get updates by Email
Friends
History
Categories
Siebel Unleashed on Twitter
Posting tweet...
Powered by Twitter Tools
Most Voted
Most Commented
Most Viewed
Canonical URL by SEO No Duplicate WordPress Plugin
Powered by WordPress | Log in | Entries (RSS) | Comments (RSS) | Arthemia theme by Michael Hutagalung 65 queries. 2.261 seconds.