cancel
Showing results for 
Search instead for 
Did you mean: 

Clarification on Workflow trigerring process

Former Member
0 Kudos

HI Experts,

we are having a classic scenario(SRM5.0) and 2 level approval process.My doubt here is, we have org structure mentioned below

IT department (org.unit) below this we have one manager

subbramanyam

IT department Mumbai (another org unit) we have one manager below this and some users

subbu(Manager)

raman

ashu

when ever Ashu creates a shopping cart it goes to Subbu(1st level approver) and then later to subbramanyam(2nd level approver)

we dont have value limits maintained neither Approval Limit Nor spending Limits.But when ever we add manager to Org strucutre

we add a cost center to him in attributes(only second level approval will have that) but not for all tha managers

how it is identifying the approvers

regards

subbu

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hello Subbu,

Separate Determination Method for List of Approvers via BAdI BBP_WFL_APPROV_BADI in WS14000133:

In WS14000109 the approvers are determined dependent on the total value of the SC and on the approval limits of the managers.

However, if you use WS14000133 as an alternative, you can determine the list of approvers flexibly according to your particular requirements.

You do this using the method GET_REMAING_APPROVERS of BAdI BBP_WFL_APPROV_BADI, with which you can integrate a logic for determining the approvers for each approval step (this can be more than one) and the number of steps in the entire approval process.

ACTUAL_APPROVAL_INDEX is passed to the BADI by workflow. It is

incremented by workflow via container operation in sub-workflow

WS14500014 as it passes through approval loop. It is used to determine

current approver(s) (method ACTUALDYNAMICAPPROVERSGET calls the same

BADI) to be passed to the approval task as agent.

APPROVAL_TABLE-APPROVAL_TABLE_INDEX is specified by you when you write

the code in the BADI. It is one of the last steps in the BADI

For example, you want approvers who are assigned to criteriaA to be

first level approvers. You assign this index via function module

BBP_WFL_DIN_FILL_APPROVER. Here is sample code of that:

  • now fill the approver for the different approval definitions

CALL FUNCTION 'BBP_WFL_DIN_FILL_APPROVER'

EXPORTING

iv_approval_index = 1

ic_step_description = YourDescription

iv_criterion1 = CriteriaA

TABLES

it_approval_def = lt_appr_def

it_approval_object = item_approval_obj

et_approver = lt_approver

it_approval_items = lt_approval_items.

So, pretty much all approvers that you have assigned to CriteriaA will

be approvers at the first level.

Let me know if you need further clarification.

look into the note:722522,604276 might help in understanding how it works.

Arshad

Edited by: arshad ahmed on Jul 31, 2009 9:28 AM

Former Member
0 Kudos

HI Arshad,Anubhav

I appreciate your suggestions but we dont use any Badi's in our system.Its just a two level approval process which we are having and i did not find Spending Limit or approval Limit or Value limits mantianed in org structure or in Personalization.

i have checked the starting conditions whehter any thing is define based on roles.Even roles remain the same.I am not getting how the approval process is defined here

regards

subbu

Former Member
0 Kudos

Hello Subbu,

is the Organisation hierarchy maintained in SRM or R/3?

Arshad

Former Member
0 Kudos

Hi Arshad,

It is maintained in SRM only.

regards

subbu

Former Member
0 Kudos

hi ,

Thanks for the suggestion.

former_member184111
Active Contributor
0 Kudos

Hi Subbu,

N Step aproval is implemented using BBP_WFL_APPROV_BADI BADI , Check code in this BADI and see how it is fetching approvers.

Regards,

Anubhav