Complexity of using N-step BADI in SRM 7using Process controlled Workflow.
Hi,
Just as a big thought,
I have a Shopping Cart requirement, Here i am asked to develop a Custom workflow for SRM 7.0.
And the client is looking for us to use Process Control Workflows i.e(BRF integrated one).
I need to understand the complexity of using a N-step BADI.
How would be the complexity level if I use a N step BADI( ie Multiple approval levels on Line Item Based).
Kindly tell me the complexity of Using it and if any one has come across some requirement like this, then explain me that how did you face the situation.
Expecting an Earliest Response.
Thanks,
Shanky
Hi,
Is your project SRM 7.0 implementation project then you have to go for Process Controlled Workflow and if your project is upgrade then you can still go with Application Controlled Workflow but down line this has to switch to Process Controlled Workflow.
Best Regards,
Saravanan
Similar Messages
-
SRM Process Controlled Workflow - Re-start using FM BBP_PD_SC_UPDATE
Hi All,
We are upgrading from SRM4.0 to SRM7.0 SP07 in classic scenario. We switched to Process Controlled Workflow.
We have a CUSTOM application where the requisition items are entered and a Shopping Cart is created in SRM through Function Module BBP_PD_SC_CREATE. When the Shopping Cart is created in SRM , the Process Controlled Worflow is triggered successfully.
In the custom application , we allow users to do changes to the requisition that are awaiting approval.The changes are updated in SRM Shopping Cart through function module BBP_PD_SC_UPDATE. It is noticed that the workflow process levels are not re-started after the shopping cart is updated through FM BBP_PD_SC_UPDATE.
However , the process levels are re-started when the change is directly done to the Shopping Cart in SRM POWL. We want the process levels to be re-started even when the changes are done through BBP_PD_SC_UPDATE. The users are used do changes to the requisition through the custom application. We also noticed that system does not go through BAdI /SAPSRM/BD_WF_PROCESS_RESTART when changes are done to the SC through BBP_PD_SC_UPDATE.
Is there any way that we can trigger process level re-start when SC is changed through FM BBP_PD_SC_UPDATE
Thanks
SukumarHI ,
This is not the correct way of updating the SC. please check the below process...
first you try to get the SC document in Edit mode and this can be done only SY-UNAME should requester of the SC or( user who are changing the SC should be in the Org structure ). ( This point why i mentioned is you mentioned that your editing through custom application ).
note : use try and endtry and catch the exception when u get the SC document in Edit mode.
DATA: lo_pdo_sc TYPE REF TO /sapsrm/cl_pdo_bo_sc_adv.
"Instance SC PDO Layer
lo_pdo_sc ?= /sapsrm/cl_pdo_factory_sc_adv=>get_instance( iv_header_guid = p_guid "ps_shopping_cart-guid
iv_mode = /sapsrm/if_pdo_constants_gen_c=>gc_mode_edit ).
now you do what ever changes to the document. I mentioned points below.
"Get Item Details
lo_pdo_sc->/sapsrm/if_pdo_bo_sc~get_item_detail
do changes to the items of the SC.
"Update SC Items
lo_pdo_sc->/sapsrm/if_pdo_bo_sc~update_items
"Submit Update
lo_pdo_sc->/sapsrm/if_pdo_base~submit_update
"Save SC
lo_pdo_sc->/sapsrm/if_pdo_base~save
or order the SC again.
COMMIT WORK AND WAIT.
regards,
Devi -
Approver not determined process controlled workflow in SAP SRM 7.0
Hello all,
I have setup process controlled workflow in SAP SRM 7.0 EHP3 for shopping cart approval.
I have 4 approval levels.
I have used item-based Decision for entire document because for some items i want system approval.
In implementation of BADI /SAPSRM/BD_WF_RESP_RESOLVER, in the method /SAPSRM/IF_EX_WF_RESP_RESOLVER~GET_AREA_TO_ITEM_MAP, i am skipping the items for which i want system approval.
Also in method /SAPSRM/IF_EX_WF_RESP_RESOLVER~GET_APPROVERS_BY_AREA_GUID of BADI implementation class, i am keeping the approver table empty for the step which i want system approval.
For example i have 1 item in shopping cart and for 1st step, based on some accouting criteria, i want system approval for 1st level and the workitem should go directly to 2 approval step when shopping cart is ordered. This is not happening.
But if i have multiple items, and one item should have system approval based on some criteria and the 1st approval level should be system approval and other item should go to the 1st approver. This is happening and showing 'system' approver for item1 and 'appr_xyz' for item 2.
For shopping cart having only 1 item, If i approve the shopping cart in this state only, it doesn't go to any approver and is not usable.
am i missing anything in BADI /SAPSRM/BD_WF_RESP_RESOLVER??
Please let me know.
Regards,
Yayati EkboteHi Adrian,
Yes it is possible to display custom workflows in the Universal Worklist, However, I am not sure what you are trying to do with a routing table. If the workitems are of type decision, you can use UserDecisionHandler (action handler) configured in the XML file to use the Approve/Reject functionality - we are talking about webflow connector here correct? R/3 connector?
Regards,
Beth Maben
EP - Senior Support Consultant II
SAP Active Global Support
Global Support Centre Ireland
**SDN Forum Moderator:
SAP Enterprise Portal: Application Integration
**SDN Universal Worklist Wiki:
http://wiki.sdn.sap.com/wiki/x/ehU -
SRM 7.0 Process Controlled Workflow change
Hi
I have a SRM 7 process controlled Shopping cart workflow working ok, Approval based on value levels. The customer wouldlike to change this so that approval is also based on cost center attributes and also want at each approval level to have a reviewer.
Could anyone advise me how to add in a reviewer, as well as an approver for a particular process step, and also confirm that to have the cost center attribute taken account of at each process step, i would have to develop and code a new expression / evaluation ID, rather than use existing one.
Many Thanks
johnHi John,
Reviews are common for all process level.. itu2019s not process level specify like approvers.. Also we can add reviewers dynamically by a simple BADI implementation and configurations as follows..
BADI Implementation:
BADI : /SAPSRM/BD_WF_RESP_RESOLVER
Enhancement Spot: /SAPSRM/BD_WF_AGENTS
BADI Definition : /SAPSRM/BD_WF_REVIEWER_RULE
Configuration:
We can see Reviewer folder for all process schemas..
For adding approver or pool of approvers for a particular process level, review my answer in the following forum.. Re: SRM 7.0 SP05 - BRF Item level approval does not work
Thanks!!
Bharath -
SRM 7.0 - Process controlled workflow
Hi,
Landscape - SRM 7.0 SP05
Workflow - Porcess controlled
Scenario - Self service procurement
Problem:
1. We have mulitple level approval workflow for the shopping cart. I am using standard workflow task- 40007953 and using /SAPSRM/BD_WF_RESP_RESOLVER badi to determine agents.
2. All the potential approvers (managers) are determined correctly by this badi but the issue is work-item is sent to all the approvers at the same time where as the requirement is to sent the work-item to each approver in series i.e. only when the work-item is approved by the lower level manager, it should go to the higher level manager. Currently, this workflow task sends the work-item to all potential approvers at one go who can start working on parallely which is not desired.
Could anyone please help me to resolve this?
Please note that adding additional process steps in the process-level configuration was the option but we could not opt for that at this point of development as we have gone too far in terms badi development for agent derterminiation
Thanks & regards,
AmitAmit,
It is not possible to send the work item to people in sequence by configuring only one process level. If you have only one process level, the agent determination will only be applicable to that process level. If you are trying to assign multiple agents to that step, then all will get the work item at the same time.
I recommend doing one thing, Create multiple process levels(= no of approval levels you want). For each process level you keep same event and expressions. But your agent determination badi implementation need to be tweaked. Here is how you can do that
Use Parameters along with agent determnation badi implementation. In other words derive Agents based on the value of parameter using your badi implementation. This parameter can be configured in Process Controlled Workflow Configuration.
Example,
Process step 1 - WF_BADI - Parameter1
Process step 2 - WF_BADI - parameter2
Now write some code in the WF_BADI to pick up particular agent if parameter value is Parameter1 , pick another agent if parameter value is parameter2. Doing this way you wont ve to redesign your BADI implementation as you are able to break up the Agent logic based on parameter values.
Virender Singh -
Process Controlled Workflow - 1-step approval for shopping cart approval
Hi,
I have configured a one-level approval for SC (Process Controlled Workflow):
Object Type: BUS2121
Additional 1 level under schema: 3C_SC_600_000 (the last level is the automatic approval)
Level Type: Approval with completion
Eval ID: 0EV_SC_SL1
RR Name: RR_SPENDING_LIMIT_APPROVER
RR Param: USTONY.Y (I hardcoded it using my user ID, for the moment)
Task ID: 40007953 (I have checked, it's generalized as well)
Decision Type: Item-based decision for entire document
For PPOMA_BBP:
Under my org unit (Position):
Approval Limit: 1000
Output Limit: 1000
I didn't do any BADI implementations yet.
During creation of SC by other user, before "Order" the SC, the approval preview can show correctly that the Processor is as indicated in the config.
Once the SC is ordered, the whole step is gone and the event linkage becoming delinked (because there is error, and according to the config in SWEQADM).
However, I cannot find the workitem (no workitem generated) and SLG1 does not give any clue whatsoever.
I tried debugging method APPROVAL_LIMIT, and it seems fine as well.
Please help, what did I do wrong here?
Thanks,
Tony YHi Sahil,
I even changed to first process level to:
Level Type: Approval
Eval ID: 0EV000
RR Name: RR_MANAGER
RR Param: (Blank)
Task ID: 40007953 (I have checked, it's generalized as well)
Decision Type: Decision for entire document
Under PPOMA_BBP:
I made myself as a head of the org unit with the role manager.
The requester is "Exclude" the role manager.
The agent can be determined now.
But the workitem ID is still cannot be generated. It's always no workitem generated.
Please everyone, any help?
Thanks in advance,
Tony -
Badi guide for process controlled workflow
Where can I find the SRM 7.0 BADI guide for process controlled workflow in service marketplace?
Thankswhy you need a service marketplace for this??.. We have option in SPRO itself..
Path:
SRM Server -> Business Add-Ins -> Business Workflow -> Process-Controlled Workflow..
Thanks!!
Bharath -
How to determine N Step Approval process through Process Controlled workflow
HI
For SC approval process after 4th level of approval the workflow keep go N step till the approval determine. If no approval find then go for WF Exceptions.
In PCW we have process level like 100, 200, 300 and so on. What would be the procedure for Nth process level determination in SRM process controlled workflows settings.
Regards
KharabelaHi,
From SRM 7.0 PCW, requestor of SC or creator(buyer) of the PO can't be in the approval list.. this is standard...
create two custom events like zev_po_schema_eva and zev_po_sl_approval
create two custom expression.. one with constants as zev_po_schema_def and other one is formula interpreter(0FB001)..
assign zev_po_schema_eva as schema evaluation for PO.. MAKE SURE YOU LINK THE zev_po_sl_approval
with as zev_po_schema_def..
now create schema definition entry and specify as zev_po_schema_def..
now create process level
100 approval / approval with completion ( Your chooice ) .. maintain zev_po_sl_approval as evaluation id in the process level... maintain RR_SPENDING_LIMIT_APPROVER as Resp.Resolver...
maintain formula interperter value as (OV_SC_PREVAPPROVALIMI < 0V_PO_POTOTALVALUE ) AND (OV_SC_SPNDNGLMTFRQST < 0V_PO_POTOTALVALUE).
Saravanan -
SRM 7.0 Process-controlled Workflow not starting
Hi,
I have problems with implementing an own process-controlled workflow. The "Sample BC Set for Process Level Definition" /SAPSRM/C_SC_600_001_SP04 is working fine. However I do not succeed in triggering a customer Process Schema for BUS2121.
The (first?) problem can be duplicated as following:
1. BC-Set /SAPSRM/C_SC_600_001_SP04 is activated
1.1 When creating a shopping card (Web Portal) a approver ("Head of organizational unit" in OrgManagement) is displayed in the Details (Approval-Workitem is created when saving the shopping cart)
--> OK
2. Deactivation of Process Schema 3C_SC_600_001 (replace Eval.IDs with customer Eval.ID which contains always false expression)
--> When creating a shopping card (Web Portal) no approval data is displayed in the Details
--> OK
3. Copy Process Schema 3C_SC_600_001 into ZC_SC_600_001; replace customer Eval.ID with original Eval.IDs (Boole; no process schema in expression (Eval-ID 3EV_SC_600_001_100; Expression 3B_SC_600_001_100: "Execute always"))
--> When creating a shopping card (Web Portal) no approval data is displayed in the Details
--> NOT OK; the same result as with 1.1 is expected
Why is 3. not working? Any ideas would be very welcome.
Best regardsHi..
what do you see in SLG1? .. i think your process level Eval.id result is false, that is the reason workflow is not kicking of
1- level approval.. check your process level configure and try to use 0ev000 as a Eval.Id instead your custom Eval.Id and test..
Saravanan -
SRM Process Controlled Workflow
Hi Exports,
I have created a Process schema for SC object type (BUS2121)..
Looks like my process levels are trigged before the shopping cart is actually ordered by the user..
Is this a normal behavior? or I am missing any configuration? or I need to have a additional process level initially to check whether the SC completed?..
Please advice..
Thanks in advance
BharathHI,
Yes. That is correct task ID.
FYI. Task ID List for Process-Controlled Workflow
SRM Contract BUS2000113 No Completion Task
40007980 SRM_CT_APPR1 SRM Contract Approval
40008003 SRM_CTR_Acc Accept Decision / Adjust Document
40007997 SRM_CTR_Revi Revise Document
40107926 SRM_CTR_RW review document
SRM Shopping Cart BUS2121
40007952 SRM_SC_COMP1 SRM Shopping Cart Completion
40007953 SRM_SC_APPR1 SRM Shopping Cart Approval (1)
40007954 SRM_SC_APPR2 SRM Shopping Cart Approval (2)
40007994 SRM_SC_Acc Accept Decision / Adjust Document
40007936 SRM_SC_Revi Revise Document
40007945 SRM_SC_RW Review Document
SRM RFx BUS2200 40107917 SRM_BI_COMP1 SRM RFx Completion
40007982 SRM_BI_APPR1 SRM RFx Approval
40107922 SRM_RFx_Acc Accept Decision / Adjust Document
40007998 SRM_RFQ_Revi Revise Document
40107927 SRM_RFQ_RW Review Document
SRM Purchase Order BUS2201
40007973 SRM_PO_COMP1 SRM Purchase Order Completion
40007974 SRM_PO_APPR1 SRM Purchase Order Approval
40007995 SRM_PO_Acc Accept Decision / Adjust Document
40007996 SRM_PO_Revi Revise Document
40107924 SRM_PO_RW Review Document
SRM Supplier Quote BUS2202 No Completion Task
40007981 SRM_QT_APPR1 SRM RFx Response/Bid Approval
No Adjust task
40007999 SRM_QTE_Revi Revise Document
40107928 SRM_QTE_RW Review Document
No Completion Task
40008000 SRM_QT_APPR2 SRM Bid Approval
No Adjust task
40107934 srm_bid_revi Revise Bid
40107935 srm_bid_rw Review Bid
SRM Confirmation of Goods/Service BUS2203 No Completion Task
40007987 SRM_CF_APPR1 SRM Confirmation Approval
No Adjust task
40008004 SRM_CF_Revi Revise Document
40107929 SRM_CF_RW review confirmation
SRM Incoming Invoice BUS2205 No Completion Task
40008005 SRM_IV_APPR1 SRM Invoice Approval
No Adjust task
40008006 SRM_IV_Revi Revise Document
40107925 SRM_IV_RW Review Document
Auto 40007988 SRM_AUTOAPP Automatic Approval
Auto 40007989 SRM_AUTOREJ Automatic Rejection
Regards,
Masa -
SRM 7.0 Process Controlled Workflow-Level Type in Process level config
Hello Experts,
In SRM 7.0 for Process controlled workflow,for Level Type in Process Level configuration we have 3 different options
1) Approval with Completion
2) Approval
3) Automatic(System User)
Can you plz explain what is the difference between these 3 diffrent potion for Level Type in Process Level configuration.
Your help will be highly appreciated,
Thanks & Regards,
RKS1. Approval with completion : This allows approvers to make any changes to document while approving. Generally you define this type for buyer in SC approval.
2. Approval : above minus change
3. Automatic (system approval) : If no process level is determined, you need to set up a process level with automatic approval to approve the document by system. -
Process Control workflow - want to delete logical steps against one SC
Workflow issue : Process control workflow
In my scenario when requestor is creating a SC then workflow goes to buyer for assignment of supplier but when buyer himslef is creating a SC and forgot to attach supplier then workflow goes to error....i checked in SWIA its an error.....
i come to know tht we can logically deleted those steps , so that when buyer open a SC in edit mode and assign Supplier then workflow will behave as normal.
Please let me know where i can logically deleted the steps for particular work item ID.
SmritiHi ,
Yes - what Masa suggested is the correct and the SAP Best Practice, I'll do the same. you can implement the BAID BBP_DOC_CHECK_BADI , where you check whether the requester is Buyer or not, if the requester is buyer , you can get the assigned role from BUS4101 by passing the user id or calling the FM 'BAPI_USER_GET_DETAIL'. if the 'ACTIVITYGROUPS'
table from FM ''BAPI_USER_GET_DETAIL' has an entry 'SAP_EC_BBP_PURCHASER' then the requester is a buyer. you can write your logic after that to make sure the SC has assigned supplier or not. if the SC is not assign the supplier then raise the error message.
Saravanan -
Useful link for Process controlled workflow
FYI Useful link for Process controlled workflow..
http://help.sap.com/saphelp_srm70/helpdata/en/74/c0256bebb54f1c8dfb519d2908152b/frameset.htm
Thanks!!
BharathHi Peter Novoth,
Can you please create this as a sticky thread, so that this will be us full for everyone..
Thanks!!
Bharath -
Problem with Confirmation (BUS2203) Process Controlled Workflow SRM 7.0
Hi gurus,
I'm having a bit of trouble with the Process-Controlled approval workflow for the business object "BUS2203" (Confirmation) in SRM 7.0.
Basically, I've configured it to determine N-process levels, and for each level to retrieve the corresponding agents/approvers. When I am creating the confirmation, I go to the "Approval" tab and I can see all of my approvers there. Nevertheless, the moment I confirm an item (ie, put a confirmed quantity and press the confirm button) first I get the status "Awaiting Approval" and then when I close/or click the refresh button I get the status "Release Rejected".
Has anyone had this problem before with this workflow? Do you know if this is a standard error, or might I be doing something wrong? I tried to look through the OSS notes, but unfortunately couldn't find anything..
Please feel free to provide any idea that may be useful!
Many thanks...
AdiHi,
Can you paste your process definition? BRF event and expressions.
Does it work with SAP sample 1 step approval process definition?
Regards,
Masa -
SRM Process Controlled Workflow Issue - Process Level Agent not shown up
System: SRM 7.0 (SP09)
Implemented BADI to determine agents at process level - BADI Definition /SAPSRM/BD_WF_PROCESS_CONFIG
Configuration: 1 Process Level (Seq 100, Lvl Type A, Resp. Resolver Name: Z_XXXXXX, Task ID 40007954, Decision Type 1)
When creating the Shopping cart based on the cart value, the agents are determined correctly and process level GUID is created with Agent ID associated.
something like
GUID1 - APPR1
GUID2 - APPR2
GUID3 - APPR3
GUID4 - APPR4
Before "Order" when we do preview of Approval Process, it shows all the approvers in the sequence as expected. As soon as the cart is ordered, the first process level GUID lost its agent thus throwing error saying "Strategy Z_XXXXXX did not determine any approver"
But when we look at the table /SAPSRM/D_WF_016, the corresponding entires of GUID1 has the agent ID as APPR1.
The task 40007954 has been GENERALIZED so as the master workflow template 40000014. The same is working in our Dev system but throwing error "Strategy Z_XXXXXX did not determine any approver" in QA system.
Any input is highly appreciated.See the thing is the agents were picked up & saved in the table /SAPSRM/D_WF_016 in the process level BADI. The first process level guid doesn't get processed in the RESP_RESOLVER BADI. I put the break point and can see the agents were picked up & saved in Process Level BADI.
The funny part is it is working just fine in the Dev system. Secondly, when we do BOB for the same user (requester), it picks up the first level approver without the error.
Meaning, If USER1 shops for himself (Creator & Requester are same), we encounter this error. If USER2 shops for USER1, then the corresponding approvers were picked up correctly without the error. USER1 & USER2 have same authorizations in SU01D (USER2 is copy of USER1, so no authorization issues). Approvers determination is based on the requester.
Somewhere, we miss the settings. Don't know where though.
Maybe you are looking for
-
[SOLVED] Syslinux.cfg changes not taking effect
When I first switched from grub to syslinux, I discovered that my system won't boot properly without a nomodeset command in the boot line (actually I knew that; it was also in grub but I installed that 5 years ago and long since forgot). It worked g
-
How do you post a slideshow online?
that you made in iphoto? thanks...
-
When will Firefox have native DNSSEC support
At the moment DNSSEC support is only available using third party developed plugins - there are multiple plugins with different logic available. This all makes it hard for a simple home user to start noticing DNSSEC. As DNSSEC is spreading very quickl
-
Displaying RichTextEditor Data in datagrid
Hi, I have a form in which I am using RichTextEditor to collect data. In other page I am displaying the same data in the datagrid. How do I display the data in the datagrid as htmlText. Do I use the label function? If yes then how. Thanks
-
ALV for one header and multiple item table
Hello All, I have a requirement to display records from one header and three item table using ALV. The output should be such that 1-line - record from header table followed by - records from the 1st item table(can have multiple entries corr