BADI BBP_WF_LIST implementation

Hello,
I would like to implement a the BBP_WF_LIST BADI for confirmation (BUS2203).
Can someone explain me all the step I have to do. I never did this before and I don't know the step to do.
thanks

Hi
Implement the BADI - BBP_WF_LIST using SE18 Transaction for the filter type - BUS2203 for doing this job.
Here is the documetation of this BADI
<b>BBP_WF_LIST BADI</b>
Short Text
Display Worklists and Search Results Lists
With the Business Add-In BBP_WF_LIST , you can tailor the
display of worklists and search results lists for purchase order documents (and Sourcing applications) in SRM Server according to your own criteria.
Standard settings
The following methods are available:
BBP_WF_LIST for purchasing documents
BBP_WF_LIST_SOCO for the Sourcing application
In the standard version, the following differences exist between the display of worklists and search results lists:
Normal employees see only their own requirements and documents
The purchaser's worklist in Sourcing and in the application for processing purchase orders is dependent on assignment to an organizational unit.
The goods recipient and invoicing party can find all purchase orders, confirmations, and invoices.
As standard, the system sorts the purchasing documents in ascending order by the last date of processing.
To distinguish between the worklists and search results lists of the SRM Server applications, the BAdI is implemented dependent on the following filters:
BUS2201
Filter value for the worklist in purchase order processing in SAP Enterprise Buyer
BUS2203
Filter value for the worklist in confirmation processing in SAP Enterprise Buyer
BUS2205
Filter value for the search results list in invoice processing in SAP Enterprise Buyer
BUS2121
Filter value for the worklist in shopping cart status check in SAP Enterprise Buyer
BUS2200
Filter value for the search results list in bid invitation processing in SAP Bidding Engine
BUS2202
Filter value for the search results list in bid processing in SAP Bidding Engine
BUS2000113
Filter value for the search results list in contract processing in SAP Enterprise Buyer
Activities
Implement and activate the BAdI if you wish to adapt worklists and search results lists.
Note that the filter value Object type (field OBJECT_TYPE) determines for which application the BAdI implementation is active.
Example
Using the BadI BBP_WF_LIST you can sort the worklist by document number, for example, or remove documents belonging to a particular user from the worklist.
The implementation of the BadI using Business object type BUS2205 allows you to change the list of invoices and the purchase orders associated with these invoices independently of one another. For example, you could sort the purchase orders by purchase order number and the invoices by the name of the user who created them.
You can exclude bid invitations from a certain product category, for example, from the purchaser's search results list in SAP Bidding Engine.
You can exclude contracts from a certain purchasing organization or purchasing group, for example, from the purchaser's search results list in SAP Enterprise Buyer.
Further notes
If the BadI is used for confirmations and purchase orders, it always accesses the list of the actual document and its purchase orders.
The purchaser's worklist contains only requirements that, according to Customizing, are to be processed in the Sourcing application. See the IMG activity Define Sourcing for Product Categories.
Change Output List Purchasing Documents
Functionality
With method BBP_WF_LIST in SAP Enterprise Buyer, you can adapt the display list of the worklist for purchasing documents and search results lists according to your own criteria.
Parameters
Importing
FLT_VAL
Filter value
I_PDLIST_NEW
Entry list of worklist or the search results list and additional information
Changing
E_PDLIST
Output list of worklist or the search results list (contains only GUIDs)
<b>And Here is the sample Code for the BADI Implementation...</b>
METHOD if_ex_bbp_wf_list~bbp_wf_list.
  DATA: t_header_guids     TYPE TABLE OF bbp_guid_tab,
        t_pdlist           TYPE TABLE OF bbp_pds_pdlist,
        t_messages         TYPE TABLE OF bbp_pds_messages,
        t_sc_guids         TYPE TABLE OF bbp_guid_tab,
        t_ref_doc          TYPE TABLE OF bbps_sc_refdata,
        t_itemlist         TYPE TABLE OF bbp_pds_sc_itemlist,
        t_conf_pdlist      TYPE TABLE OF bbp_pds_pdlist.
  DATA: wa_sc_guids        TYPE bbp_guid_tab,
        wa_pdlist          TYPE bbp_pds_pdlist,
        wa_ref_doc         TYPE bbps_sc_refdata,
        wa_itemlist        TYPE bbp_pds_sc_itemlist,
        wa_conf_pdlist     TYPE bbp_pds_pdlist.
    IF sy-tcode EQ   'BBPCF02'.   
