SAP BUPA_ADDRESS_CHANGE Function Module for
BUPA_ADDRESS_CHANGE is a standard bupa address change SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used to perform a specific ABAP function and below is the pattern details, 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 bupa address change FM, simply by entering the name BUPA_ADDRESS_CHANGE into the relevant SAP transaction such as SE37 or SE38.
Function Group: BUBA_4
Program Name: SAPLBUBA_4
Main Program: SAPLBUBA_4
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Remote-Enabled
Update:

Function BUPA_ADDRESS_CHANGE 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 'BUPA_ADDRESS_CHANGE'".
EXPORTING
* IV_PARTNER = "Business Partner Number
* IV_CHANGE_BAS = 'X' "
* IV_CHECK_ADDRESS = 'X' "
* IV_PARTNER_GUID = "Business Partner GUID
* IV_ADDRNUMBER = "Address Number
* IV_ADDRGUID = "GUID of a Business Partner Address
* IS_ADDRESS = "Address Data
* IS_ADDRESS_X = "Change Information on ADDRESSDATE
* IV_DUPLICATE_MESSAGE_TYPE = "Output: Severity of error (N/' '-normal, E/F/A-error)
* IV_ACCEPT_ERROR = ' ' "Accept Regional Structure Check Errors with Warnings
* IV_X_SAVE = 'X' "Indicator
TABLES
* IT_ADTEL = "Telephone Numbers
* IT_ADSSF = "SSF Addresses
* IT_ADURI = "URI Addresses
* IT_ADPAG = "Pager Numbers
* IT_AD_REM = "Remarks for Address
* IT_COMREM = "Remarks for Communication Types
* IT_ADUSE = "Address Usages
* IT_ADDR_VERS_ORG = "
* IT_ADDR_VERS_PERS = "
* IT_ADDR_COMM_USE = "
* IT_ADTEL_X = "Change Information on BAPIADTEL
* IT_ADFAX = "Telefax Numbers
* IT_ADFAX_X = "Change Information on BAPIADFAX
* IT_ADTTX_X = "Change Information on BAPIADTTX
* IT_ADTLX_X = "Change Information on BAPIADTLX
* IT_ADSMT_X = "Change Information on BAPIADSMTP
* IT_ADRML_X = "Change Information on BAPIADRML
* IT_ADX40_X = "Change Information on BAPIADX400
* IT_ADRFC_X = "Change Information on BAPIADRFC
* IT_ADPRT_X = "Change Information on BAPIADPRT
* IT_ADSSF_X = "Change Information on BAPIADSSF
* IT_ADURI_X = "Change Information on BAPIADURI
* IT_ADTTX = "Teletex Numbers
* IT_ADPAG_X = "Change Information on BAPIADPAG
* IT_AD_RE_X = "Change Information on BAPIAD_REM
* IT_COMRE_X = "Change Information on BAPICOMREM
* IT_ADUSE_X = "Change Information on ADDRESSUSAGE
* IT_ADDR_VERS_ORG_X = "BAPI Structure for Distributing Address Cat. 1 Version-Dep.
* IT_ADDR_VERS_PERS_X = "Change BAPI Reference Structure for Structure BAPIAD2VD
* IT_ADDR_COMM_USE_X = "
* ET_RETURN = "Messages
* ET_ADDR_DUPLICATES = "
* IT_ADTLX = "Telex Numbers
* IT_ADSMTP = "E-Mail Addresses
* IT_ADRML = "RML Addresses
* IT_ADX400 = "X400 Addresses
* IT_ADRFC = "RFC Addresses
* IT_ADPRT = "PRT Addresses
IMPORTING Parameters details for BUPA_ADDRESS_CHANGE
IV_PARTNER - Business Partner Number
Data type: BU_PARTNEROptional: Yes
Call by Reference: No ( called with pass by value option)
IV_CHANGE_BAS -
Data type: SZAD_FIELD-FLAGDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
IV_CHECK_ADDRESS -
Data type: SZAD_FIELD-FLAGDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
IV_PARTNER_GUID - Business Partner GUID
Data type: BU_PARTNER_GUIDOptional: Yes
Call by Reference: No ( called with pass by value option)
IV_ADDRNUMBER - Address Number
Data type: AD_ADDRNUMOptional: Yes
Call by Reference: No ( called with pass by value option)
IV_ADDRGUID - GUID of a Business Partner Address
Data type: BU_ADDRESS_GUIDOptional: Yes
Call by Reference: No ( called with pass by value option)
IS_ADDRESS - Address Data
Data type: BAPIBUS1006_ADDRESSOptional: Yes
Call by Reference: No ( called with pass by value option)
IS_ADDRESS_X - Change Information on ADDRESSDATE
Data type: BAPIBUS1006_ADDRESS_XOptional: Yes
Call by Reference: No ( called with pass by value option)
IV_DUPLICATE_MESSAGE_TYPE - Output: Severity of error (N/SPACE-normal, E/F/A-error)
Data type: BAPIBUS1006_HEAD-CONTROLDUPLICATEMESSAGEOptional: Yes
Call by Reference: No ( called with pass by value option)
IV_ACCEPT_ERROR - Accept Regional Structure Check Errors with Warnings
Data type: BAPI4001_1-ACCEPT_ERRDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
IV_X_SAVE - Indicator
Data type: BAPI4001_1-SAVE_ADDRDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for BUPA_ADDRESS_CHANGE
IT_ADTEL - Telephone Numbers
Data type: BAPIADTELOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADSSF - SSF Addresses
Data type: BAPIADSSFOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADURI - URI Addresses
Data type: BAPIADURIOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADPAG - Pager Numbers
Data type: BAPIADPAGOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_AD_REM - Remarks for Address
Data type: BAPIAD_REMOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_COMREM - Remarks for Communication Types
Data type: BAPICOMREMOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADUSE - Address Usages
Data type: BAPIBUS1006_ADDRESSUSAGEOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADDR_VERS_ORG -
Data type: BAPIAD1VDOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADDR_VERS_PERS -
Data type: BAPIAD2VDOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADDR_COMM_USE -
Data type: BAPIADUSEOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADTEL_X - Change Information on BAPIADTEL
Data type: BAPIADTELXOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADFAX - Telefax Numbers
Data type: BAPIADFAXOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADFAX_X - Change Information on BAPIADFAX
Data type: BAPIADFAXXOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADTTX_X - Change Information on BAPIADTTX
Data type: BAPIADTTXXOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADTLX_X - Change Information on BAPIADTLX
Data type: BAPIADTLXXOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADSMT_X - Change Information on BAPIADSMTP
Data type: BAPIADSMTXOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADRML_X - Change Information on BAPIADRML
Data type: BAPIADRMLXOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADX40_X - Change Information on BAPIADX400
Data type: BAPIADX40XOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADRFC_X - Change Information on BAPIADRFC
Data type: BAPIADRFCXOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADPRT_X - Change Information on BAPIADPRT
Data type: BAPIADPRTXOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADSSF_X - Change Information on BAPIADSSF
Data type: BAPIADSSFXOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADURI_X - Change Information on BAPIADURI
Data type: BAPIADURIXOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADTTX - Teletex Numbers
Data type: BAPIADTTXOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADPAG_X - Change Information on BAPIADPAG
Data type: BAPIADPAGXOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_AD_RE_X - Change Information on BAPIAD_REM
Data type: BAPIAD_REXOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_COMRE_X - Change Information on BAPICOMREM
Data type: BAPICOMREXOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADUSE_X - Change Information on ADDRESSUSAGE
Data type: BAPIBUS1006_ADDRESSUSAGE_XOptional: Yes
Call by Reference: Yes
IT_ADDR_VERS_ORG_X - BAPI Structure for Distributing Address Cat. 1 Version-Dep.
Data type: BAPIAD1VDXOptional: Yes
Call by Reference: Yes
IT_ADDR_VERS_PERS_X - Change BAPI Reference Structure for Structure BAPIAD2VD
Data type: BAPIAD2VDXOptional: Yes
Call by Reference: Yes
IT_ADDR_COMM_USE_X -
Data type: BAPIADUSEXOptional: Yes
Call by Reference: Yes
ET_RETURN - Messages
Data type: BAPIRET2Optional: Yes
Call by Reference: Yes
ET_ADDR_DUPLICATES -
Data type: BAPIBUS1006_ADDRESS_DUPLICATESOptional: Yes
Call by Reference: Yes
IT_ADTLX - Telex Numbers
Data type: BAPIADTLXOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADSMTP - E-Mail Addresses
Data type: BAPIADSMTPOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADRML - RML Addresses
Data type: BAPIADRMLOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADX400 - X400 Addresses
Data type: BAPIADX400Optional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADRFC - RFC Addresses
Data type: BAPIADRFCOptional: Yes
Call by Reference: No ( called with pass by value option)
IT_ADPRT - PRT Addresses
Data type: BAPIADPRTOptional: Yes
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for BUPA_ADDRESS_CHANGE 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: | ||||
| lt_it_adtel | TYPE STANDARD TABLE OF BAPIADTEL, " | |||
| lv_iv_partner | TYPE BU_PARTNER, " | |||
| lt_it_adssf | TYPE STANDARD TABLE OF BAPIADSSF, " | |||
| lv_iv_change_bas | TYPE SZAD_FIELD-FLAG, " 'X' | |||
| lt_it_aduri | TYPE STANDARD TABLE OF BAPIADURI, " | |||
| lv_iv_check_address | TYPE SZAD_FIELD-FLAG, " 'X' | |||
| lt_it_adpag | TYPE STANDARD TABLE OF BAPIADPAG, " | |||
| lt_it_ad_rem | TYPE STANDARD TABLE OF BAPIAD_REM, " | |||
| lt_it_comrem | TYPE STANDARD TABLE OF BAPICOMREM, " | |||
| lt_it_aduse | TYPE STANDARD TABLE OF BAPIBUS1006_ADDRESSUSAGE, " | |||
| lt_it_addr_vers_org | TYPE STANDARD TABLE OF BAPIAD1VD, " | |||
| lt_it_addr_vers_pers | TYPE STANDARD TABLE OF BAPIAD2VD, " | |||
| lt_it_addr_comm_use | TYPE STANDARD TABLE OF BAPIADUSE, " | |||
| lt_it_adtel_x | TYPE STANDARD TABLE OF BAPIADTELX, " | |||
| lt_it_adfax | TYPE STANDARD TABLE OF BAPIADFAX, " | |||
| lv_iv_partner_guid | TYPE BU_PARTNER_GUID, " | |||
| lt_it_adfax_x | TYPE STANDARD TABLE OF BAPIADFAXX, " | |||
| lt_it_adttx_x | TYPE STANDARD TABLE OF BAPIADTTXX, " | |||
| lt_it_adtlx_x | TYPE STANDARD TABLE OF BAPIADTLXX, " | |||
| lt_it_adsmt_x | TYPE STANDARD TABLE OF BAPIADSMTX, " | |||
| lt_it_adrml_x | TYPE STANDARD TABLE OF BAPIADRMLX, " | |||
| lt_it_adx40_x | TYPE STANDARD TABLE OF BAPIADX40X, " | |||
| lt_it_adrfc_x | TYPE STANDARD TABLE OF BAPIADRFCX, " | |||
| lt_it_adprt_x | TYPE STANDARD TABLE OF BAPIADPRTX, " | |||
| lt_it_adssf_x | TYPE STANDARD TABLE OF BAPIADSSFX, " | |||
| lt_it_aduri_x | TYPE STANDARD TABLE OF BAPIADURIX, " | |||
| lt_it_adttx | TYPE STANDARD TABLE OF BAPIADTTX, " | |||
| lv_iv_addrnumber | TYPE AD_ADDRNUM, " | |||
| lt_it_adpag_x | TYPE STANDARD TABLE OF BAPIADPAGX, " | |||
| lt_it_ad_re_x | TYPE STANDARD TABLE OF BAPIAD_REX, " | |||
| lt_it_comre_x | TYPE STANDARD TABLE OF BAPICOMREX, " | |||
| lt_it_aduse_x | TYPE STANDARD TABLE OF BAPIBUS1006_ADDRESSUSAGE_X, " | |||
| lt_it_addr_vers_org_x | TYPE STANDARD TABLE OF BAPIAD1VDX, " | |||
| lt_it_addr_vers_pers_x | TYPE STANDARD TABLE OF BAPIAD2VDX, " | |||
| lt_it_addr_comm_use_x | TYPE STANDARD TABLE OF BAPIADUSEX, " | |||
| lt_et_return | TYPE STANDARD TABLE OF BAPIRET2, " | |||
| lt_et_addr_duplicates | TYPE STANDARD TABLE OF BAPIBUS1006_ADDRESS_DUPLICATES, " | |||
| lt_it_adtlx | TYPE STANDARD TABLE OF BAPIADTLX, " | |||
| lv_iv_addrguid | TYPE BU_ADDRESS_GUID, " | |||
| lt_it_adsmtp | TYPE STANDARD TABLE OF BAPIADSMTP, " | |||
| lv_is_address | TYPE BAPIBUS1006_ADDRESS, " | |||
| lt_it_adrml | TYPE STANDARD TABLE OF BAPIADRML, " | |||
| lv_is_address_x | TYPE BAPIBUS1006_ADDRESS_X, " | |||
| lt_it_adx400 | TYPE STANDARD TABLE OF BAPIADX400, " | |||
| lv_iv_duplicate_message_type | TYPE BAPIBUS1006_HEAD-CONTROLDUPLICATEMESSAGE, " | |||
| lt_it_adrfc | TYPE STANDARD TABLE OF BAPIADRFC, " | |||
| lv_iv_accept_error | TYPE BAPI4001_1-ACCEPT_ERR, " SPACE | |||
| lt_it_adprt | TYPE STANDARD TABLE OF BAPIADPRT, " | |||
| lv_iv_x_save | TYPE BAPI4001_1-SAVE_ADDR. " 'X' |
|   CALL FUNCTION 'BUPA_ADDRESS_CHANGE' " |
| EXPORTING | ||
| IV_PARTNER | = lv_iv_partner | |
| IV_CHANGE_BAS | = lv_iv_change_bas | |
| IV_CHECK_ADDRESS | = lv_iv_check_address | |
| IV_PARTNER_GUID | = lv_iv_partner_guid | |
| IV_ADDRNUMBER | = lv_iv_addrnumber | |
| IV_ADDRGUID | = lv_iv_addrguid | |
| IS_ADDRESS | = lv_is_address | |
| IS_ADDRESS_X | = lv_is_address_x | |
| IV_DUPLICATE_MESSAGE_TYPE | = lv_iv_duplicate_message_type | |
| IV_ACCEPT_ERROR | = lv_iv_accept_error | |
| IV_X_SAVE | = lv_iv_x_save | |
| TABLES | ||
| IT_ADTEL | = lt_it_adtel | |
| IT_ADSSF | = lt_it_adssf | |
| IT_ADURI | = lt_it_aduri | |
| IT_ADPAG | = lt_it_adpag | |
| IT_AD_REM | = lt_it_ad_rem | |
| IT_COMREM | = lt_it_comrem | |
| IT_ADUSE | = lt_it_aduse | |
| IT_ADDR_VERS_ORG | = lt_it_addr_vers_org | |
| IT_ADDR_VERS_PERS | = lt_it_addr_vers_pers | |
| IT_ADDR_COMM_USE | = lt_it_addr_comm_use | |
| IT_ADTEL_X | = lt_it_adtel_x | |
| IT_ADFAX | = lt_it_adfax | |
| IT_ADFAX_X | = lt_it_adfax_x | |
| IT_ADTTX_X | = lt_it_adttx_x | |
| IT_ADTLX_X | = lt_it_adtlx_x | |
| IT_ADSMT_X | = lt_it_adsmt_x | |
| IT_ADRML_X | = lt_it_adrml_x | |
| IT_ADX40_X | = lt_it_adx40_x | |
| IT_ADRFC_X | = lt_it_adrfc_x | |
| IT_ADPRT_X | = lt_it_adprt_x | |
| IT_ADSSF_X | = lt_it_adssf_x | |
| IT_ADURI_X | = lt_it_aduri_x | |
| IT_ADTTX | = lt_it_adttx | |
| IT_ADPAG_X | = lt_it_adpag_x | |
| IT_AD_RE_X | = lt_it_ad_re_x | |
| IT_COMRE_X | = lt_it_comre_x | |
| IT_ADUSE_X | = lt_it_aduse_x | |
| IT_ADDR_VERS_ORG_X | = lt_it_addr_vers_org_x | |
| IT_ADDR_VERS_PERS_X | = lt_it_addr_vers_pers_x | |
| IT_ADDR_COMM_USE_X | = lt_it_addr_comm_use_x | |
| ET_RETURN | = lt_et_return | |
| ET_ADDR_DUPLICATES | = lt_et_addr_duplicates | |
| IT_ADTLX | = lt_it_adtlx | |
| IT_ADSMTP | = lt_it_adsmtp | |
| IT_ADRML | = lt_it_adrml | |
| IT_ADX400 | = lt_it_adx400 | |
| IT_ADRFC | = lt_it_adrfc | |
| IT_ADPRT | = lt_it_adprt | |
| . " BUPA_ADDRESS_CHANGE | ||
ABAP code using 7.40 inline data declarations to call FM BUPA_ADDRESS_CHANGE
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.| "SELECT single FLAG FROM SZAD_FIELD INTO @DATA(ld_iv_change_bas). | ||||
| DATA(ld_iv_change_bas) | = 'X'. | |||
| "SELECT single FLAG FROM SZAD_FIELD INTO @DATA(ld_iv_check_address). | ||||
| DATA(ld_iv_check_address) | = 'X'. | |||
| "SELECT single CONTROLDUPLICATEMESSAGE FROM BAPIBUS1006_HEAD INTO @DATA(ld_iv_duplicate_message_type). | ||||
| "SELECT single ACCEPT_ERR FROM BAPI4001_1 INTO @DATA(ld_iv_accept_error). | ||||
| DATA(ld_iv_accept_error) | = ' '. | |||
| "SELECT single SAVE_ADDR FROM BAPI4001_1 INTO @DATA(ld_iv_x_save). | ||||
| DATA(ld_iv_x_save) | = 'X'. | |||
Search for further information about these or an SAP related objects