If you are integrating your ECC or S/4 system to Ariba Buying & Invoicing, you may want to maintain the Supplier ANID (supplier account number on Ariba Network) on your Vendor Master Data records. ECC or S/4 is the source of your Supplier Master Data and the data synch occurs only from ECC -> B&I (unless you have an Ariba SLP solution in scope).
In this scenario, we will maintain the Supplier ANID on the Vendor Master Data record on ECC (in table LFA1) as a custom field, and map it on the CIG Supplier Master Data extractor on the Supplier Location level.
We want to get it from here:
- Please note that you can use the same process described below to add additional fields to other Ariba Master Data objects that are transmitted from ECC (or S/4) to the Ariba Buying & Invoicing application.
Here are the steps:
1.Create the custom field for the Ariba Supplier ANID on ECC as described in the blog link above.
This process is explained in detail on the following blog: https://blogs.sap.com/2012/11/27/adding-customer-fields-in-vendor-master/
2. Add the AribaNetworkId field to the CIG Supplier Location data definition
Go to SPRO and navigate to Integration with Other SAP Components -> SAP Ariba Cloud Integration Gateway -> Master Data Integration -> Enhancements -> Maintain Field Map for Master Data or Catalog Upload Request
Include a new line with the AribaNetworkId Ariba Field.
- Solution: Ariba Procurement
- Structure: ARBCIG_SUPPLIER_LOCATION
- Field SAP: the technical name for the custom field
3. Append the custom field technical name on the corresponding ABAP Structure.
Go to tr. SE11, display structure ARBCIG_SUPPLIER_LOCATION, then add an Append Structure with the new field. Make sure the Component is the same the Field SAP you used in step #2. In our scenario ZZANID.
Save and activate the changes.
4. Map the custom field from LAF1 to the CIG extractor field
Implement the BADI ARBCIG_MASTERDATA and method PUBLISH_SUPPLIER_LOC.
You can use the SPRO path: Integration with Other SAP Components -> SAP Ariba Cloud Integration Gateway -> Master Data Integration -> Enhancements -> Business Add-Ins(BAdIs) -> BAdIs for Master Data Export
The following snippet will read the custom field from LFA1 table and map it to the corresponding field in the extractor.
method IF_EX_ARBCIG_MASTERDATA~PUBLISH_SUPPLIER_LOC. data: lt_anid type table of lfa1, ls_anid type lfa1. field-symbols: <fs_supplier> type ARBCIG_SUPPLIER_LOCATION. * Mapping the ZZANID fields from ECC Supplier Master Data to CIG interface select * from LFA1 into table lt_anid for all entries in SUPPLIER_LOC_INFO where lifnr = SUPPLIER_LOC_INFO-lifnr order by primary key. loop at SUPPLIER_LOC_INFO assigning <fs_supplier>. read table lt_anid into ls_anid with key lifnr = <fs_supplier>-lifnr binary search. if ls_anid-zzanid is not initial. <fs_supplier>-zzanid = ls_anid-zzanid. else. <fs_supplier>-zzanid = 'NULL'. endif. endloop. endmethod.
- Please note that we must include the ‘NULL’ string when the Supplier record does not have an ANID value, so that the corresponding record is successfully updated in B&I when removing an ANID.
When executing the CIG Master Data Export program (tr. SE38 -> ARBCIG_MASTER_DATA_EXPORT), the Supplier Location data will now include the Supplier ANID. You can run the extractor in test mode and check the result csv file to confirm that the data is present.