cancel
Showing results for 
Search instead for 
Did you mean: 

Issue in Process Controlled workflow for Shopping cart in Quality system.

Former Member
0 Kudos

Hello All,

I ahve configured a Process controlled workflow in SRM 7.0 with custom resolver, and I am facing an issue taht the Workflow works well in Development but in Quality the approvers are dropped after SC is ordered in Quality system.

The SC Workflow drops the approvers picked up from the Interface method /SAPSRM/IF_EX_WF_RESP_RESOLVERGET_AREA_TO_ITEM_MAP and IF_EX_WF_RESP_RESOLVERGET_APPROVERS_BY_AREA_GUID of BADI /SAPSRM/BD_WF_RESP_RESOLVER. The approvers can be seen in the shopping cart Approval preview Tab until the SC is ordered.

I have compared the OSS notes relevant for Workflow, all of them have been transported, Also I compared and checked general Workflow settings, BRF Config and Process level settings in Dev and Quality, everything is same.

Also while debugging; the approvers can be seen in the decision set table in the create_process_forecast method of class /SAPSRM/CL_WF_PROCESS_MANAGER.

Kindly let me know what else i can check to find the root cause.

Thank you in advance for help!

Regards

Prasuna.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

for some reason system is not able to find the approver while you order the SC, what do you see in SLG1.. what is the workflow status now.. you can debug this issue through class /sapsrm/cl_wf_pdo_sc the method handle_process_finished..

Saravanan

Former Member
0 Kudos

Hi Saravanan,

Thank you for the hint, will try debugging there.

In SLG1 the log shows that the level returns true ( X) , for the Requestor's User name. The levels are present in SC Approval flow, but the Approver name disappers. The SC remains in Awaiting approval status with no agent.

I cant figure why this works in Development and not in Quality.

Thank you for again!

Regards

Prasuna

Former Member
0 Kudos

Hi ,

can you check all your WF related transports are moved to quality.. did you see the event linkage active for in SWE2 for following entries..

abap class /sapsrm/cl_wf_pdo ready_for_release srm_process_start

abap class /sapsrm/cl_wf_pdo ready_for_workflow ws40000014

Saravanan

Former Member
0 Kudos

If I understand your issue correct, you can see the Agents are assigned properly in the "Approval Process Preview" before the document is SUBMITTED for order and when you go back to the document, the agents are gone ending up with the error "Strategy XXXXXX did not determine any approvers"

Use SWI6, populate the fields and go to details and go to the "InProcess" task and go to "Details" and Check whether you receive the error as "EVALUATE_AGENT_VIA_RULE - Result of agent resolution does not agree with agent determination" (Agent determination for step '0000000293' failed).

This may happen if you haven't GENERALIZE the tasks related to the workflow template.

Generalize the tasks for WF template in your QA system using the following IMG path

SAP Implementation Guide --> SAP Supplier Relationship Management --> SRM Server --> Cross-Application Basic Settings --> Business Workflow --> Process-Controlled Workflow --> Technical Configuration --> Generalize Tasks

WF Task: WS40000014

Answers (2)

Answers (2)

vinita_kasliwal
Active Contributor
0 Kudos

Also I have prepared a doc if you can see the same as in the link below

https://drive.google.com/file/d/0B_ROIRDr5-DSY2RHMkJyNFNINzQ/edit?usp=sharing

Former Member
0 Kudos

Hello Vinita;

Thanks for the input and sorry for the not so "ASAP" reply;

From what I'm seeing in from your 2 screenshot, i strongly believe that the problem is even before the Z implementation /SAPSRM/IF_EX_WF_RESP_RESOLVER~GET_APPROVERS_BY_AREA_GUID (in which the FM i ZSRM_GET_USER_FROM_PGRP is called. I think the problem could be in the process level determination  ZSRM_WF_BRF_0EXP000_SC_APP100. Let me explain:

In your  cases where not buyer is determined,  in the approval tab there is not even a process level for buyer approval. If the problem were indeed in the implementation  /SAPSRM/IF_EX_WF_RESP_RESOLVER~GET_APPROVERS_BY_AREA_GUID  then the process level would be there, but the system will display, instead of the name of the buyer(if the buyer determination fails) a red label with the message:  "With the strategy "Buyer determination" an approver could not be determined (or something like that..please check the image at the end of the text)".

