Requirement:

Requires below filter on BUPA (Business Partner):

Filter Criteria: (BUPA_MAIN) Business Partner with role Prospects should not be replicated from CRM to ECC.

As-is-process:

Presently, there are no restrictions on business partner replication from CRM to ECC. Thus, as stated above, the filter need to apply while replication of BP from CRM to ECC, so that Prospect replication should be restricted.

To-be-process:

In the new environment only BP that are not prospect should be replicated from CRM to ECC.

Solution:

To achieve this requirement we have different approach available, In this document I explained solution no. 2 as an alternative solution to achieve the above requirement, SAP Note: 1834681 also available to solve the requirement as I mentioned below:


1. SAP Note 1834681 – How to set filter for BP upload from CRM to ECC.

    SAP Note: 650569 – Deleting publications for several clients that are in use.


2. Create a custom FM via copying standard FM BUPA_MWX_BDOC_BPS_FILL_CENTRAL and replace your custom FM      ZBUPA_MWX_BDOC_BPS_FILL_CENTRA with BUPA_MWX_BDOC_BPS_FILL_CENTRAL in transaction CRMC_BUT_CALL_FU .

Development Steps:

Please find below steps to achieve this requirement:

Step 1: Go to Tcode crmc_but_call_fu:


/wp-content/uploads/2015/02/1_651065.png



Step 2: Goto tcode SE37 and Create a custom FM via copying standard FM BUPA_MWX_BDOC_BPS_FILL_CENTRAL .


/wp-content/uploads/2015/02/2_651066.png



Step 3: Now replace ZBUPA_MWX_BDOC_BPS_FILL_CENTRA and with BUPA_MWX_BDOC_BPS_FILL_CENTRAL in transaction                     CRMC_BUT_CALL_FU .


/wp-content/uploads/2015/02/3_651067.png


Step 4: Now put a logic below in custom FM to check the entries in ct_bp_extern structure if the BP is prospect then delete the entry from the structure.



Logic to Delete the Entry in the structure if BP is a Prospect:


******************************

DATA: lt_extern           TYPE TABLE OF  bus_ei_extern WITH HEADER LINE,
ls_extern          
TYPE bus_ei_extern,
lt_central_datarole
TYPE TABLE OF bus_ei_central_data,
ls_central_datarole
TYPE bus_ei_central_data,
lt_roles           
TYPE TABLE OF bus_ei_roles,
ls_roles           
TYPE bus_ei_roles,
lt_bupa_role       
TYPE TABLE OF bus_ei_bupa_roles,
ls_bupa_role       
TYPE bus_ei_bupa_roles.

IF ct_bp_extern[] IS NOT INITIAL.
lt_extern[]
= ct_bp_extern[].
LOOP AT lt_extern INTO ls_extern.
READ TABLE ls_externcentral_dataroleroles INTO ls_bupa_role INDEX 1.
IF ls_bupa_roledata_key = ‘BUP002’.
CLEAR ct_bp_extern[].
ENDIF.
ENDLOOP.
ENDIF.
*********************************

To report this post you need to login first.

4 Comments

You must be Logged on to comment or reply to a post.

  1. Dinesh Sachdeva

    Dear Narendra,

    As far as my knowledge concerns, it is a standard functionality. Only BP who are having “Sold to party” role will get replicated.

    Role – “Sold to party” mark the classification “B” automatically while creating a BP and in PIDE setting we can mention Classification “B” with account group -sold to party.

    In that case only role with “sold to party” will get replicated only.

    Please correct me, if i am wrong.

    warm regards,

    Dinesh

    (0) 
    1. Luís Pérez Grau

      That’s actually a very good point, I was about to say that you can make the BUPA_MAIN intelligent and use the IS_CUSTOMER or IS_PROSPECT attribute in publication (SMOEAC) as filter criteria, if you are using the standard role cathegory sold-to or prospect the segment  FRG0040 will be automatically updated otherwise you need fo find a suitable spot to inform, but anyway, having an alternative is allways welcome 😉

      (0) 
    2. Narendra Vishwakarma Post author

      Hi Dinesh,

      Yes you are right we can achieve this way too. but due to limited access of R/3 system, I had to opt this solution. As mentioned by Luis we can do it through SMOEAC also but as we dont want to disturb the current setting I did in this way and Just shared this alternate solution.

      Thanks

      Narendra

      (0) 

Leave a Reply