BBP_PROCDOC_GETDETAIL

Hi Experts,
In my program BBP_PROCDOC_GETDETAIL is used. here it is considering only apporved cart , but i need the unapporved carts also .. what is the FM i have to use instead of this FM.
Regards,
Bharani

Hi,
If you want to get the list of all SC's which are waiting for approval/unapprved,you can use the FM "BBP_PD_SC_GETLIST.".
To get details of SC,you can use either the FM BBP_PROCDOC_GETDETAIL or BBP_PD_SC_GETDETAIL.
Also see these threads for more pointers:
Re: How to filter OPEN SC's with BBP_PD_SC_GETLIST
Re: Function Module's for Shopping Cart.
BR,
Disha.

Similar Messages

  • Realign partially confirmed/invoiced po from termed emp to successor

    Currently i am implementing the BADI bbp_list_open_bo and in that the method update_po_requestor.
    In the method first i m using BBP_PROCDOC_GETDETAIL to retrieve header and item info
    CALL FUNCTION 'BBP_PROCDOC_GETDETAIL'
    EXPORTING
          I_GUID                             = WA_TRANS_PO-GUID
          I_OBJECT_ID                  =  WA_TRANS_PO-OBJECT_ID
          I_OBJECT_TYPE            =  ‘BUS2121’
    IMPORTING
         E_HEADER                      = ST_HEADER
    TABLES
               E_ITEM                            = IT_ITEMS
               E_MESSAGES                = IT_MESSAGES.
               E_PARTNER                  =  IT_PARTNER
    after making a few modifications in it_items on the basis of it_partner (assigning partner id new values) i m calling
    CALL FUNCTION 'BBP_PROCDOC_UPDATE'
         EXPORTING
             I_SAVE                   = ‘X’
             I_HEADER              = ST_HEADER
         IMPORTING
             ES_HEADER        = ST_HEADER_I
         TABLES
             I_ITEM                  = IT_ITEM
             I_PARTNER         = IT_PARTNER
             E_MESSAGES    = IT_MESSAGES
         CHANGING
             E_CHANGED      =  flag.
    to save the changes made to selected PO s .
    When i run the report bbp_list_open_bo and click on "update"
    the program runs into dump and gives the message (buffer table not upto date) . Am i doing something wrong or is there a problem with the standard SAP program.

    not save.. i meant update.
    to save i would be using bbp_procdoc_save and then BBP_PROCDOC_RESET_BUFFER

  • In DOC CHECK BADI: Check if PO has a SC when coming from a BID

    Hi Experts,
    Please consider this situation and recommend best possible approach.
    From Sourcing, I raise a BID and then create a PO from the BID.
    While PO creation, I need to check if this PO had SC and if so include the SC requestor in the approval if the price has increased while Bidding when compared the created SC.
    Here I am facing a challenge - When executing the DOC CHECK BADI, the FM: BBP_PROCDOC_GETDETAIL does not result any HEADER_REL itab values that shows any history details of the PO document. Whereas by the time the logic moves to the Workflow BADI, this same FM returns values (SC and other details).
    My Query: While creating from a BID, How can I check if this PO is generating out of a SC in the DOC CHECK BADI.
    Thanks in advance.
    Vj

    Hello Asha,
    You can check this BADI "BBP_ITEM_CHECK_BADI" and this badi is called when
    u2022     a new item has been created,
    u2022     an item has been changed or the document is to be checked
    Regards
    Sameer

  • How to know file properties from a URL?

    Hi experts,
    I'm trying to use a function to know some properties from a file. The only information I have is its URL and I need to know the file name, file size, nime type...
    I used the "BBP_ATTACH_CONTENT_WEBGET" function, but I didn't receive that information
    Anyone can help me? Anyone knows what function can I use or what can I do?
    I'm using SRM 7.0
    Thanks in advance
    Edited by: Carlos Serrano Rodrigo on Jul 27, 2011 8:45 AM

    The question is... How to get the details/properties of a file which I only have the URL (I don't have its GID). Probably, you are right, this post should be in another forum. I'm working in SRM, so I thought this was the right forum.
    I tried to use BBP_PROCDOC_GETDETAIL (previously I got the GID whith BBP_ATTACH_METH_READ_PROP_MULT function), but this is not an attachment to a procurement document. So, I hadn't receive anything.
    Thank you for your response, I'll try to post in diferent forum.
    Regards

  • SRM PO Adobe Form

    Hello Frn's.
    I  am creating a z Adobe by copying a exisitng PO Adobe form (bbp_po_adb) .
    Beacuse i need some more fileds calculation, so have to  create a Z interface as well by copying a existing interface (if_bbp_po_adb). But then i need to implement a BADI name DOC_PERSONALIZE_BCS (Method  PERSONALIZE_PDF_DOC_PDFIF) with some filter value .
    But i got stuck in implemenitng BADI ....So request  you to please resolve the issue.
    Thanks and Regards ....
    Priyank Dixit

    Hi Priyank,
    Maybe this suggestion might help.
    In order to change the preview smartform based on certain conditions/parameters, there is a BADI                
    "BBP_OUTPUT_CHANGE_SF" which needs to be implemented. In your                    
    scenario, please implement this BADI and change the smartform name               
    based on the header process_type.                                                                               
    for example, in the BADI first call                                                                               
    call function 'BBP_PROCDOC_GETDETAIL'                                          
        exporting                                                                    
          i_guid   = iv_PO_guid                                                     
        importing                                                                    
          e_header = ls_header.                                                                               
    then check for ls_header-PROCESS_TYPE, if it is PO, then change the            
    smartform name to the one which you require.                                                                               
    Hope this helps,
    Kind Regards,
    Matthew

  • Close PO's with status Transction complete programatically

    Hi all,
    We are on SRM 5.0..I need to programatically close some PO's in the system which are in status "Transaction complete".Is there any std FM which can be used to close such PO's?
    Thanks!

    Hi
    Try these two FMs BBP_PROCDOC_GETDETAIL,  BBP_PROCDOC_UPDATE  and BBP_PROCDOC_STATUS_CHANGE
    Regards
    Virender Singh

  • Which field carries the "reson for rejection" text to the smartforms?

    Hi All,
    In the portal if the user returns an item then he needs to give the reason for the rejection/return..
    Can anybody tell me which field carries this data (Reason for rejection) to the smartform..
    The field reason_code in the structure bbp_pds_conf_header_d does not get the details..
    Even in the line item structure there is no such field..
    Please help..
    Thanx in advance..

    Call BBP_PROCDOC_GETDETAIL with document GUID, get the return table E_LONGTEXT and have a look at those entries with TDID = "IREJ".

  • Bid Invitation search: Buffer table not up to date

    When we try to click our bid invitation we encounter BUffer table not up to date error, we are using SRM5.0
    we have run /$sync and /$tab to clear buffer
    but still got the following error:
    Note
    The following error text was processed in the system SRP : Buffer table not up to date
    The error occurred on the application server alisrpr4_SRP_03 and in the work process 1 .
    The termination type was: RABAX_STATE
    The ABAP call stack was:
    Function: BBP_PD_ABORT of program SAPLBBP_PDH
    Function: BBP_PDLINK_GET of program SAPLBBP_PDLINK_OW
    Function: BBP_PDORG_GETDETAIL of program SAPLBBP_PDORG
    Form: PROCDOC_GETDETAIL of program SAPLBBP_PD
    Function: BBP_PROCDOC_GETDETAIL of program SAPLBBP_PD
    Function: BBP_PD_BID_GETDETAIL of program SAPLBBP_PD_BID
    Form: BID_HEADER_ITEM_VIEW of program SAPLBBP_BID_INV
    Form: BID_GETDETAIL of program SAPLBBP_BID_INV
    Form: GETDETAIL_AND_FILL of program SAPLBBP_BID_INV
    Function: BBP_BID_PROCESS of program SAPLBBP_BID_INV
    What can I do?
    If the termination type was RABAX_STATE, then you can find more information on the cause of the termination in the system SRP in transaction ST22.
    If the termination type was ABORT_MESSAGE_STATE, then you can find more information on the cause of the termination on the application server alisrpr4_SRP_03 in transaction SM21.
    If the termination type was ERROR_MESSAGE_STATE, then you can search for more information in the trace file for the work process 1 in transaction ST11 on the application server alisrpr4_SRP_03 . In some situations, you may also need to analyze the trace files of other work processes.
    If you do not yet have a user ID, contact your system administrator.
    Hope you can assist us, thanks

    Hi, cheann
    It's not difficult to set breakpoint, here it is.
    First logon with reproduce user to GUI, go to tr:SE37, put FM name and display.
    Now push "ctrlshiftF9" at the same time, external breakpoint will be set, there is one message saying, external point has been set for user:XXXXX. make sure this then repeat the application to analyze by yourself. BP will stop.
    If you have multiple server, execute as below.
    in tr:SM51, Select the correct server push"ctrlshiftf8", now jump into this server and set breakpoint here,(it's
    the same as above)
    Hope this information is helpful for you to go ahead.
    Regards
    Lauren

  • Two internal tables are neither compatible nor convertible.

    Hi,
    I am having an internal table which is of type table of my own structure.I need to copy the table(containing my structure) to a table of ABAP TYPE TABLE.It is
    showing the dump "Two internal tables are neither compatible nor convertible. "
    I have triede with MOVE statement,APPEND stmt and even using "=".Can anyone help me on this?
    Regards,
    Rohini.M

    Hi,
    I have given my code below.
    DATA: ls_header TYPE bbp_pds_header,
           lt_faud TYPE TABLE OF /sappssrm/faud,
           ls_syn_swt TYPE /sappssrm/s_synops_audit_data,
           lt_syn_audit TYPE STANDARD TABLE OF /sappssrm/s_synops_audit_data,
           ls_faud TYPE /sappssrm/faud.
    IF iv_flt_bus_obj_type = 'BUS2200'
    AND iv_flt_table_type = 'THGPF'.
        CALL FUNCTION 'BBP_PROCDOC_GETDETAIL'
          EXPORTING
            i_guid   = iv_parent
          IMPORTING
            e_header = ls_header.
        SELECT * FROM /sappssrm/faud INTO TABLE lt_faud WHERE businessobject = 'BUS2200' AND sapdocnum = ls_header-object_id.
        LOOP AT lt_faud  INTO ls_faud.
          MOVE-CORRESPONDING ls_faud TO ls_syn_swt.
          APPEND ls_syn_swt TO lt_syn_audit.
        ENDLOOP.
    ****Here I need to assign my lt_syn_audit table to my changing parameter ct_extension_table which is of generic type TABLE"***************************
    endif.
    I am using a BAdI "/SAPSRM/BDI_PDO_TE_OUTBOUND"
    Thanks and Regards,
    Rohini.M

  • BBP_WFL_SECUR_BADI triggered twice

    Hi Gurus,
    I am using BADI BBP_WFL_SECUR_BADI to retrigger workflow when user make changes to certain fields in the shopping cart. First I check SCENARIO is initial, then I use function BBP_PD_SC_GETDETAIL to get screen values, then I called function BBP_PROCDOC_RESET_DB_BUFFER_SG to reset database buffer before calling function BBP_PROCDOC_GETDETAIL to get database values.
    I compared values on screen verses values in database and then set NEW_SEC_LEVEL = 2 if retrigger is necessary. Everything works fine except this BADI is triggered twice, once before save and once after save. Second call is made after screen values are committed to the database. So this make my screen value and database value the same when the BADI is triggered for a second time. So approval is never retrigger since there is no difference.
    Appreciate any advice or help, thanks.

    Hi,
       I think this  BADI should work for PO also.Pls read the doc again and there you can see the scenario for  PO is also covered wherein the BAdI is called each time the shopping cart screen is opened and whenever a purchase order is ordered and held.
    For more information, also see the SAP Note 502952.
      But this will not work for BIDS/AUCTIONS.
    BR,
    Disha.
    Pls reward points for helpful answers.

  • Materials from CATALOG- PRICE_ORIGIN

    Hi,
    We need to know where to maintain  price_origin field wich controls, in our case, wether a material price can be modified or not when creating a sc.
    We've debuged the sc creation process and found out that for some materials
    ET_ITEM[]-PRICE_ORIGIN = F (in LBBP_SC_APPF92) and these materials are suposed to come from catalog but haven't found this value in Material Master in R/3 or SRM. Also tried debugging with the following stack call:
    But at the end it seems that item data comes from memory.
    FORM     ITEMLIST_F_MULTI_GETDETAIL     SAPLBBP_PDIAD
    FUNCTION     BBP_ITEMLIST_MULTI_GETDETAIL     SAPLBBP_PDIAD
    FORM     PROCDOC_GETDETAIL     SAPLBBP_PD
    FUNCTION     BBP_PROCDOC_GETDETAIL     SAPLBBP_PD
    FUNCTION     BBP_PD_SC_GETDETAIL     SAPLBBP_PD_SC
    METHOD     IF_EX_BBP_DOC_CHECK_BADI~BBP_DOC_CHECK     ZCL_IM__BBP_DOC_CHK_BADI======CP
    METHOD     IF_EX_BBP_DOC_CHECK_BADI~BBP_DOC_CHECK     CL_EX_BBP_DOC_CHECK_BADI======CP
    FORM     DOC_CHECK_BADI_CALL     SAPLBBP_PD
    FORM     PROCDOC_CROSS_CHECKS     SAPLBBP_PD
    FORM     PROCDOC_UPDATE     SAPLBBP_PD
    FUNCTION     BBP_PROCDOC_UPDATE     SAPLBBP_PD
    FUNCTION     BBP_PD_SC_UPDATE     SAPLBBP_PD_SC
    FORM     SC_UPDATE     SAPLBBP_SC_APP
    FORM     SC_ITEMS_UPDATE     SAPLBBP_SC_APP
    FUNCTION     BBP_SC_APP_EVENT_DISPATCHER     SAPLBBP_SC_APP
    FORM     APP_EVENT_HANDLER     SAPLBBP_SC_UI_ITS
    FORM     SC_EVENT_DISPATCHER     SAPLBBP_SC_UI_ITS
    MODULE (PAI)     SC_EVENT_DISPATCHER     SAPLBBP_SC_UI_ITS
    So we'd like to know How SRM determines that a given Material comes from catalog.
    Best Regards

    Hi
    <u>To know whether a Item comes from  a catalog or not : -</u>
    (To know How SRM determines that a given Material comes from catalog.)
    <b>Here is a simple way -</b>
    <b>Implement BBP_DOC_CHANGE_BADI using SE19 Transaction for filter type BUS2121 (shopping cart).</b>
    <u><b>For method BBP_SC_CHANGE, inside ET_ITEM[] table of this BADI
    incase the catalog item is having fields populated with values for
    CATALOG_ID / CATALOG_DESCPRIPTION (Then it is a catalog item) - Otherwise, the item is a free-text item.</b></u>
    <u>In <b>BBP_PD</b> transaction, once you see this shopping cart after ordering or held the shopping cart, you will get the required details.</u>
    Hope this will definitely help.
    Do let me know.
    Regards
    - Atul

  • Price refresh for new Shopping Cart created from a model

    I'm looking for a solution for the following problem.
    When i create a shopping cart from a model that has been previously created with a certain price, i'd like the system to update this price if it has been updated between model creation time and new shopping cart creation time from this model. (Whatever price it is catalog, material master price etc...)
    If i check the new SC created from the model with function module BBP_PROCDOC_GETDETAIL and my SC number, i see that table E_PRIDOC is fullfilled like this
                                                                                    COND COND_RATE             COND_ COND_P CON D C C GUID                             CON CON COND_VALUE            COND_
                                                                                    0100               106,53  EUR       1  PC    Y   90CA85CDA91B254DB35E750519F3975D 001 001             2.556,72  EUR 
    01PB             2.532,72  EUR       1  CRN       90CA85CDA91B254DB35E750519F3975D 050 001             2.532,72  EUR 
                      2.532,72  EUR       1  CRN       90CA85CDA91B254DB35E750519F3975D 100 001             2.532,72  EUR 
                          0,00  EUR       1  CRN       90CA85CDA91B254DB35E750519F3975D 200 001                 0,00  EUR 
                      2.532,72  EUR       1  CRN       90CA85CDA91B254DB35E750519F3975D 300 001             2.532,72  EUR 
    condition type 0100 is inactive (with the new correct price) and condition type 01PB (manual condition) is used with SC model price and makes that 0100 is inactive.
    How to get 0100 condition type active instead of 01PB when creating Shopping cart from models ?
    Any ideas are welcome.
    PE HAMON

    Supplier Relationship Management Implementation Guide (IMG): SRM Server ® Cross-Application Basic Settings ® Pricing ®
    ·        General Configuration Parameters
    ·        Process Condition Types
    - Maintain condition type 0100 here if not maintained
    ·        Process Calculation Schema -
    In process calculation schema make 0100 condition type as default or assign 0100 to the calculation schema
    ·        Process Condition Groups
    Go through this steps and you will be able to figure out.
    For more information you can log on to this URL
    http://help.sap.com/saphelp_srm50/helpdata/en/67/c3833cfa3dbc2ce10000000a114027/frameset.htm
    Please assign points if you find the answer usefull
    Thanks
    Sunny

  • Help  on  shopping  cart  line  items

    Hi,
    i  am    working  on  srm  ,  i  has  to  display error message  if items of different types are in SRM-shopping cart,
    the  details  in  technical  spec  is  as  below ,
    1.     Implement the BADI BBP_DOC_CHECK_BADI.
    2.     Create a custom table ZSRM_WGR_SORTEN and also create a table maintenance generator for it and maintain the entries in it.
    3.     The specification for the custom table is given in section 3.1.1
    4.     We need to populate an error message if the SC has line items of different types
    5.     The logic for this is given in section 3.1.3. We have the header data in ls_header based on which we will get the Shopping Cart data via FM u201CBBP_PROCDOC_GETDETAILu201D.
    6.     Then looping through item data we will process our logic to check if the SC line items are of same type or not.
    7.     If the line items are of different type, we need to populate the error message u201CThe item &1 has the same type as item &2u201D
    8.     A separate message class has been defined for it by the name ZSRM
    The check occurs in CHECK-BADI. The steps to be executed are:
         Read the shopping cart items
         Run all items:
         Determine and note the product categories-ID and process-ID (using item data, process-ID is a customer field,  see     CD 2553_E_1_procurement_010 for process-ID) of an item in an internal table.
         If 1st item: continue, otherwise: check, whether same product category and process-ID are noted already. If no: is the combination of WGR_ID_ADD and PROCID_ADD as per table ZSRM_WGR_SORTEN is allowed: If no: Display an error message
    i am  doing  coding  as  below ,
      CALL FUNCTION BBP_PROCDOC_GETDETAIL
        EXPORTING
          i_guid     = iv_doc_guid
        IMPORTING
          e_header   = ls_header
        TABLES
          e_item     = lt_item
          e_account  = lt_account
          e_limit    = lt_limit
          e_partner  = lt_partner
          e_orgdata  = lt_orgdata
          e_messages = lt_in_messages.
    The item data then exists in lt_item (incl. process- IDs of the items), using which it can be iterated with the LOOP command:
    LOOP AT lt_item INTO ls_item WHERE del_ind EQ space.
    what  will  be  code  here  , please  guide
    ENDLOOP.
    and  also  how  to  handle  message ,  i  am  doing  coding  as  below,
      DATA: ls_message         TYPE bbp_smessages_badi.
            ls_message-msgno   = '002'. //Meldungsnummer
            ls_message-msgty   = 'E'.
            ls_message-msgid   = 'ZSRM'.
            ls_message-msgv1   = ls_item-number_int.
            ls_message-msgv2   = <Pos.Nummer mit schon vorhandener Sorte>
        what  will  be  code  here  , please  guide
            APPEND ls_message TO et_messages.

    Hi. To get the SC number on the backend PO you must be using a BADI, probably either BBP_DOC_CHANGE_BADI or BBP_CREATE_BE_PO_NEW or BBP_CREATE_PO_BACK.
    Look in these BADIs, the cart data is probably not being looped around correctly.
    Regards,
    Dave.

  • Update an attribute's Min. & Max. Attribute value after opening date

    Hi
    We have created an attribute 'projected price' on a bid invitation. The minimum and maximum attribute values will only be known after all bids have been submitted. So we need to populate the minimum and maximum attribute values after the opening date before running the evaluation report. Any assistance on how we could do this will be appreciatted.
    Regards

    I've managed to solve this by doing the following.
    <b>1) Get the items on the Bid Invitation</b>
    CALL FUNCTION 'BBP_PROCDOC_GETDETAIL'
    EXPORTING
       I_GUID                        = ip_guid
       I_OBJECT_TYPE                 = 'BUS2200'
    IMPORTING
       E_HEADER                      = ls_header
       ET_ATTACH                     = lt_attach
       ET_CONDITIONS                 = lt_conditions
       ET_DYN_ATTR                   = lt_dyn_attr
    TABLES
       E_ITEM                        = rt_items.
    <b>2) Get all the weightings for these items.</b>
      CALL FUNCTION 'BBP_PDWGT_GETDETAIL'
        EXPORTING
          i_p_guid            = ip_guid
          i_p_kind            = 'B'
          i_object_type       = 'BUS2200001'
        tables
          e_weight            = rt_weights.
    <b>3) Then updated the specific attributes values.</b>
      DATA: lt_x_weight TYPE bbpt_pds_weight_ic,
            ls_weight TYPE bbp_pds_weight_ic,
            lt_y_weight TYPE bbpt_pds_weight_ic.
      CLEAR ls_weight.
      SELECT SINGLE * INTO CORRESPONDING FIELDS OF ls_weight
        FROM bbp_pdwgt WHERE guid = ip_guid.
      IF sy-subrc NE 0.
        EXIT.
      ENDIF.
      APPEND ls_weight TO lt_y_weight.
      ls_weight-value_amount1 = ip_min.
      ls_weight-value_amount2 = ip_max.
      ls_weight-kz            = 'U'.
      APPEND ls_weight TO lt_x_weight.
      CALL FUNCTION 'BBP_PDWGT_DB_UPDATE'
        TABLES
          i_x_weight = lt_x_weight
          i_y_weight = lt_y_weight.
      IF sy-subrc EQ 0.
        COMMIT WORK.
      ENDIF.
    Regards

  • To assign smartform for bid invetation to transaction type of BidInvitation

    Hi friends!
    Could you tell me if it is possible assign output format(BBP_BID_INVITATION) for bid invetation to transaction type of Bid Invitation?
    Thanks.

    Hi,
    You need to implement the BADI  BBP_OUTPUT_CHANGE_SF
    There you can implement the logic that you need for your business process, for example:
    You have different transaction types for BID INVITATION (ZXX1, ZYY1, ZWW1) and you want to use different smartforms for each one, then you need
    1. Create the different smartforms with the transaction SMARTFORMS (for the bid invitation you can make a copy from the standar smartform BBP_BID_INVITATION which includes the structures and tables for the bid invitation then you don´t need to create a complete smartform)
    2. Implement the BADI BBP_OUTPUT_CHANGE_SF with the transaction se18 or se19 or SPRO --> Supplier Relationship Management --> Cross aplication Basic Data --> Business Ad Ins (BadIs) --> Document Output --> Change Forms for document Output.
    there you need to implement your own Ligic, use the method and parameters as i mention below.
    Method: CHANGE_FORMS
    Parameter: CV_SMARTFORM
    Parameter: CV_SMARTFORM_MAIL
    Parameter:CV_SUBJECT_MAIL
    Code Example:
    DATA: wa_header_bid     TYPE          bbp_pds_header.
    For getting the document
      CALL FUNCTION 'BBP_PROCDOC_GETDETAIL'
        EXPORTING
          i_guid         = iv_guid
        i_object_id    =
          i_object_type  = iv_object_type
        IMPORTING
          e_header       = wa_header_bid.
      IF iv_object_type = 'BUS2200'   Bus for the Bid Invitation
      IF wa_header_bid-process_type = 'ZXX1'.
           cv_smartform = 'smartform name 1'.
           cv_smartform_mail = 'text body for the email 1'.
           cv_subject_mail = 'text subject for the mail 1'.
       ELSEIF wa_header_bid-process_type = 'ZYY1'.
                      cv_smartform = 'smartform name 2'.
                      cv_smartform_mail = 'text body for the email 2'.
                      cv_subject_mail = 'text subject for the mail 2'.
                ELSEIF wa_header_bid-process_type = 'ZWW1'.
                         cv_smartform = 'smartform name 3'.
                         cv_smartform_mail = 'text body for the email 3'.
                         cv_subject_mail = 'text subject for the mail 3'.
        ENDIF.
    ENDIF.
    That's all

Maybe you are looking for