I can propose a way to discard this: Implement the method /SAPSRM/IF_EX_WF_RESP_RESOLVER~GET_FALLBACK_AGENTS of class ZCL_BADI_SC_WC (in case you didn't know, in this method you can specify an "default" approver in case that the determination of approver in GET_APPROVERS_BY_AREA_GUID fails). The idea is to specify an default approval and see how it behaves:

  • If the user you indicated in the method GET_FALLBACK_AGENTS appears as approver, then yes, the problem is arises from implementation GET_APPROVERS_BY_AREA_GUID, in which case it could be a data problem (peharps in pposa_bbp?). You could also check in TX SU53 with the users with this problem to see if there's a missing authorization objetc.
  • If, in the other hand, the "default" approver is not shown, it means that the process level buyer determination is not even called, so you should check in more detail ZSRM_WF_BRF_0EXP000_SC_APP100 and /SAPSRM/CL_WF_PROCESS_MANAGER > Determine process restart –method ----- (i have never used this method, so i could not tell if  it could be the source of the problem).

Also, you could implement the method GET_FALLBACK_AGENTS in this way so the default approver would be the WF administrator indicated in the customizing (or you could just append directly any user you want):

METHOD /SAPSRM/IF_EX_WF_RESP_RESOLVER~GET_FALLBACK_AGENTS.

   DATA: lv_admin_expr TYPE swd_shead-admin_expr,

         lv_admin      TYPE swd_shead-wfi_admin,

         lv_admin_type TYPE sy-input,

         ls_agent      TYPE  /sapsrm/s_wf_approver.

   CALL FUNCTION 'SWD_WF_DEFINITION_ADMIN_GET'

     IMPORTING

       default_admin_expr = lv_admin_expr

       default_admin      = lv_admin

       default_admin_type = lv_admin_type.

   ls_agent-approver_id = lv_admin.

   APPEND ls_agent TO rt_agent.

ENDMETHOD.

Error of agent determination:

Please let me know the result of the test with the implementation of method GET_FALLBACK_AGENT. By doing this we could ensure if really the problem is in method GET_APPROVERS_BY_AREA_GUID or before.  I just made the test in our system and I'm almost sure that you wont get the default approver, but i could be wrong. 

Any question please let me know.

Best regards

Cristian R.

Former Member
0 Kudos

Hello everyone;

I have this exact same issue ( the approvers are dropped after SC is ordered). It not occurs with all my process level, so far only 1 approval level is giving me this error.

Someone know how to solve it?

Thank you in advance

Kind Regards

Cristian R.

vinita_kasliwal
Active Contributor
0 Kudos

HEy Any response I am also facing the same issue where after the workload is redistributed by changing the Pur org as per the process level schema the first step in workflow is droppped and it goes to the next level of approver . PLease could some one assist ?

Buyer determination should be the first step in approval  and its missing.

Former Member
0 Kudos

Hello Vinita;

In our case, the problem was  a Z implementation of the badi definition /SAPSRM/BD_WF_RESP_RESOLVER, but i'm not quite sure that your issue is the same that the one we faced.

Nevertheless, i have gained some expertise in PCW, so perhaps i could help you if you provide me a little more info:

Which badi implementation are you using to determine the approver? Is a standard?

Also, i',m understanding that the purch group (buyer) responsible for the line item must be the first level of approval, is this correct?

Best regards,

Cristian R.

vinita_kasliwal
Active Contributor
0 Kudos

Hey Cristian

I really need help in here . I have been trying to do the same evr since I posted this yet I am unable to figure out . I raised a OSS note as well with SAP but they expect me to do the following which I am unbale to hence I am back to square 1 .

WF debugging is different I am trying to out break points but it just doesnt stop  .

Please could you provide me more info on how to check further for this ?

ZSRM_WF_BRF_0EXP000_SC_APP100 --------to check if the level is returning true once changing the PGGR at workload

/SAPSRM/CL_WF_PROCESS_MANAGER > Determine process restart –method ----- To  check  if restart occurred .

BADI ZSRM_EHI_WF_AGENTS_SC  class ZCL_BADI_SC_WC method GET_APPROVERS_BY_AREA_GUID to check if the approvers are being returned correctly .

Alos i tried to check thorugh SWUD and found the below have a look at the attached documenbt and let me know if this is the cuase for our concern ?

Former Member
0 Kudos

Hello Vinita, sorry for my late reply;

I would first set a break point in the FM assigned to the BRF ZSRM_WF_BRF_0EXP000_SC_APP100. If it doesn't stop it could be happening one of the following things:

  • There may be an event linkage deactivated (SPRO configuration). In this part please check note number 1697416. We once faced a similar issue and this note provided the solution. Also, if you can share to me the event linkage you have activated, there may be some missing.
  • There is a wrong process level, process schema or business process configuration. (Recheck if  necessary).

If it stops, then i will check the following:

I'm seeing you are using task 40007952 - SRM Shopping Cart Completion. Is there any reason for this? I use task 40007953 - SRM Shopping Cart authorization:

You could also try with task 40007953 and see the results

From your attachment, i understand that the issue is not for all the users, is this correct?.

Below are the details in our system. Its possible the issue may be related to one of the flags marked in red. If you wish, i could share to you the manual i followed for this part. 

Please let me know if anything of the above was helpful. If the issue persist let me know to provide further support.

Best Regards

Cristian R.

vinita_kasliwal
Active Contributor
0 Kudos

Hey Cristian

Let me try adding more inputs and I would really apreciate if you can check this once and let me know ASAP .

I have checked all the event linkages and since it works in few cases and not for others I am assuming it is fine .

If you see below the issue is that in few cases eg as below the vuyer determnation step is visible and in others it is not visible .

The user approved it here from what I see in the backend yet the Buyer dteermantion step is not refecletd in here .

SC 2128

From the SC 2128 in the backend I see the below Agents :

and for 2085 I see the below :

Can you please let me know on why in cases Jerry is missing as an agent ?