AD-hoc approver n step item level shopping cart workflow

Hi
We are on latest version of SRM and using n step item level SC approval workflow.
The scenario goes like this:
-     Requester creates shopping cart and workflow goes for two step approval.
-     In the approval preview the requester is able to see both levels of approvers, which is correct.
-     Requester now selects second level approver and replaces him with a ad-hoc approver. WE DO NOT WANT THIS.  Requester should NOT be able to replace an approver determined by approval badi. However should be able to extend approval step with ad-hoc approver say third level approver a ad-hoc approver. Also he should be able to change AD-HOC approvers ONLY.
Thanks
Joe

Jo,
  You may be able to achieve it in the BADI BBP_WFL_SECUR_BADI .
You can use the Business Add-In (BAdI) BBP_WFL_SECUR_BADI to determine whether
A shopping cart can be changed during the approval process
The approval workflow restarts when changes are made to the document
A reviewer/approver can be added or changedThese are the call scenarios (see import parameter SCENARIO).
Regards,
Suren

Similar Messages

  • Re-starting Item Level Shopping Cart Approval Workflow

    Hi All -
    We are implementing WS 14500015 - the Item-based n-level approval workflow for shopping carts - for certain scenarios.  In other scenarios we are using the overall approval workflow.
    I need to re-start the item-level approval workflow for certain scenarios (change in price, change in quantity, etc) - not when any and all changes are made to a line item.
    I was hoping to use the badi BBP_WFL_SECUR_BADI - which works great for the overall n-level shopping cart approval workflow.  However, I can't seem to hit it appropriately for the item level approval workflow!
    Does anyone know if this BADI or any other can be utilized for determining when to re-start the item-level shopping cart n-level approval workflow?
    Thanks so much!
    Abby

    hi,
    Have you implemented the badi BBP_WFL_SECUR_BADI ? for restarting the workflow?
    Let me know?
    Also it is possible to debug and see why the restart does not happen.
    Also let me know wether the restart happens in other cases?

  • Offline approval for line item based Shopping carts

    Hi ,
    We are planning to  use offline approval and line item based approval (item based approval workflow) for shopping carts.
    For e.g. 10 line items in a cart can have 10 different  cost centres, and a line each need to go to respective cost centre managers for approval.
    have few clarifications:
    1. Can offline approval be used for item based shopping cart approval workflow?
    2. Can different line items be sent by mail to different mail boxes?
    3.  Will 1 manager see all the 10 line items OR only the 1  line item for which he is responsible?
    4. If he will get only line for which he is responsible , and once he clicks on approve , will this approval apply to his line item only , OR it will apply to all the 10 line items ?
    Rgds
    Sumendra

    Hi Sumedra,
    Which workflow are you using - application or process contrlled workflow?
    Assuming you are using process-controlled workflow - I will answer following questions -
    1. Can offline approval be used for item based shopping cart approval workflow?
    - Yes, it can be used !
    2. Can different line items be sent by mail to different mail boxes?
    Yes
    3. Will 1 manager see all the 10 line items OR only the 1 line item for which he is responsible?
    1 manager can 'see' all the items but he can only approve or reject the item that he is suppose to act on. All other item will be grayed out. However, this behaviour is configuarable !
    4. If he will get only line for which he is responsible , and once he clicks on approve , will this approval apply to his line item only , OR it will apply to all the 10 line items ?
    - see above
    Regards,
    Amit

  • Approval status at item level

    Hi,
    I need to know whether the shopping cart item is rejected or not.(need to know the approval status at item level) and then make the rejection reason as mandatory.
    I tried to get the value of the flag DEDUCT_IND from each item,but it is never set to 'X' eventhough I reject an item.could anybody please tell me when this flag will be changed or is there any other way to find the approval status at item level.
    Regards,
    Rohini

    What is your SRM Version  ?
    If you have implemented process control workflow for Item level approval, then.
    Once the approver rejects and item, the workflow sends the workitem back to the requester to make changes are accept the rejection. If the requester accepts the rejection then the workflow continues. If the workflow does not have any more approver then the shopping cart is approved and the line item which is rejected by approver is set to DELETE. i.e. BBP_PDIGP-DEL_IND is set to 'X'.

  • Disable approval/rejection at item level.

    Hi All,
    We need to stop the user from approving/rejecting a SC at item level.
    On EBP Home screen , click on Approval link , then click on magnifying glass,there are two radio buttons .I hide the radio buttons with help of [this thread.|How to hide Approve and reject radio buttons at item level.;
    Although the radio buttons are hidden but still if the user presses "Save" button the SC is approved by default because the Approved RBs are selected at item level.
    How can I initialize both radio buttons ie. none RB is checked so that clicking save does nto approves/rejetcs  a SC .
    Or can i use some BADI for this..please suggest.
    Reagrds,
    Anubhav

    Hi Daniel,
    As you said,its not possible to avoid approval/rejection at item level on click of save button and coding a new save button will be very complex so I created two radio buttons (approval / rejection ) at header level If the Approval RB at header level is selected , all the approval RBs at item level are selected automatically selected and same applies for rejection RB at header level.The item level RBs are invisible/hidden so the user has no idea of item level RBs.
    Now I am facing two problems..
    1)If I put the code for RBs in Template 120 , it also ahows up on other screens like in step2 , while creating the SC.
    If i put the code in Template 140 , i get it in step3 while creating the SC.
    In which template should I code the RBs so that they are visible in the approval screen or is there a way to know from where the template was called I mean was it called during SC creation or directly clicking on approval link  OR  can we check if the user has employee role or manager role so that the approval / rejection RBs are displayed only for managers ?
    2) For this JS function to work perfectly , i need to know the number of items in the SC.
    Which variable in the Template 120 of BBPSC01 contains the no. of items in SC?
    Thanks a lot,
    Anubhav
    Edited by: Anubhav Jain on Mar 31, 2009 7:47 AM

  • N-step WF for shopping carts

    Is there a N-step WF for shopping carts which can be used in SRM 5.0 ?
    The WF is driven by product category and not spending limits.
    Or do we have to develop a custom WF ?
    Thanks
    -Bakulesh

    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.
    For more details, see the IMG:
    Supplier Relationship Management  ®  SRM Server  ®  Business Add-Ins for Enterprise Buyer (BAdIs)  ®  SAP Business Workflow  ®  Determination of Approvers for n-Step Dynamic Approval Workflow.
    Go through the documentation of the BADI BBP_WFL_APPROV_BADI. It will give you a fair idea on how to about the logic you want.
    Hope this helps!!
    Krishna

  • Want to copy Delivery address of one line item in shopping cart to all item

    Hi Experts,
                    We are upgrading from SRM 5.0 to SRM 7.0,In SC Creation We want to copy Delivery address of one line item in shopping cart to all line items in Shopping cart by clicking Change All Items button.This is custom button we added this button and we had written code to achieve the functionality but it is not working.This is same like Change All Items button in Account Assigment for copy accont details of one line item to all other line items in SC.
    Web Dynpro Component:/SAPSRM/WDC_UI_DO_SHIPTO
    Web Dynpro View:V_DODC_SHIPTO
    Thanks,
    Aarthi.

    Hi Prasad,
                   Our customer needs that button,they want whenever they are clicking the button delivery address should copy to all line items.
    In my action ONCHANGE_ALL_ITEMS i called this method
    wd_this->mo_dodm_shipto->zchange_all_items( ).
    zchange_all_items( ) is  implemented in class /SAPSRM/CL_CH_WD_DODM_SHIPTO.
    the code i wrote inside zchange_all_items( )
    *Error
      DATA: LX_PDO_ABORT               TYPE REF TO /SAPSRM/CX_PDO_ABORT,  " Class for Fatal error caught by PDO Layer
            LX_PDO_ERROR               TYPE REF TO /SAPSRM/CX_PDO_ERROR.  " Class for PDO General Exception
    Object Instances
      DATA: LO_MSG_CONSUMER            TYPE REF TO /SAPSRM/IF_PDO_MSG_CONSUMER,
            LO_PDO_SHIPTO              TYPE REF TO /SAPSRM/IF_PDO_DO_PARTNER.
    Context-Data
      DATA: lte_cll_shipto              TYPE /sapsrm/if_ch_wd_set_facade=>gt_guid_element,
            loe_cll_shipto              TYPE REF TO /sapsrm/if_ch_wd_set_element.
    Field Symbols
      FIELD-SYMBOLS <lse_cll_shipto>    LIKE LINE OF lte_cll_shipto.
    DATA : lo_pdo_acc TYPE REF TO /sapsrm/if_pdo_do_acct_assgmnt.
      DATA : ls_shipto_cll type /SAPSRM/S_CLL_SHIPTO,
             lt_pdo_partnerdetails      TYPE bbp_pdt_partner,
             ls_pdo_partnerdetails      TYPE bbp_pds_partner,
              LV_GUID          TYPE BBP_GUID,
              lv_item_guid type bbp_guid,
             lv_filled TYPE wdy_boolean.
    *exceptions
      DATA : LX_ABORT                  TYPE REF TO /SAPSRM/CX_PDO_ABORT.
    *Constants
      CONSTANTS : LC_OBJECT_ID         TYPE CRMT_SUBOBJECT_CATEGORY_DB VALUE 'BUS2121001',
                  LC_ADDR_ORIGIN       TYPE /SAPSRM/S_CLL_SHIPTO-ADDR_ORIGIN VALUE 'B'.
      IF LV_FILLED = ABAP_TRUE.
    Downcasting to shipto
        LO_PDO_SHIPTO ?= MO_PDO.
    insert the clipboard into facade and update and submit update
        me->/sapsrm/if_cll_do_mapper~insert_from_clipboard( io_set_facade = mon_cll_set_facade ).
    Add new Accounting entries.
        lte_cll_shipto = mon_cll_set_facade->get_data_elements( ). "get all elements from the context
        LOOP AT  lte_cll_shipto ASSIGNING <lse_cll_shipto>.
          loe_cll_shipto = <lse_cll_shipto>-set_element.
          loe_cll_shipto->get_static_attributes( IMPORTING rv_attributes = ls_shipto_cll ).
    Map ui-structure to pdo-structure
          MOVE-CORRESPONDING ls_shipto_cll TO ls_pdo_partnerdetails.
          IF LS_SHIPTO_CLL-PARTNER_FCT =  mv_part_func.
            LS_PDO_PARTNERDETAILS-PARTNER_FCT = ''.
          ELSE.
            LS_PDO_PARTNERDETAILS-PARTNER_FCT = LS_SHIPTO_CLL-PARTNER_FCT.
          ENDIF.
          IF ls_pdo_partnerdetails-del_ind NE 'X'.
            CALL FUNCTION 'GUID_CREATE'
              IMPORTING
                ev_guid_16 = ls_pdo_partnerdetails-p_guid.
           mv_acc_guid_split = ls_pdo_shipto-guid .
            IF mo_scope = 1.
              ls_pdo_partnerdetails-p_guid = mon_cll_set_facade->get_bo_guid( ).
            ELSE.
              ls_pdo_partnerdetails-p_guid = mo_parent_bo_mapper->items_get_lead_selection( ).
            ENDIF.
            APPEND ls_pdo_partnerdetails TO lt_pdo_partnerdetails.
          ENDIF.
          CLEAR : ls_pdo_partnerdetails, ls_shipto_cll.
        ENDLOOP.
    Add New items to PDO
        IF NOT lt_pdo_partnerdetails[] IS INITIAL.
          TRY.
              LO_PDO_SHIPTO->update_item_partners( EXPORTING it_partner = lt_pdo_partnerdetails
                                                               iv_item_guid       = lv_item_guid
                                                   CHANGING co_message_handler = mo_pdo_message_consumer ).
            CATCH /sapsrm/cx_pdo_abort INTO lx_pdo_abort.
              mo_cll_message_handler->set_abort( io_pdo_abort_exception = lx_pdo_abort ).
            CATCH /sapsrm/cx_pdo_error INTO lx_pdo_error.
              mo_cll_message_handler->add_exception( io_pdo_error_exception = lx_pdo_error ).
          ENDTRY.
    Update PDO with the changed data.
          TRY.
              mo_pdo->submit_update( ).
            CATCH /sapsrm/cx_pdo_abort INTO lx_pdo_abort.
              mo_cll_message_handler->set_abort( io_pdo_abort_exception = lx_pdo_abort ).
            CATCH /sapsrm/cx_pdo_error INTO lx_pdo_error.
              mo_cll_message_handler->add_exception( io_pdo_error_exception = lx_pdo_error ).
          ENDTRY.
    Fire refresh of DO Mappers registered for refresh since the item table has acc related data.
          mo_parent_bo_mapper->fire_event_refresh( iv_perform_updates = abap_false ).
        ENDIF.
      ENDIF.
    Thanks,
    Aarthi.

  • Error while clicking 'Transfer Items' in shopping cart processing

    Hi,
    When I click on 'Transfer Items' in shopping cart creation, I get the following error.
    The following error text was processed in the system P2S : Template interpretation failed. Template does not exist.
    The error occurred on the application server p2p_P2S_00 and in the work process 1 .
    The termination type was: RABAX_STATE
    The ABAP call stack was:
    Function: BBP_WS_IMPORT_SC_DATA of program SAPLBBP_WS_API
    Function: BBP_WS_IMPORT_SC_DATA of program SAPLBBP_WS_API
    Form: CATALOG_CONTENT_GET of program SAPLBBP_SC_APP
    Function: BBP_SC_APP_EVENT_DISPATCHER of program SAPLBBP_SC_APP
    Form: APP_EVENT_HANDLER of program SAPLBBP_SC_UI_ITS
    Form: SC_EVENT_DISPATCHER of program SAPLBBP_SC_UI_ITS
    Module: SC_EVENT_DISPATCHER of program SAPLBBP_SC_UI_ITS
    Can any one suggest on this.
    Rgds,
    Sanjeet

    Hi Paul,
    Yes, we could resolve the issue.
    But we used to get this errror when we set the debugger in
    the newly implemented code.
    If we remove the debugger, it was working fine.
    Solution:
    Go to transaction SICF.
    If you execute that, a tree structure will appear.
    Expand "Default Host".
    Default Host>SAP>BC->GUI>SAP-> ITS-> BBPSC02
    Go to EDIT mode.
    Change GUI configuration as below:
    Like other available parameters, add one more parameter called
    ~GENERATEDYNPRO  and make it equal to 1.
    i.e. ~GENERATEDYNPRO  = 1.
    But we tried this solution only when debugger was on.
    Please check it in your case also and let me know if it works.
    The other solution may be to publish the required template again.But I am not sure about that.
    Rgds,
    Sanjeet

  • Default settings for items is not getting copied to items in Shopping Cart

    Hi SRM GURU's,
    I am facing a problme while creating shopping cart.
    I maintained default settings for items like Product catagory,Internal Notes etc.
    While adding items in shopping cart these default settings are not getting copied to any items.
    If anybody is having any clue Plz let me know I will award points for sure.
    Our integration testing is affected because of this issue.
    Thanks in Advance.
    Atulp
    +919822761641

    Dear Laurent,
    Yeah, this is a very strange issue and also a rare one. We have already tried this option. User deleted the cart and created a new cart. But still no luck. The new cart is also not getting released from SOCO. User created many carts previously for different product categories, vendors and all carts were through. But for this cart,it is not getting released. If you could have any other idea, you are most welcome.
    Anyway, thanks so much for your time and patience. Appreciate your help!!
    Regards,
    Aswini

  • Disable 'Find' (good /service) function in 'items in shopping cart' SRM 5.5

    Hi SRM experts,
    after clicking on Shopping Cart (- Full functionality) you have the choice of searching in catalogs or you can scroll down to 'Items in Shopping cart' and enter the product-id directly in 'Good / Service'.
    How can I disable this 'Find' option? So not the whole line, but only the 'find' option with the binoculars.
    Hope you can help me out with this one.

    Hi Kubus,
    I think you are talking about the 'Order as Direct Materail' button..
    Use BBP_DP_PROD_CHK_BADI.
    Method PRODUCT_CHECK
    Clear the parameter EV_DP_POSSIBLE.
    Have a look at the following link:
    Hide order as direct material button
    Thanks,
    Pradeep

  • Add Item in Shopping cart

    Hi All,
    I want to know which is the screen in which the button 'Add Item to Shopping Cart' appears. The function code associated with it is 'ADDI' .
    The reason why I want this is that I am trying to add my own button on the same screen .
    Regards,
    Poonam

    In SRM 4.0, for the EBP scenario, ITS is used. Hence no BSP applications are available as per my understanding. Pls correct me if I am wrong.
    Further, we have noticed that when clicking the Catalog link from the create shopping cart screen, screen 250 is called. However, if the same functionality is executed from the Change mode of the Approvers login, then the HTML code is generated by some FM.
    Regards,
    Poonam

  • Shopping Cart workflow retrigger for changes done to SC already created

    Hi all,
    A shopping cart is created and later on in "Check Status" when the shopping cart is opened in change mode and any changes are made to the shopping cart either header or item level, the whole approval workflow is retriggered and the approvers are determined again.
    We have a scenario where for a particular account assignment category the approvers are added manually - ad hoc approvers through the "Add Approver" in "Approval Preview". For these shopping carts with manual approvers when in "Check Status" any changes are done to header or items of the shopping cart, the whole approval workflow is retriggered and the manual approvers previously added are refreshed as per standard SAP.
    I have to put a check in DOC_CHECK badi for the existence of approvers. If no approvers found an error message has to be thrown for adding the approvers manually. I am doing this by reading the approvers from the container for a cart created already. But when changes are made and the workflow is retriggered, the workflow container contains only the previous approvers and not the refreshed ones. So this is not captured in DOC_CHECK badi.
    Is there any way to capture the retriggering of workflow in DOC_CHECK badi, so that the check for approvers works fine even after a change being done to a shopping cart which is already created.
    Thanks and Regards,
    Asha

    Try this FM BBP_PDH_WFL_APPROVAL_SIMULATE
    Regards, IA

  • Shopping Cart Workflow Problem is not able to determine agents

    Hi Experts,
    We are facing a problem in SRM 5.0 shopping cart workflow. Normal flow is as follows: -
    Create SC > Goes for Approval to level 1 approver > Item appears in Approver's list > L1 approver approves it > Follow - on Document is created.
    Currently while creating shopping cart, we are able to see name of approver in approval preview. Still that item doesn't appear in approver's list. We checked in workflow log, it is getting stuck in task which is supposed to determine next level approver.
    Currently approval is done using workflow template WS14000133 and BADI BBP_WFL_APPROV_BADI. In this BADI we are able to find approver perfectly but that is not getting filled in the container of workflow. The Approver List of workflow container is appearing blank.
    Any pointers to this issue will be helpful
    Thanks
    Siddarth

    Hi Ricardo,
    In BBP_WF_APPROV_BADI we have implemented Method GET_REMAING_APPROVERS. The code snippet of method is as follows: -
    CALL METHOD EXITINTF->GET_REMAING_APPROVERS
      EXPORTING
        IN_UPDATE = IN_UPDATE
        DELETE_REJECTED_ITEMS = DELETE_REJECTED_ITEMS
        ITEM_DEDUCT_RESET = ITEM_DEDUCT_RESET
        ITEM_APPROVAL_HISTORY_TABLE = ITEM_APPROVAL_HISTORY_TABLE
        APPROVAL_HISTORY_TABLE = APPROVAL_HISTORY_TABLE
        ACTUAL_APPROVAL_INDEX = ACTUAL_APPROVAL_INDEX
        GUID = GUID
        OBJECT_TYPE = OBJECT_TYPE
        OBJECT_ID = OBJECT_ID
      IMPORTING
        APPROVAL_TABLE = APPROVAL_TABLE
        APPROVAL_ADMINISTRATORS = APPROVAL_ADMINISTRATORS
        ITEM_APPROVAL_TABLE = ITEM_APPROVAL_TABLE
        NO_FURTHER_APPROVAL_NEEDED = NO_FURTHER_APPROVAL_NEEDED
      CHANGING
        ITEM_APPROVAL_OBJ = ITEM_APPROVAL_OBJ.
    Now can you please tell me which variable I am suppose to look at?
    Thanks
    Siddarth

  • Wrong Agent Determination in Shopping cart Workflow

    Hi All,
    I am having problem in shopping cart workflow.
    If we create shopping cart with 15 or more line items then Approval is going to wrong line item cost object owner. However if we create shopping cart with 14 line items then it showing correct financial Approver. Even we raised one more shopping cart with value similar to 15 line items shopping cart and it also going to correct Approver.

    After 2 days of debugging i found where is the problem. I am explaing this below.
    First i created 2 Shopping cart. First one has 14 Line item which shows correct Agent.
                                                  2nd one has 15 Line item which shows wrong Agent.
            CALL METHOD l_o_pdo_sc->get_item_detail
              EXPORTING
                iv_item_guid = l_r_item_guid->guid
              IMPORTING
                et_item      = l_i_item_i
                et_account   = l_i_account_i
    *MOD-002:Begin
                et_limit     =   l_i_limit_i.
            APPEND LINES OF: l_i_limit_i TO l_i_limit.
            APPEND LINES OF: l_i_item_i TO l_i_item,
                                           l_i_account_i TO l_i_account.
    Case for First SC.
    l_i_account_i  has value of Line Items. First line item suppose 1L.
    After appending the l_i_account(2nd itab) has also first .line item 1L.
    Case for 2nd one.
    l_i_account has value of Line Items. First line item 1L.
    But after appending the l_i_account has no first line item 1L.
    Please give some solution to this problem.

  • Workflow issue : N step Item level approval for SC

    Hello Friends,
    We are working on SRM 4.0 , classic scenario , SP11.
    Here we are facing a typical issue in workflow. We are using Nstep approval for SC.
    In the standard task TS14508044, the work item text is "Approval of SC ".The shopping cart value is being populated by container element &amp;APPOBJ.OBJECTTOAPPROVE.TOTALVALUESTRING&amp;
    This same container element is used to populate the shopping cart value in the task description. However what we observe is that in the workflow log, the container element APPOBJ is initial.
    How is the total value of the shopping cart populated then?
    Also, the value of the shopping cart in the work item text and the work item description is in different currency format.
    The shoppng cart value in the work item text is in the format 12,34,567.89 whereas that in the description is in the format
    12.934.567,8
    Appreciate your inputs on this.

    Thanks Masa,
    For your valuable suggestion. Now after changing the WF-BATCH settings there is consistency in the currency format.
    Now the question is how we can change into the currency format of the user ?
    The user format is 1,234,567. 89 but still work item text and
    description is in 1.234.567, 89 format.
    Thank you

