cancel
Showing results for 
Search instead for 
Did you mean: 

MSMP-PFCG Agent rule help required

former_member204204
Active Participant
0 Kudos

Hi Experts,

Need your suggestion on the below query.

I was trying to create a PFCG agent role by following the instructions from the below link.

http://wiki.scn.sap.com/wiki/display/GRC/Setting+up+PFCG+Agent+Role+and+Workflow


Now I am struck in the middle where I have a scenario in which we have 7 different company codes and for each company code there is a approver so I will create 7 different roles for each company code and assign it to the 7 approvers(One role to each approver).Now i want this Agent to be the first level of approver in the path followed by Manager-->Role Owner-->Security. But when I am trying to add a stage with sequence number 000 it is not allowing me to create it but when Iam trying to create it with sequesnce number 004 iam able to create it that means i am not allowed to change the standard path.Now please suggest me how i should map this agent as the first level of approval followed by Manager-Role Owner-Security.

Also in the end user request form how should i make multiple entries available for that particular field(Company) so that the End user selects the appropriate company code and the request goes to that particular approver.

Thanks,

Neeraj Agarwal

Accepted Solutions (0)

Answers (3)

Answers (3)

former_member193066
Active Contributor
0 Kudos

Hello,

First of all.you cannot create stage with 000..

it should start with 001 (atleats) if there is stages in path like 001 002 003 then you can create 004

but if your first stage is 004, then 005, in this case it will allow you to create stage with sequence like 001,002 and these stage withh stay above existing stage , based on sequence.

first do not use standdard path.

create anew path based on your requirement. map is in maintain route mapping

second : you want approver to be based on company code.

create BRF+ agent rules identify agent based on your company code.

Regards,

Prasant

former_member204204
Active Participant
0 Kudos

Hi Prasant/Colleen,

Thanks for you support here.

I have created a BRF Initiator and Agent,Workflow with 3 stages., Manager->BU Head->Role Owner.

I managed to create a BRF agent(BU Head- Stage -2) by making decision based on Business Process and Company code and determining the result value as a User ID(Approver). This is working fine, this will work for all 7 Company codes- BU Head

Decision Table:-

  • Business Process      Company Code   Line Item                User id
  • FI00                              INDIA                    ITEMNUM              ZMMUSER

But when I am trying to use the user group for multiple BU Head for the same company code I am getting error after manager stage approval saying agent not found.

Decision Table

  • Business Process      Company Code    Line Item                User Group
  • FI00                              INDIA                    ITEMNUM               ZMM

Here I am looking for inputs where I can use the User group or any other way to determine the BU Head and updating BU Head must not require to maintain BRF+ Agent again and again in case if the new BU Head comes or leaves the company.

Looking for your valuable inputs here.

Regards,

Neeraj Agarwal

Colleen
Advisor
Advisor
0 Kudos

Hi Neeraj

I think that User Group is the group you create in MSMP for Agents and not SU01 user group? You can confirm this by looking at the agent rules to see if one can be based on user group.

If you goal is to avoid all BRF+ and MSMP maintenance when you get new Approvers you might need to look at multiple steps for BRF+ rule (i.e. have a DB lookup that locates users assigned to the approval role you granted them Or can look at user group assigned to them). You could then return multiple approvers as well

There have been some posts/blogs on SCN for DB look ups for rules that you could reference for your requirements

As an aside, once you get past decision tables it might be worth talking to someone with strong BRF+ skills to assist you in designing and building an efficient rule.

Regards

Colleen

former_member204204
Active Participant
0 Kudos

Hi Colleen,

I tried creating DBLOOKUP to evaluate the user id from the table GRACROLEAPPRVR and ROLEID from the GRACROLE table.

Below is the decision table for the agent where I have mapped the DBLOOKUP to the result column(User ID).

Now I am not getting the agent not found error but getting the below error seems like there is something wrong in my agent rule but not able to analyze.  

Your inputs on this will be highly appreciated.

Regards,

Neeraj Agarwal

Colleen
Advisor
Advisor
0 Kudos

Hi Neeraj

You need to test the function in BRF+ to check the logic is right. In BRF+ perform a simulation of a scenario so you can track where failing.

I'm still not sure what your approach here. Is it

  • You want to leverage the role owner against the role in BRM or
  • You have built some PFCG approval roles to assign to your approvers and they are used to determine who the approvers are based on another attribute on the form?

If you have all your roles in BRM and each is assigned the approver you want, then you could keep to the delivered role owner agent rule

If you are trying to use your own PFCG roles and map out scenarios you need to consider using the CASE statement and/or DBlookup to identify the approver. E.g. (purely pseudo-logic here)

CASE COMPANY

          INDIA --> Perform the DBLookup for Comp1

          AUSTRALIA ---> Perform DBLookup for Comp2

          OTHER --> any of company code could be return null so you can handle error

END CASE

In terms of using BRF+ for more complex scenarios, have a look at the BRM community for guidance

Cheers

Colleen

Colleen
Advisor
Advisor
0 Kudos

Hi Neeraj


Also in the end user request form how should i make multiple entries available for that particular field(Company) so that the End user selects the appropriate company code and the request goes to that particular approver.

Rather than have the user pick multiple companies could you have you rule use the company assigned to the role to determine approval path?

Regards

Colleen

former_member204204
Active Participant
0 Kudos

Hi Colleen,

I did not got your approach please correct me if I understood it wrongly.

You mean to say I need to create 7 different path for each company code, then I don't think it will be feasible to do this.

My requirement is that whenever the user submits the request it should go to the approver based on the company code then follow the standard path(Manager--Role Owner).Can you please suggest how could this be achieved in a single path.

Thanks,

Neeraj

Colleen
Advisor
Advisor
0 Kudos

Hi Neeraj

My point was to identify company code was to use the requested role attibute

In terms of agent rules, do not use PFCG for your case as you will need to stage for each different company code. Use BRF+ other options to achieve. You could still incorporate role in your BRF+ rule to make it easier to assign access to approvers

Regards

Colleen

Former Member
0 Kudos

when creating stages, always start with "010", that gives you room to change. "000" is not legal.