cancel
Showing results for 
Search instead for 
Did you mean: 

Values not getting passed to the default rule from task container

Former Member
0 Kudos

We have a scenario where the binding is done from workflow to task but in the workflow log only the task container shows the values but the workflow container is empty. Since the task container is populated we have added the agent determination rule in the default rules tab of the task where binding is done from task container to rule container but still the values are not getting passed. We have done swu_obuf, also the import and export checks are applied correctly. Can somebody please help what can be the issue here?

Accepted Solutions (0)

Answers (5)

Answers (5)

SandySingh
Active Contributor
0 Kudos

Hello

Is this issue resolved?

Regards

Sandy

Former Member
0 Kudos

No.

SandySingh
Active Contributor
0 Kudos

Hello

the same are not been passed to the rule container(which is maintained in 'Default Rules' tab in the task) 

You have mentioned that you are using the rule in the "Default Rules" tab of task PFTC. There is a binding icon right at top in PFTC-> Default Rules tab. Select the "Agent(Defualt Rule)" and maintain the bindings and check results.

Also make sure that rule or agent determination defined outside the PFTC in the workflow definition activity step(Agents) is not overriding the default Rule agents.

Regards

Sandy

SandySingh
Active Contributor
0 Kudos

Hello

To pass data from the Rule binding to workflow container, you can use programming exit. Refer Code below

You can use the Programming EXIT to set the workflow container element

Create a custom class copying CL_SWF_TST_WAPI_EXIT and include it in the "Programming Exit" tab of the user decision step. In this exit for event SWRCO_EVENT_AFTER_RULE_EXEC , set the container element .


CASE im_event_name.

       WHEN if_swf_ifs_workitem_exit~c_evttyp_after_rule_exec.

* Get Rule Result

         CALL METHOD im_workitem_context->get_rule_result

           RECEIVING

             re_agents = lt_rule_result.

* Get Top Level Workitem Container

         CALL METHOD im_workitem_context->get_top_container

           RECEIVING

             re_container = lo_top_container.

* Set the Container Element for Agents

         TRY.

             CALL METHOD lo_top_container->set

               EXPORTING

                 name       = 'LAST_APPROVER'

                 value      = lt_rule_result

               IMPORTING

                 returncode = lv_rc.

http://scn.sap.com/thread/1440788

http://wiki.scn.sap.com/wiki/display/ABAP/Program+Exits+In+Workflow

Sample class CL_SWF_TST_WAPI_EXIT


Regards

Sandy

Former Member
0 Kudos

Hi Sandy,

Thank you for your response.

Here I am referrring to passing of the values from task container to rule container. Even though the task container shows the values populated in the workflow log, the same are not been passed to the rule container(which is maintained in 'Default Rules' tab in the task) because of which the the task does not have any agent assigned.

Thanks,

Chetan Taori

I042439
Employee
Employee
0 Kudos

Hello Chetan

How are we so sure that the values are not passed to the rule? If you see the values in the Rule AND if you have done the BINDING between the Task And the RULE...then the values should be passed to the rule.

"No agents assigned" can be due to the reason that the task is not set to general.

Go to PFTC->Change the Task->menu Additional Data->maintain Agent Assignment ->Set the task 'Attributes' to General. If this is not the DEV system, transport them to Prod from Dev using:

So, check the Binding from the task to the rule and if it's there, check for Task Attribute (general task or not)

Regards,

Modak

Former Member
0 Kudos

Hello Modak,

We came to conclusion that the values are not been passed beacuse we got the desired result when we independently simulated the rule by giving the input value. Also the task is configured as general task and we are not getting the error as 'No agent assignment' but it follows the logic handled for blank input and accordingly fetches the default system user ID as the agent as per written in the rule logic.

I042439
Employee
Employee
0 Kudos

Hi Chetan

if you see the values in Task Container and they are Not passed to the Rule Container; only thing left is to check the Binding between the rule and the Task. Did you check that?

regards,

Modak

SandySingh
Active Contributor
0 Kudos

Hello,

It is not possible to pass the container values from Rule to workflow container.

POST data

Regards

sandy

former_member185167
Active Contributor
0 Kudos

Hello,

"We have a scenario where the binding is done from workflow to task but in the workflow log only the task container shows the values but the workflow container is empty."


If you're doing workflow to task then you would expect the task to be empty too!


I think we need to see some screenshots here, both of the bindings and the container contents.


regards

Rick