cancel
Showing results for 
Search instead for 
Did you mean: 

Map a custom SRM field to a standard field in R/3

Former Member
0 Kudos

Hello All,

We have created a custom field in SRM and it needs to be transferred to one of R/3's

standard field. it has to be done in both the classic and extended classic scenario.

For the extended classic scenario I tried using the BADI BBP_ECS_PO_OUT_BADI

but this is not getting called in the creation of local purchase order neither

does it transfer the changes made to r/3

As for classic scenario I tried using the BADI BBP_CREATE_BE_PO_NEW ~ FILL_PO_INTERFACE1

but the structure cs_po1_document-IT_POITEM does not get filled up with the item_guid

which needs to act as a reference field to read the table.

At the backend i tried using the bbp_po_inbound_badi and tried to change the value in the

debuggung mode. But it didn't carry the value to the field either.

Thanks in advance,

Prasanna

Accepted Solutions (0)

Answers (6)

Answers (6)

summer_wang
Contributor
0 Kudos

1. The BADI BBP_CREATE_BE_PO_NEW will only be called in the classic

scenario wherein the purchase order is directly created in the backend

R/3 system.

For extended classic scenario, kindly use the BADI BBP_ECS_PO_OUT_BADI

instead.

Please be sure that you have filled BBP_CREATE_BE_PO_NEW with these lines:

CS_CTRL_ATT-BE_DOC_TYPE = 'SRM'.

CS_CTRL_ATT-BE_STORAGE_CAT = 'DMS_C1_ST'

Please also check the settings in the customing of the backend (DC10, DC20, DC30).

2. Please create test data in BAPI_PO_CREATE1 in backend system according to note 539978 As in the note described, please

- set the Parameter FBGENDAT 'X' in the backend system for the

RFC user of the SRM system

- execute the report FBGENDAT in the mode 'A'.

after activating this report, test data will be created by every

BAPI_PO_CREATE(1) call.

- once you have a new entry in the SM13 of the backend system,

please deactivate the generation of test data in report FBGENDAT.

Please check the Data transfered from SRM.

3, There are some field with will be cleared during MM processing when

you run the BAPI_PO_CREATE1 with the data transfered from SRM.

Examples :

Classic scenario.

In this case you create service purchase order.

For service purchase orders fields WEMPF and ABLAD(GR_RCPT and UNLOAD_PT in BAPI) are not filled when creating the document. It is absolutely not possible to have this unloading point/ Recepient on item level service documents. The account assignment is entered on service level and it is then used to determine the account assignment on item level. So even if you were able to pass from SRM the unloading point/Recepient on item level in service documents it would be overwritten from the account assignment of services. This functionality won't be available in standard R/3.

Please see note 118008 for more information.

Extended classic scenario.

As soon as you pass delivery address The system clears field EMLIF (supp_vendor in the BAPI interface). Do not pass delivery address and you will be able to have Vendor in the purchase order. Due to the fact that delivery address exist, a lot of fields in lt_item are cleared, including supp_vendor.

Call stack:

8 SAPL2012 FORM PROCESS_ADDR_TABLE

7 SAPL2012 FORM CREATE_ITEM_ADDR

6 SAPL2012 FORM PROCESS_NON_INTEGRATED_COMP

5 SAPL2012 FUNCTION BAPI_PO_CREATE1

Please see code in subroutine PROCESS_ADDR_TABLE:

.....

CLEAR imt_item-kunnr.

imt_itemx-kunnr = bapi_yes.

CLEAR imt_item-emlif. !!!!!!!!!!!!!!!!!!!!

imt_itemx-emlif = bapi_yes.

CLEAR imt_item-lblkz.

....

If you have the fields cleared in MM process , it is not a SRM-EBP-POR issue , but a MM-PUR-PO-BAPI The BADI BBP_CREATE_BE_PO_NEW will only be called in the classic scenario wherein the purchase order is directly created in the backend R/3 system. For extended classic scenario, kindly use the BADI BBP_ECS_PO_OUT_BADI instead.

I hope this information will help you .

Summer Wang

Edited by: Summer Wang on Nov 24, 2009 2:50 AM

Former Member
0 Kudos

Thanks Summer I will try and let you know.

Nonoza.

Former Member
0 Kudos

Hello Nonoza,

Make sure you use the parameter lt_bapi_customer_fields for passing the customer fields in the BADI bbp_ecs_po_out_badi.

The PO is created in the backend using the remote FM BBP_PO_INBOUND.

Then in the R3 system you may use the BADI BBP_BDI_MAP_AFTER_BAPI to map back these customer fields if it is needed in your case.

Regards,

Pavan

former_member183819
Active Contributor
0 Kudos

In the shopping cart of your SRM system some custom fields in the position of the requisition are required.

The field-content entered during purchasing shall be transferred to the according customer fields in the

purchase requisition or purchase order in the backend system.

In this example two customer fields are created in both SRM and backend and are transferred to the

Purchase requisition respectively purchase order.

Author(s): Andreas Milbredt

http://www.sdn.sap.com/irj/sdn/index?rid=/library/uuid/20b36c12-685f-2c10-4fb4-ba2e0b969c27&override...

We have created a custom field in SRM and it needs to be transferred to one of R/3's

standard field ?

Ans:- again you to create z field in ecc side right? why you are trying to map the std field in ecc vs zfileld in srm

because you may not aware what id really does and its interlinkages.

Former Member
0 Kudos

Hi Prasanna

I am having the same problem, can you please share the solution if you manage to solve it.

Thanks in advanve

Nonoza

Former Member
0 Kudos

Hello Nonoza,

Where have you created the custom fields, in SC or PO.

If you created in SC and it needs to transferred to the local PO, then the same field with the same name should be created for the local PO also. Then the fields will be automatically transferred.

Best Regards,

Pavan

Former Member
0 Kudos

Hi Paravancy

Thanks for responding.

I am creating custom fields for shopping cart under account aAssignment and I have to transfer them to R/3.

Thanks.

Nonoza

Former Member
0 Kudos

Hi Prasanna

I am having the same problem, can you please share the solution if you manage to solve it.

Thanks in advanve

Nonoza

Former Member
0 Kudos

Hi Prasanna

I am having the same problem, can you please share the solution if you manage to solve it.

Thanks in advanve

Nonoza

Former Member
0 Kudos

Hi Prasanna

I am having the same problem, can you please share the solution if you manage to solve it.

Thanks in advanve

Nonoza