SAP SMC_SUPPLIER_UPDATE_BP_RFCWRAP Function Module for Updates a Supplier (optionally plus Contact Persons)
SMC_SUPPLIER_UPDATE_BP_RFCWRAP is a standard smc supplier update bp rfcwrap SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for Updates a Supplier (optionally plus Contact Persons) processing and below is the pattern details for this FM, showing its interface including any import and export parameters, exceptions etc. there is also a full "cut and paste" ABAP pattern code example, along with implementation ABAP coding, documentation and contribution comments specific to this or related objects.
See here to view full function module documentation and code listing for smc supplier update bp rfcwrap FM, simply by entering the name SMC_SUPPLIER_UPDATE_BP_RFCWRAP into the relevant SAP transaction such as SE37 or SE38.
Function Group: ERP_SMC_BUPA_INTEGRATION
Program Name: SAPLERP_SMC_BUPA_INTEGRATION
Main Program: SAPLERP_SMC_BUPA_INTEGRATION
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Remote-Enabled
Update:

Function SMC_SUPPLIER_UPDATE_BP_RFCWRAP pattern details
In-order to call this FM within your sap programs, simply using the below ABAP pattern details to trigger the function call...or see the full ABAP code listing at the end of this article. You can simply cut and paste this code into your ABAP progrom as it is, including variable declarations.CALL FUNCTION 'SMC_SUPPLIER_UPDATE_BP_RFCWRAP'"Updates a Supplier (optionally plus Contact Persons).
EXPORTING
* IV_LOG_NUMBER = "Application log: log number
IV_SOURCE_LOGSYS = "Logical System
IS_SUPPLIER_MAPPING = "Supplier Keys for distribution
* IS_DATA = "General BP Data, Independent of Business Partner Category
IS_DATA_ORGAN = "SAP BP: BAPI Structure for Organization Data
* IV_WEB_ADDRIND = "URI, e.g. Homepage or ftp Address
* IS_CONTROL_DATA = "Suppliers Control and Information Data
* IT_CONTACT_IDS = "Table of Contact Person Keys
TABLES
* IT_SUPPLIER_ROLES = "SAP BP: BAPI Structure for BP Roles
* IT_SUPPLIER_TAXDATA = "BAPI Structure Data Part VAT Identification Number
* IT_SUPPLIER_INDUSTRIES = "SAP BP: BAPI Structure for Industries
* IT_SUPPLIER_QMSYSTEMS = "Quality Management Systems
* IT_SUP_ADDR_MAPPING = "Address mapping (internal + external number + guid)
* IT_CONTACT_DATA = "BAPIBUS1006_CENTRAL plus Contact Person GUID-Key
* IT_CONTACT_DATA_PERSON = "BAPIBUS1006_CENTRAL_PERSON plus Contact GUID-Key
* IT_REL_DATA = "SMC_S_CONTREL_DATA plus Relationship GUID-Key
* IT_REL_ADDRESS = "BAPIBUS1006002_ADDRESS plus Contact and Address GUID-Key
* IT_CONTACT_ROLES = "BAPIBUS1006_ROLES plus Contact GUID-Key
* IT_CONTACT_PHONE = "BAPIADTEL plus Contact Person GUID-Key
* IT_SUPPLIER_ADDRESSES = "BAPIBUS1006_ADDRESS with Address GUID-KEY
* IT_CONTACT_FAX = "BAPIADFAX plus Contact Person GUID-Key
* IT_CONTACT_EMAIL = "BAPIADSMTP plus Contact Person GUID-Key
* IT_CONTACT_MAPPING = "Contact Person Mapping (Senders View: own GUID, foreign ID)
* IT_TABLE_OF_CONTENT = "Structure table of content
* IT_DATA_CONTAINER = "Structure data container
* IT_SUPPLIER_PHONE = "BAPIADTEL plus Address GUID-Key
* IT_SUPPLIER_FAX = "BAPIADFAX plus Address GUID-Key
* IT_SUPPLIER_EMAIL = "BAPIADSMTP plus Address GUID-Key
* IT_SUPPLIER_WEBADDR = "SMC_S_WEBADDR plus Address GUID-Key
* IT_SUPPLIER_ADDRUSE = "BAPIBUS1006_ADDRESSUSAGE plus Address GUID-Key
* IT_SUPPLIER_IDENTIFICATION = "SAP BP: BAPI Structure for ID Number Details
* IT_SUPPLIER_BANKDATA = "SAP BP: BAPI Structure for Bank Details Data
IMPORTING Parameters details for SMC_SUPPLIER_UPDATE_BP_RFCWRAP
IV_LOG_NUMBER - Application log: log number
Data type: BALOGNROptional: Yes
Call by Reference: No ( called with pass by value option)
IV_SOURCE_LOGSYS - Logical System
Data type: LOGSYSOptional: No
Call by Reference: No ( called with pass by value option)
IS_SUPPLIER_MAPPING - Supplier Keys for distribution
Data type: SMC_S_SUP_DISTRIB_KEYSOptional: No
Call by Reference: No ( called with pass by value option)
IS_DATA - General BP Data, Independent of Business Partner Category
Data type: BAPIBUS1006_CENTRALOptional: Yes
Call by Reference: No ( called with pass by value option)
IS_DATA_ORGAN - SAP BP: BAPI Structure for Organization Data
Data type: BAPIBUS1006_CENTRAL_ORGANOptional: No
Call by Reference: No ( called with pass by value option)
IV_WEB_ADDRIND - URI, e.g. Homepage or ftp Address
Data type: AD_URISCROptional: Yes
Call by Reference: No ( called with pass by value option)
IS_CONTROL_DATA - Suppliers Control and Information Data
Data type: SMC_S_CONTROL_INFOOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_CONTACT_IDS - Table of Contact Person Keys
Data type: SMC_T_CONTACT_S_KEYSOptional: Yes
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for SMC_SUPPLIER_UPDATE_BP_RFCWRAP
IT_SUPPLIER_ROLES - SAP BP: BAPI Structure for BP Roles
Data type: BAPIBUS1006_ROLESOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_SUPPLIER_TAXDATA - BAPI Structure Data Part VAT Identification Number
Data type: BAPIBUS1006TAXOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_SUPPLIER_INDUSTRIES - SAP BP: BAPI Structure for Industries
Data type: BAPIBUS1006_INDUSTRYSECTOROptional: Yes
Call by Reference: No ( called with pass by value option)
IT_SUPPLIER_QMSYSTEMS - Quality Management Systems
Data type: SMC_S_QMSYSTEMOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_SUP_ADDR_MAPPING - Address mapping (internal + external number + guid)
Data type: SMC_S_SUP_ADDR_MAPPINGOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_CONTACT_DATA - BAPIBUS1006_CENTRAL plus Contact Person GUID-Key
Data type: SMC_S_BB1006_CENT_C_KEYOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_CONTACT_DATA_PERSON - BAPIBUS1006_CENTRAL_PERSON plus Contact GUID-Key
Data type: SMC_S_BB1006_PERS_C_KEYOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_REL_DATA - SMC_S_CONTREL_DATA plus Relationship GUID-Key
Data type: SMC_S_CONTREL_C_KEYOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_REL_ADDRESS - BAPIBUS1006002_ADDRESS plus Contact and Address GUID-Key
Data type: SMC_S_BB10062_ADDR_CA_KEYOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_CONTACT_ROLES - BAPIBUS1006_ROLES plus Contact GUID-Key
Data type: SMC_S_BB1006_ROLE_C_KEYOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_CONTACT_PHONE - BAPIADTEL plus Contact Person GUID-Key
Data type: SMC_S_BADTEL_C_KEYOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_SUPPLIER_ADDRESSES - BAPIBUS1006_ADDRESS with Address GUID-KEY
Data type: SMC_S_BB1006_ADDR_A_KEYOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_CONTACT_FAX - BAPIADFAX plus Contact Person GUID-Key
Data type: SMC_S_BADFAX_C_KEYOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_CONTACT_EMAIL - BAPIADSMTP plus Contact Person GUID-Key
Data type: SMC_S_BADSMTP_C_KEYOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_CONTACT_MAPPING - Contact Person Mapping (Senders View: own GUID, foreign ID)
Data type: SMC_S_CONTACT_MAPPINGOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_TABLE_OF_CONTENT - Structure table of content
Data type: SMC_S_TOCOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_DATA_CONTAINER - Structure data container
Data type: SMC_S_DATA_CONTAINEROptional: Yes
Call by Reference: No ( called with pass by value option)
IT_SUPPLIER_PHONE - BAPIADTEL plus Address GUID-Key
Data type: SMC_S_BADTEL_A_KEYOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_SUPPLIER_FAX - BAPIADFAX plus Address GUID-Key
Data type: SMC_S_BADFAX_A_KEYOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_SUPPLIER_EMAIL - BAPIADSMTP plus Address GUID-Key
Data type: SMC_S_BADSMTP_A_KEYOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_SUPPLIER_WEBADDR - SMC_S_WEBADDR plus Address GUID-Key
Data type: SMC_S_WEBADDR_A_KEYOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_SUPPLIER_ADDRUSE - BAPIBUS1006_ADDRESSUSAGE plus Address GUID-Key
Data type: SMC_S_BB1006_ADUSE_A_KEYOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_SUPPLIER_IDENTIFICATION - SAP BP: BAPI Structure for ID Number Details
Data type: BAPIBUS1006_ID_DETAILSOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_SUPPLIER_BANKDATA - SAP BP: BAPI Structure for Bank Details Data
Data type: BAPIBUS1006_BANKDETAILSOptional: Yes
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for SMC_SUPPLIER_UPDATE_BP_RFCWRAP Function Module
The ABAP code below is a full code listing to execute function module POPUP_TO_CONFIRM including all data declarations. The code uses the original data declarations rather than the latest in-line data DECLARATION SYNTAX but I have included an ABAP code snippet at the end to show how declarations would look using the newer method of declaring data variables on the fly. This will allow you to compare and fully understand the new inline method. Please note some of the newer syntax such as the @DATA is not available until a later 4.70 service pack (SP8), which i why i have stuck to the origianl for this example.| DATA: | ||||
| lv_iv_log_number | TYPE BALOGNR, " | |||
| lt_it_supplier_roles | TYPE STANDARD TABLE OF BAPIBUS1006_ROLES, " | |||
| lt_it_supplier_taxdata | TYPE STANDARD TABLE OF BAPIBUS1006TAX, " | |||
| lt_it_supplier_industries | TYPE STANDARD TABLE OF BAPIBUS1006_INDUSTRYSECTOR, " | |||
| lt_it_supplier_qmsystems | TYPE STANDARD TABLE OF SMC_S_QMSYSTEM, " | |||
| lt_it_sup_addr_mapping | TYPE STANDARD TABLE OF SMC_S_SUP_ADDR_MAPPING, " | |||
| lt_it_contact_data | TYPE STANDARD TABLE OF SMC_S_BB1006_CENT_C_KEY, " | |||
| lt_it_contact_data_person | TYPE STANDARD TABLE OF SMC_S_BB1006_PERS_C_KEY, " | |||
| lt_it_rel_data | TYPE STANDARD TABLE OF SMC_S_CONTREL_C_KEY, " | |||
| lt_it_rel_address | TYPE STANDARD TABLE OF SMC_S_BB10062_ADDR_CA_KEY, " | |||
| lt_it_contact_roles | TYPE STANDARD TABLE OF SMC_S_BB1006_ROLE_C_KEY, " | |||
| lt_it_contact_phone | TYPE STANDARD TABLE OF SMC_S_BADTEL_C_KEY, " | |||
| lv_iv_source_logsys | TYPE LOGSYS, " | |||
| lt_it_supplier_addresses | TYPE STANDARD TABLE OF SMC_S_BB1006_ADDR_A_KEY, " | |||
| lt_it_contact_fax | TYPE STANDARD TABLE OF SMC_S_BADFAX_C_KEY, " | |||
| lt_it_contact_email | TYPE STANDARD TABLE OF SMC_S_BADSMTP_C_KEY, " | |||
| lt_it_contact_mapping | TYPE STANDARD TABLE OF SMC_S_CONTACT_MAPPING, " | |||
| lt_it_table_of_content | TYPE STANDARD TABLE OF SMC_S_TOC, " | |||
| lt_it_data_container | TYPE STANDARD TABLE OF SMC_S_DATA_CONTAINER, " | |||
| lt_it_supplier_phone | TYPE STANDARD TABLE OF SMC_S_BADTEL_A_KEY, " | |||
| lv_is_supplier_mapping | TYPE SMC_S_SUP_DISTRIB_KEYS, " | |||
| lv_is_data | TYPE BAPIBUS1006_CENTRAL, " | |||
| lt_it_supplier_fax | TYPE STANDARD TABLE OF SMC_S_BADFAX_A_KEY, " | |||
| lv_is_data_organ | TYPE BAPIBUS1006_CENTRAL_ORGAN, " | |||
| lt_it_supplier_email | TYPE STANDARD TABLE OF SMC_S_BADSMTP_A_KEY, " | |||
| lv_iv_web_addrind | TYPE AD_URISCR, " | |||
| lt_it_supplier_webaddr | TYPE STANDARD TABLE OF SMC_S_WEBADDR_A_KEY, " | |||
| lv_is_control_data | TYPE SMC_S_CONTROL_INFO, " | |||
| lt_it_supplier_addruse | TYPE STANDARD TABLE OF SMC_S_BB1006_ADUSE_A_KEY, " | |||
| lv_it_contact_ids | TYPE SMC_T_CONTACT_S_KEYS, " | |||
| lt_it_supplier_identification | TYPE STANDARD TABLE OF BAPIBUS1006_ID_DETAILS, " | |||
| lt_it_supplier_bankdata | TYPE STANDARD TABLE OF BAPIBUS1006_BANKDETAILS. " |
|   CALL FUNCTION 'SMC_SUPPLIER_UPDATE_BP_RFCWRAP' "Updates a Supplier (optionally plus Contact Persons) |
| EXPORTING | ||
| IV_LOG_NUMBER | = lv_iv_log_number | |
| IV_SOURCE_LOGSYS | = lv_iv_source_logsys | |
| IS_SUPPLIER_MAPPING | = lv_is_supplier_mapping | |
| IS_DATA | = lv_is_data | |
| IS_DATA_ORGAN | = lv_is_data_organ | |
| IV_WEB_ADDRIND | = lv_iv_web_addrind | |
| IS_CONTROL_DATA | = lv_is_control_data | |
| IT_CONTACT_IDS | = lv_it_contact_ids | |
| TABLES | ||
| IT_SUPPLIER_ROLES | = lt_it_supplier_roles | |
| IT_SUPPLIER_TAXDATA | = lt_it_supplier_taxdata | |
| IT_SUPPLIER_INDUSTRIES | = lt_it_supplier_industries | |
| IT_SUPPLIER_QMSYSTEMS | = lt_it_supplier_qmsystems | |
| IT_SUP_ADDR_MAPPING | = lt_it_sup_addr_mapping | |
| IT_CONTACT_DATA | = lt_it_contact_data | |
| IT_CONTACT_DATA_PERSON | = lt_it_contact_data_person | |
| IT_REL_DATA | = lt_it_rel_data | |
| IT_REL_ADDRESS | = lt_it_rel_address | |
| IT_CONTACT_ROLES | = lt_it_contact_roles | |
| IT_CONTACT_PHONE | = lt_it_contact_phone | |
| IT_SUPPLIER_ADDRESSES | = lt_it_supplier_addresses | |
| IT_CONTACT_FAX | = lt_it_contact_fax | |
| IT_CONTACT_EMAIL | = lt_it_contact_email | |
| IT_CONTACT_MAPPING | = lt_it_contact_mapping | |
| IT_TABLE_OF_CONTENT | = lt_it_table_of_content | |
| IT_DATA_CONTAINER | = lt_it_data_container | |
| IT_SUPPLIER_PHONE | = lt_it_supplier_phone | |
| IT_SUPPLIER_FAX | = lt_it_supplier_fax | |
| IT_SUPPLIER_EMAIL | = lt_it_supplier_email | |
| IT_SUPPLIER_WEBADDR | = lt_it_supplier_webaddr | |
| IT_SUPPLIER_ADDRUSE | = lt_it_supplier_addruse | |
| IT_SUPPLIER_IDENTIFICATION | = lt_it_supplier_identification | |
| IT_SUPPLIER_BANKDATA | = lt_it_supplier_bankdata | |
| . " SMC_SUPPLIER_UPDATE_BP_RFCWRAP | ||
ABAP code using 7.40 inline data declarations to call FM SMC_SUPPLIER_UPDATE_BP_RFCWRAP
The below ABAP code uses the newer in-line data declarations. This allows you to see the coding differences/benefits of the later inline syntax. Please note some of the newer syntax below, such as the @DATA is not available until 4.70 EHP 8.Search for further information about these or an SAP related objects