*--- First Get all the Reference documents
*--- Get all the Shopping Carts
      CALL FUNCTION 'BBP_PD_SC_GETLIST'
        TABLES
          i_header_guids = t_header_guids
          e_pdlist       = t_pdlist
          e_messages     = t_messages.
*--- Sort the SC based on SC number
      SORT t_pdlist BY object_id.
*--- Get all the Header Guids
      LOOP AT t_pdlist INTO wa_pdlist.
        wa_sc_guids-guid = wa_pdlist-guid.
        APPEND wa_sc_guids TO t_sc_guids.
      ENDLOOP.
*--- Get all the Reference Document for the Header Guids
      CALL FUNCTION 'BBP_PD_SC_REF_GETLIST'
        EXPORTING
          i_item_not_deleted = 'X'
        TABLES
          it_header_guids    = t_sc_guids
          et_refdata         = t_ref_doc
          it_logical_systems = 'R3BACKENDSYSTEM' -> Give he R/3 backend system RFC Destination name here
        EXCEPTIONS
          nothing_found      = 1
          OTHERS             = 2.
*--- Retain only the PO (Business Object 2012)
        DELETE t_ref_doc WHERE ( be_object_type NE 'BUS2012' AND
                                 be_object_type NE 'BUS2012001' ).
*--- Sort all reference documents based on be_object_id - Purchase Order numbers.
      SORT t_ref_doc BY be_object_id.
*--- Loop on all remaianing POs
*---  Use SC Guid (Header)
      LOOP AT t_ref_doc INTO wa_ref_doc.
          DELETE e_pdlist WHERE object_id = wa_ref_doc-be_object_id.
      ENDLOOP.
*--- Here make a call to the R/3 system by using your RFC Function module
*---- and update e_pdlist [] table which finally will contain all the
*--- detialed confirmations starting with Document type - "EB"
*---- based on the document type "ECDP" and "ECPO" - Add one more document type "EB" ..
*---- so when ever BBPCF02 is called in ITS it should disply the POs
*--- which are based on document types as "ECDP" "ECPO" and "EB".
    ELSEIF sy-tcode EQ 'BBPCF03'. " Display All PO/Confirmations
*--- Similar code as above
    ENDIF. "if sy-tcode eq 'BBPCF02'.
ENDMETHOD.
Hope this will help.
Please reward suitable points, incase it suits your requirements.
Regards
- Atul

