Search This Blog

SBL-BPR-00234: An attempt has been made to run or resume workflow process '%1' from the server.

Applies to:

Product Release: V7 (Enterprise)

Version: 7.7.2 [18325] Hi Tech

Database: Oracle 9.2.0.4

Application Server OS: Microsoft Windows 2003 Server

Database Server OS: Microsoft Windows 2003 Server



This document was previously published as Siebel SR 38-1944555801.

Symptoms

SBL-OMS-00203, SBL-BPR-00234

Hi,
Can you guide me and show me How I shall start the workflow - FS - Generate Agreement
Charge.

We have verified that the workflow work ok since the Auto Charge Method works (and
this flow is called by this method)

Now I want the charges to be done automatically
without having the users pressing "Charge" button on the view; "FS Charge Agreements View",
Applet; "FS Agreement Item Invoices List Applet"

How do I do this?

Thank you in
advance


Solution

Message 1

For the benefit of other users:



The following section in Siebel Bookshelf explains how this workflow process can be started:

Siebel Field Service Guide > Charges and Invoices > Creating Charges



This section documents 2 ways of executing the workflow process:

a) The Siebel user can click on the Charge button in the Agreements > Line Items view, which invokes this workflow.

b) The Siebel administrator can create a Job Request, which invokes this workflow.



However, when starting the workflow in this way, the following error messages appeared in the Workflow Process Manager log file (WfProcMgr_nnn.log):

ObjMgrBusServiceLog    Error    1    0    2005-05-11 11:27:44    

(engine.cpp (6227)) SBL-BPR-00234: An attempt has been made to run or resume workflow process '1-HBBTG' from the server. This operation cannot be completed since the workflow process contains User Interact steps.

GenericLog    GenericError    1    0    2005-05-11 11:27:44    

(bsvcmgr.cpp (1339) err=4300203 sys=0) SBL-OMS-00203: Error 33695 invoking method "RunProcess" for Business Service "Workflow Process Manager"



The error is due to the fact that the workflow process contains User Interact steps. To run it in batch mode, create a copy of the workflow with a new name, and in the copy eliminate the last two steps. This will eliminate the error in the job request.



... continued in next update

Message 2

continued from previous update ...



Note that this workflow process must be called for an individual agreement item, and the agreement item's id (i.e. the row id of the agreement line item) must be passed as the input argument 'Object Id'.



Note also that in the user interface, the workflow can only be called for agreement line items with [Auto Charge Flag] = 'Y'. This is not checked within the workflow. Thus, if the workflow is called outside the user interface, the caller would have to make sure that this condition is fulfilled.



Change Request 12-11NVN8U has been created to add this information to the documentation.



If it is required to generate charges for a number of agreement line items, a possible solution would be to create a parent workflow process, which will generate the required list of agreements and corresponding agreement line item ids and then call workflow process 'FS - Generate Agreement Charge' for each agreement line item id.

The Siebel application provides business service 'FS Workflow Utility' with a number of operations on row ids. The following are needed in this case: GenerateList, GetNextItem.

For an example how to generate and process a list of row ids, see workflow process 'FS - All Charge Consolidation'.



... continued in next update

Message 3

continued from previous update ...



Also note that the date up to which charges are generated is retrieved from field Advance To. In business component FS Agreement Item this field has a calculated value of Today(). Thus, charges are generated up to today's date.

If it is required to generate charges up to a different date, copy and change all the related workflows, so that the Advance To date can be passed as an input argument rather than retrieved from the business component.



Here are the details for this suggestion:



1) Copy the workflow processes, which use the Advance To date:

Copy of FS - Generate NRC Charge: FS - Generate NRC Charge using AdvanceTo input

Copy of FS - Generate RC Charge: FS - Generate RC Charge using AdvanceTo input

Copy of FS - Generate Usage Charge: FS - Generate Usage Charge using AdvanceTo input



... continued in next update

Message 4

continued from previous update ...



2) In each of the copies, eliminate the step, which retrieves the Advance To date.

The date is retrieved in the following step in each of these workflow processes:

Convert Advance To

   -> Business Service: FS Agreement Charge, Method: ConvertLocaleDateToODBCDate

   Input Argument:

      LocaleDate (Business Component) -> Business Component: FS Agreement Item, Field: Advance To

   Output Arguments:

      Process Property: OSD Advance To

It is then passed to the actual charge generation step as input argument:

      AdvanceTo (Process Property) -> OSD Advance To

Eliminate the step ' Convert Advance To', because now we want to get the value of Process Property "OSD Advance To" as an input argument from the parent and grandparent workflows.



3) In workflow Process: FS - Generate All Agreement Charge, add a Workflow Process Property "Advance To Date" (In/Out).

=> The value for this property can then be set in the Job Request.

=> The value for this property must then be passed as input argument to the sub process: FS - Generate Agreement Charge wo Goto Charges View



... continued in next update

Message 5

continued from previous update ...



4) In workflow Process: FS - Generate Agreement Charge wo Goto Charges View, add a Workflow Process Property "Advance To Date" (In/Out).

=> The value for this property can then be passed as an input argument from the parent workflow process.

=> The value for this property must then be passed as input argument to the sub processes, which use the Advance To date.



5) Replace the sub processes names in the sub-process steps and pass the process property "Advance To Date" as an input argument to the sub process property "OSD Advance To":

FS - Generate NRC Charge   -> FS - Generate NRC Charge using AdvanceTo input

FS - Generate RC Charge   -> FS - Generate RC Charge using AdvanceTo input

FS - Generate Usage Charge   -> FS - Generate Usage Charge using AdvanceTo input



Kind regards from

Heidrun Brittain, Siebel Technical Support





Additional Keywords: charge generation, server component request, RCR.




No comments:

Post a Comment