Maybe you are looking for

  • How to compare 2 version strings (of the format x.x.x.x where x : {0, 99})

    I am using Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production, PL/SQL Release 11.2.0.2.0 - Production I have a scenario like: Table1: Name Null Type NAME NOT NULL VARCHAR2(64) VERSION NOT NULL VARCHAR2(64) Data: Table1 Name

  • Icloud backup with shared email address

    My wife & I each have Iphone 4 and are upgrading to Iphone 6 this week.  I just used Icloud to update my phone for the first time and want to backup my wife's as well.  Can we do the using our current shared email address because we have diffieint ph

  • Font Explosion 500 & 10.4?; TechTool Pro 6 vs DataRescue vs FileSaver

    OK, I was looking at this bundle: http://www.macsuperbundle.com/?rs4=NOUS_BN_MSB_BUY0311 Most of the software is 10.5, but two items seem interesting for 10.4: 1. Font Explosion 500 lists Mac OS 10.5 as the minimum system requirement? What I am tryin

  • IMovie won't start since I updated to 9.0.7

    I have a MacBook Pro running OSX 10.7.4. I installed the latest update to iMovie (from 9.0.6 to 9.0.7) and now iMovie doesn't start. The icon just bounces in the tray for quite a while, and then stops. Does anyone have any ideas what's happened and w

  • Best code

    I was wondering what state of mind you guys like to be in when you write code. I personally feel I write the best code after I've had about 10 or so of my favorite alcoholic beverages, any more or any less I'm not as effective. How about you?