Similar Messages

  • BADI - Multiple implementation

    Hi,
    I know the how the badi multiple implementation is done and how filter usage is done. But Badi is for enhancement for standard SAP so in which kind of situation it is possible. Can any one give an example where this can be implemented multiple times.
    Regards,
    Rajesh

    Here is the software delivery process
    SAP->IBU->Partener->Customer
    So the given enhancment(Badi) can be implemented in the above process chain by the parties involved.
    ALso check http://help.sap.com/saphelp_47x200/helpdata/en/c8/1978b543b111d1896f0000e8322d00/frameset.htm
    Cheers,
    Hakim

  • PMS BADI HRHAP00_DOC_STATNAME IMPLEMENTATION ASSIGNMENT IN SPRO

    Hi PMS Experts,
    I have implemented BADI "HRHAP00_DOC_STATNAME" and I wanted to know the place in SPRO where we can assign BADI "HRHAP00_DOC_STATNAME" implementation.
    Thanks and Advance.

    hi rajat,
    i have implemnted this badi ..it definitley triggers in  preparation and in planning...
    but not in process phase...
    in any case...was it the same issue..?
    mey be its because of the std functionality Note 1306218 - Review Date not defaulted
    rgds
    gayathri
    Edited by: Gayathri on Oct 6, 2009 8:48 AM

  • BADI FTR_CUSTOMER_EXTENT Implementation for Facility creation - TM_61

    Hello Experts
    I am trying to add new tab in the create facility transaction and I feel that the right BAID to do this is FTR_CUSTOMER_EXTENT. I am not able to update the new values in the screen to the database table. I check in the forum and there are many questions for the same but there is no clear answer for the same. Request your help in letting me know how this can be achieved.
    I have also checked the same Function Group FTR_CUSTOM_BADI_SAMPLE but still I am not clear as to how I can achieve this.
    Thanks in advance
    Vijay V

    Hello Claudia,
    I finally solved the problem, and I hope my solution may suite your problem.
    The bigger problem I had was pass the data from the screen to the BADI itself, so I created a function group following the FTR_CUSTOM_BADI_SAMPLE in which I developed the objects.
    Those are the steps I followed:
    I enhanced the structure VTBFHA with the custom field I needed;
    I created an implementation for the FTR_CUSTOMER_EXTENT
    in EVT_APPLICATION_START method I called a function module (copied from the FTR_CUSTOM_BADI_SAMPLE_START) in which I started the subscreen I draw in new tab. (Please note that by doing this I now have the interface if_open_trtm_customer_data always at hand). Follow the instruction of the sample code or the http://scn.sap.com/thread/1534252 thread)
    in the PBO of the subscreen I retrivied the custom data via GET_CUST_DATA of the IF_OPEN_TRTM_CUSTOMER_DATA interface and pass the data in my screen fields. In order to do that I called a function module developed in the same function group, so that the interface is ready to be used.
    in the PAI of the subcreen, once the data is entered I pass the new data via  SET_CUST_DATA of the IF_OPEN_TRTM_CUSTOMER_DATA interface, again developing a FM within the function group of the EVT_APPLICATION_START custom function module I used.
    I am sure there must be a better solution, but it owrked pretty fine for me, so I hope this my help you as well.
    Moody

  • BADI - "REDUCT_TRIP_AMOUNT" implementation is not working

    Dear all,
    While creating or changing trip data i got one badi "REDUCT_TRIP_AMOUNT".  i was implemented badi.
    Badi implementation is not working. There was hard code break point "BREAK-POINT." i was writen in badi , But is not comes in way of execution.
    Since BADI name i am getting, BADI implementation is not working..
    Let me know any config required or what...
    Regards,
    Vipul

    Hello Vipul,
    I am having the same problem, I am trying to implement the BADI ''REDUCT_TRIP_AMOUNT'' for deducting the TRIP Amount for leave days , but when I put the hardcode breakpoint , it is not stopping anywhere.
    Kindly help .
    Regards,
    Vishal Chauhan

  • BADI HRPAD00INFTY Implementation

    Hi,
    I have a query related to BADI implementation HRPAD00INFTY. We have implemented this BADI to delimit the record and create a new one of Bank details(infotype 0009). When in PA30, we copy a record whose End date is infinite i.e. 12/31/9999. After copying the record, copied record should get delimited with the end date as last changed date, as todays date. And end date of new record should get set to infinite date as above.
    New record is getting created correctly, but the delimited record's end date is not getting changed. As per analysis, when we try copying the record first time, the dates get set correctly and further not. The IN_UPDATE method of BADI is not getting called in next change sessions.
    Please advise on same or let us know for any solutions if any.
    Thanks,
    Rupali.

    Try like this
    method IF_EX_HRPAD00INFTY~BEFORE_OUTPUT.
      Data: LV_WA(20) Type C Value '(MP002100)VIEW_REPID'.
    Types: T_VIEW_REPID Type T582V-REPID.
      Field-Symbols: <FS_REPID> Type T_VIEW_REPID.
      Assign (LV_WA) To <FS_REPID>.
    endmethod.

  • BADI ME_PROCESS_PO_CUST Implementation is not called

    Hello,
    I have created a test implementation(local object) for BADI ME_PROCESS_PO_CUST and implemented the Process_Item method to compare item price with material master commercial price. I have also activated the implementation.
    When I create a PO using ME21N, this implemenation is not getting called. I have put a breakpoint in the implementation but processing doesn't stops here. Also I am not able to find 'Where used' of the BADI name or the interface 'IF_EX_ME_PROCESS_PO_CUST'.
    What are the reason for above behaviour? Do we maintain this BADI name in some Customizing Table?
    Please help.
    Regards,
    Shubham

    i did the same as you did and the code is clearly getting triggerred.
    Samle Code:
      DATA : l_header TYPE REF TO if_purchase_order_mm.
      DATA : l_conditions TYPE mmpur_tkomv.
      DATA : l_item LIKE LINE OF l_conditions.
      DATA : l_data TYPE mepoheader.
      CALL METHOD im_item->get_header
        RECEIVING
          re_header = l_header.
      CALL METHOD l_header->get_data
        RECEIVING
          re_data = l_data.
      CALL METHOD im_item->get_conditions
        IMPORTING
          ex_conditions = l_conditions.
      CALL METHOD im_item->set_conditions
        EXPORTING
          im_conditions = l_conditions.
    if i put break-point on any of these methods the implementation is getting trigerred.

  • BADI to implement add link in appraisal process

    hi,
           I want to implement  "add links" in appraisal Process, please suggest me simple way using  BADI.
           Please reply as soon as possible..
    Thanks,
    Hemant

    In appraisal a lot of changes can be made to the standard via Badis. A list of all user exit/Badi available in this functionality can be seen via PHAP_ADMIN  >Utilities menu  >Badi overview
    Hope this info can help you.
    Best Regards

  • BADI   ADDRESS_CHECK implementation

    I am trying to implement Badi ADDRESS_CHECK to validate address using regional structure .But in SE19 during implementation when i click on methods ' IS_ACTIVE_FOR_COUNTRY &  ADDRESS_POSTAL_CHECK'
    to maintain the ABAP  code..it is throwing a message like "  specify filter types  ".
    Can any one suggest me how to set filter to this BADI .
    Thanks & Regards,
    Rahul D

    On se19 screen>attributes tab>in below selection screen TYPE add an new row>and put in ISO CODE as IN>Save.

  • BADI subscreen implementation

    Hi experts
       I defined a BADI which has a subscreen. In my calling program i call followed method to call BADI
    CALL METHOD CL_EXITHANDLER=>GET_INSTANCE
          EXPORTING
              EXIT_NAME = 'MyBADI Define Name'
          CHANGING
            INSTANCE = EXIT.
      CALL METHOD CL_EXITHANDLER=>SET_INSTANCE_FOR_SUBSCREENS
        EXPORTING
          INSTANCE = EXIT.
      PROGRAM = SY-REPID.
      DYNPRO = SY-DYNNR.
      CALL METHOD CL_EXITHANDLER=>GET_PROG_AND_DYNP_FOR_SUBSCR
        EXPORTING
          EXIT_NAME       = 'MyBADI Define Name'
          CALLING_PROGRAM = PROGRAM
          CALLING_DYNPRO  = DYNPRO
          SUBSCREEN_AREA  = 'SUBSC'
        IMPORTING
          CALLED_PROGRAM  = PROGRAM
          CALLED_DYNPRO   = DYNPRO.
    In my BADI implementation I defined a program which has a sub screen and put something on the sub screen and declare the called prog and call dynpro with the program name and the screen name. When i run the calling program,the subscreen can't display. can you tell me why?
    Thanks
    BR
    Chris

    Hi, I solved the first problem by my own. Following you have to consider:
    1.) the Subscreen has to be in a function where
          a) the subscreen itself is defined
          b) a function module is defined for the method set_data. This function modul is called within the method set_data and
              receives the data from the BAdI through its import parameter. These data is mapped to the subscreen fields. The
              subscreen fields have to be defined within the top include.
          c) The same you have to do with the get_data method, just the way around. The function modul has export parameters to
              transfer the data to the BAdI. Within the module you map the subscreen fields to the export parameters.
    Still, open is how force the application to save the data entered ... but I'll figure it out ... you can bet on it!

  • VT01n,VT02n ...Need user exit or Badi to implement this code :

    Hi Experts ,
    In VT01n or VT02n transactions , when I give shipping type as 03 (VTTK-VSART) and TransportPlanPt as 4701 (VTTK-TPLST) , the additional data tab  field Suppl. 1 (VTTK-ADD01) must be filled with Z1 value automatically , Even though if the value is not given in additional data tab field Suppl 1 by the user. In which user exit or Badi shall i write my code ???
    After saving , I must get Suppl. 1 (VTTK-ADD01) as Z1 ,.
    Please suggest User exit or Badi with importing and exporting parameter's as VTTK table or any other solution to achieve this .
    Note : Table VTADD01 already has this value Z1 .
    Thanks All !!!

    There are enhancements you can make for Shipments in transaction CMOD.  Create a new project.  Then you need to add enhancement(s) to the project.  Look at the enhancements starting with V56.  I think enhancement V56USVDP will work for what you want to do.  After the enhancement(s) have been added to the project, then click on the Components button.  You will see a list of function modules.  Sometimes there is documentation available using the blue i button on the screen.  Double click the function module you want to change.  There is also documentation available in the function module sometimes.  Double click the Z include in the function module.  You will have to create the include.  Then you can make the necessary changes in the Z include.  After you have made your code changes, you have to go back to the component screen and activate the enhancement component.  The activate function is in the menu under the project menu.
    Hope it helps,
    Brian

  • Enhanced exits and Badi's implemented in VA01

    Hi,
    I am working on a support project and wants to check the user exits and BADI's which have been enhanced for VA01 Transaction in my project specifically. Please let me know how can I check the same.
    Regards,
    Naveen

    Hi,
    I am working on a support project and wants to check the user exits and BADI's which have been enhanced for VA01 Transaction in my project specifically. Please let me know how can I check the same.
    Regards,
    Naveen

  • PO under Confirm Goods Receipt/Services Performed

    Hi Gurus,
    We are currently under SRM5.0 using classic scenario. Last year we had our technical upgrade from SP4 to SP12.
    The scenario is that a requestor did the PO confirmation per line item level and has been approved and posted backend. However, he can still view the PO under Confirm Goods Receipt/Services Performed screen. He then tried to create another confirmation but this time warning message "PO XXXXXX contains no items for confirmation" occured while creating confirmation.
    Before the upgrade, requestor is claiming that once confirmation has been approved, they will no longer see the PO under Confirm Goods Receipt/Services Performed screen since no more action is required on their part.
    Kindly advise if the behaviour is due to the recent upgrade from SP4 to SP12.
    Thanks.
    Jho Sotoya

    Hello Joanna Marie,
    Some points to check (if not done):
    - is method BBP_WF_LIST from BAdI BBP_WF_LIST implemented ?
    - are PO items concerned have flag "No further confirmations expected" set or not (i think it is set because you have pop-up error message),
    -  is parameter 'Delivery Completed Ind. not set' unset for report BBP_GET_STATUS_2 ?
    Regards.
    Laurent.

  • Knowledge documents in the SRM SDN Wiki

    Dear Contributors,
    You are invited to visit our new [SRM SDN Wiki|http://wiki.sdn.sap.com/wiki/x/nhY|Click here to open the SRM SDN Wiki].
    There you find knowledge documents and answers for frequent upcoming questions around SRM in a structured form.
    Are you top contributor and do you answer the same questions in the forum again and again?
    Share your knowledge in the SRM SDN Wiki by creating a new page, and you just need to reference it next time by answering questions.
    Best Regards
    The community team

    Hi
    <u>Welcome to World of SRM !!!</u>
    Which SRM version are you using ?
    <b>Please go through the following links for more details and sample code as well.</b>
    <u>Re: Problem in badi for sourcing worklist 'BBP_WF_LIST'
    Re: How to prohibit Good Recept
    Re: BADI BBP_WF_LIST implementation
    Re: Confirm Goods / Services Centrally - BBPCF03
    Re: Confirmation
    Re: Worklist for confirm goods using BBPCF02
    Let me know incase you face any issues.
    Regards
    - Atul

  • Limiting POs from backend system for Confirmations

    We have activated the ALE model for Confirming Goods Receipt from backend POs.  I know that I can use BADI BBP_WF_LIST to filter the POs displayed in the Create/Display Confirmation transaction.  However I would like to limit the POs that are sent from the backend system to EBP by document number range.  This should prevent cluttering the EBP system with junk POs.  Is this possible?
    Thanks,
    Nancy

    Hi
    <b>Please go through the links below, which deal with the same issue -></b>
    BADI BBP_WF_LIST implementation
    Re: Is it the right BADI
    Get PO details from backend
    Filtering content in the SRM confirmation worklist
    Re: Worklist for confirm goods using BBPCF02
    Problem in badi for sourcing worklist 'BBP_WF_LIST'
    Re: Confirm Goods / Services Centrally - BBPCF03
    Using BADi's BBP_PGRP_FIND  and BBP_WF_LIST  for Sourcing
    Hope this will help.
    Do let me know.
    Regards
    - Atul

Maybe you are looking for

  • COMPUTE_BCD_OVERFLOW Runtime Error in 'Z' Program

    Hi Gurus, In one of my report, i am getting this error: Run Time Error: Compute_BCD_Overflow Exception              CX_SY_ARITHMETIC_OVERFLOW Short text     Overflow during the arithmetical operation (type P) in program Error analysis     An exceptio

  • OWB 11g Repository Assistant -  Error occured in 'processSPAWN'

    Hello, I tried to create OWB 11g workspace on Oracle 11.1.0.6, but repository Assistant fails every time on the same step. If I run the last command manually ('wholeLine') it works fine. ... I am in processSPAWN ... wholeLine =../unix/jvm.sh -classpa

  • How to call a stored procedure from a trigger

    Hi, Can anyone please send me sample SQL code to invoke a stored procedure inside a trigger? Thanks and Regards, Prince

  • Styling command link inside a panel List

    Hi All, I have the following layout: PanelBox --panelList -- CommandLink I would like to style the command link under the panel List component. I have tried skinning the command Link component individually as well as applying styling to panel List co

  • AS3 - Accesing dynamic MC

    Hello, From a Thread in this forum, I learned to create dynamic MC like this: for (var i:int=0; i<5; i++) { var mc:MovieClip = new MovieClip(); mc.name = "thumb_"+i; mc.myNumber = i * i; this.addChild(mc); trace(mc.name+", "+mc.myNumber); results: th