Applies to:
Product Release: V7 (Enterprise)Version: 7.7.1 [18306] Com/Med
Database: Oracle 9.2.0.4
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.
Symptoms
SBL-DAT-00193I 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
click.
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:
Error:
[1] 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.
Solution
Message 1
For the benefit of other customers:The message “[1] 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 – “[1] 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.
...
Message 2
...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
Else
BusComp_PreInvokeMethod = ContinueOperation
End If
End Function
‘***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.
-Vineet Goel
Siebel Technical Support
No comments:
Post a Comment