cancel
Showing results for 
Search instead for 
Did you mean: 

Plan driven procurement in Classic Scenario

Former Member
0 Kudos

Hello Experts,

We are using Classic scenario (SRM7.0/ECC6.0) but No Ehp 4.

My target is to bring external requrement from ECC into SRM Sourcing cockpit. I went through configuration guides for Plan driven procurement and noticed that it is supported only in Extended classic scenario....is it true? I think the requirement will still come to SRM cockpit but it will create a local PO in SRM...Am I right?

Can I not have the same functionality in Classic scenario by means of any BADI or customisation?

Do give suggestions.

Best Regards,

John

Accepted Solutions (1)

Accepted Solutions (1)

ricardo_cavedini
Active Contributor
0 Kudos

Hello,

Plan driven procurement would be valid only in Extended Classic Scenario, according documentation:

http://help.sap.com/saphelp_srm40/helpdata/en/8d/f6a93e08503614e10000000a114084/frameset.htm

Perhaps you would be able to handle with both scenarios using badi BBP_EXTLOCALPO_BADI.

Regards,

Ricardo

Former Member
0 Kudos

Hi Ricardo,

Plan driven procurement is also supported in classic mode. In SRM7, service procurement classic scenario is launched where the service with hierarchy requirement has been transferred to SRM sourcing. Once the source of supply is identified, the follow-on document like contract or PO is created back in ECC system.

For material or non hierarchy service scenario, I guess the restriction mentioned by you still holds true.

Thanks and regards,

Ranjan

Answers (2)

Answers (2)

Former Member
0 Kudos

DearJohn;

We are also using SRM 7, classic scenario. Plan driven from Third Party Sales order.

In plan driven scenario, you can transfer requirments from ECC6 to sourcing in SRM. In ECC6, You have to schedule or execute manually this program.

BBP_REQREQ_TRANSFER. This will read from table EPRTRANS the relevant requirments.

Hope this will work for you

former_member184111
Active Contributor
0 Kudos

Hi,

You can use PDP in Classic scenario. For creating BE POs youneed to implement the three BADIs:

1. Determination of system for the creation of purchase order --> DETERMINE_LOGSYS_BADI

2. Determine target object in the Backend ECC system --> DETERMINE_TARGET_OBJECTS

3. Creation of PO  -->BBP_CREATE_PO_BACK

Regards,

Anubhav

Former Member
0 Kudos

Thank you all of you for your replies,

I am now confused between Anubhav and Ricardo's reply. Which BADI to use exactly?... Can you share some insight into these BADIs so that I can explain it to my ABAP programmers in the team? Some standard code etc?

Best Regards,

John

former_member184111
Active Contributor
0 Kudos

Hi John,

Documentation for BADI BBP_EXTLOCALPO_BADI is ...

You can use the Business Add-In BBP_EXTLOCALPO_BADI to override settings in the Extended Classic Scenario.

Example

a)

You do not want to use the extended classic scenario for product category A-1002. In the BAdI implementation, you set the indicator for this product category to inactive. Even though the extended classic scenario is active, Enterprise Buyer creates all follow-on documents including purchase orders in the backend system (classic scenario) for shopping cart items with product category A-1002. --> Since you are using Classis scenario this is not relevant

b)

You only want to use the extended classic scenario for purchase orders with purchasing organization ABC and transaction type XYZ. -->This is relevant in case you want to create LOCAL POs for BIDs in Classic Scenario..is that the case?

We are using PDP in classic scenario and craeting BE PO for bids. The BADI BBP_EXTLOCALPO_BADI is not implemented.

You can check the three BADIs I mentioned earlier...with one change

3. Creation of PO -->BBP_CREATE_PO_BACK

Is obsolete use BBP_CREATE_BE_PO_NEW

Thanks,

Anubhav

Former Member
0 Kudos

Hi Anubhav,

Thank you for the clairification. So do I need to implement all 3 BADIs that you have mentioned? If possible can you share sample codes also?

Best Regards,

John

former_member184111
Active Contributor
0 Kudos

Hi John,

Below mentioned is the code we are using:

1. BBP_DETERMINE_LOGSYS Method DETERMINE_LOGSYS

 
  data : l_yes(1) type c value 'X',
         l_sys  type bbp_backend_dest-sys_type.
  data : lw_item_data type bbps_detlogsys_item.
  data : lw_backend type bbp_backend_dest-log_sys.


  constants: c_r3 type string value 'R/3_4.70'.

  field-symbols: <ls_item_data> type bbps_detlogsys_item.

  read table item_data into lw_item_data index 1.
  if sy-subrc = 0 and lw_item_data-line is not initial.

    select log_sys into lw_backend from bbp_backend_dest up to 1 rows
                                      where rfc_poss = l_yes and sys_type = c_r3.
    endselect.

   endif.

  loop at item_data assigning <ls_item_data> where line is not initial.
    <ls_item_data>-logical_system = lw_backend.
  endloop.

2. BBP_TARGET_OBJECTS Method DETERMINE_TARGET_OBJECTS


  constants: c_2       type char1             value '2',        "Req
             c_3       type char1             value '3',        "PO
             c_1       type char1             value '1'.        "Reservation

  data: ls_item type bbp_bapipogn_eci,
        ls_account type bbps_cuf_acc.

       
     loop at item_data into ls_item .
    read table it_cuf_acc into ls_account with key ref_value1 = ls_item-preq_item.
* Create PO for Bidding else Create PR...no reservations
    if ls_item-mat_grp = 'XXXXXXXXXX' 
      ls_item-obj_to_gen = c_3.
    else.
      ls_item-obj_to_gen = c_2.
    endif.
    modify item_data from ls_item transporting obj_to_gen.

  endloop.

3. BBP_CREATE_BE_PO_NEW Method FILL_PO_INTERFACE1

data: ls_item        type bbps_badi_po_item_1.
read table cs_po1_document-it_poitem into ls_item index 1. 
  if sy-subrc = 0 and ls_item-matl_group = 'XXXXXXXXXXX'.     
    cs_po1_document-is_poheader-created_by = 'RFC_USER'.<--Your RFC User
    cs_po1_document-is_poheader-doc_type   = 'XXXX'.<---Doc type you are using

    loop at cs_po1_document-it_poitem into ls_item.
      if ls_item is not initial.
        ls_item-acctasscat = ''.
        ls_item-info_rec = ''.
        modify cs_po1_document-it_poitem from ls_item.
      endif.
    endloop.
endif.

Thanks,

Anubhav

Former Member
0 Kudos

Thank you very much Anubhav.

I will get back once my setup is complete. I am facing another issue for which I have raised this thread

Please share your views and do suggest something.

Best Regards,

John

Edited by: SRM_query on Jul 22, 2011 1:32 PM