Applies to:Product Release: V7 (Enterprise)
Version: 7.7.1  Com/Med
Database: Oracle 220.127.116.11
Application Server OS: Microsoft Windows 2000 Server SP 4
Database Server OS: Microsoft Windows 2000 Server SP 4
This document was previously published as Siebel SR 38-1789881378.
I am trying to use a Runtime Event on PreWriteRecord off a custom BC "Agreement Action" (clone
of Action) from within the Account Business Object, to invoke a workflow from a button
In order to do this, I have created the button and associated the MethodInvoked. I have then used the Runtime Event entries on the Start step branch in the Workflow Process definition to refer to the Method. Upon deployment the Action was correctly generated and I am successfully able to invoke the Workflow and it does what is expected (creates a record in Agreement Action BC).
However, I want to trigger a second action from within the ActionSet. I have therefore created a second action (with a sequence of 2 under the Event Action Set) and this should trigger a Data Validation Manager rule set. I am successfully able to run the DVM standalone, but as soon as I add it as this second step it does not get invoked. I have checked the text in the Business Service Context and it is identical to successful calls elsewhere.
When I checked the Personalization log file generated (see attached) I am seeing an error as follows right after the Workflow has run:
 Runtime Event handler cancelled the current operation.(SBL-DAT-00193)
I found this referenced in another SR (#38-1145996341) where it was thought to be "benign". I am concerned that this is not the case and that the Runtime event handler is not continuing as expected. Can you please let me know firstly whether this issue has been addressed since discovered, and also could you confirm that what I am trying should be possible.
Message 1For the benefit of other customers:
The message “ Runtime Event handler cancelled the current operation.(SBL-DAT-00193)” may be seen when using a custom applet method (behind a button) to invoke the workflow process using runtime event. When such a method is used; as per Bookshelf documentation, ‘Event Cancel Flag’ is used to abort the run-time event after executing the WF process. This field/flag is found in the WF step where the runtime event is configured. If this flag is not checked, the error "The specialized method <Method Name> is not supported on this business component" will result when running the workflow process. This flag only applies to events that are cancelable. This flag functions like CancelOperation in scripting.
The side effect of this flag is that any other action in the runtime event is canceled and not initialized which is what the error – “ Runtime Event handler cancelled the current operation.(SBL-DAT-00193)” implied here. The error may be harmless to the users, but it will not allow running other Actions in the Action Sets of the runtime event.
The error “specialized method <Method Name> is not supported” occurs because the custom method (behind the button script) cannot be found when passed into the application object layer on the business component (BC). This can be avoided by returning CancelOperation in the PreInvokeMethod event on the BC level where the error arises.
To prevent the error from occurring a possible solution is to return CancelOperation manually using scripting, for example – add the following script to the BC’s BusComp_PreInvokeMethod event:
Function BusComp_PreInvokeMethod (MethodName As String) As Integer
If MethodName = "Call_Workflow" Then
BusComp_PreInvokeMethod = CancelOperation
BusComp_PreInvokeMethod = ContinueOperation
‘***Where Call_Workflow is the custom method invoked by the applet button.
To summary the resolution steps:
A) Uncheck the Event Cancel Flag on the WF step where runtime event is defined
B) Add and compile the above script on the BC level.
C) Reload Personalization
Change Request # 12-TTVZP7 has been logged to investigate this behavior.
Siebel Technical Support
Post a Comment