SAP Function Modules

ADDR_COPY_COMPLETE_2_TO_1 SAP Function module







ADDR_COPY_COMPLETE_2_TO_1 is a standard SAP function module available within R/3 SAP systems depending on your version and release level. Below is the pattern details for this FM showing its interface including any import and export parameters, exceptions etc as well as any documentation contributions (Comments) specific to the object.

See here to view full function module documentation and code listing, simply by entering the name ADDR_COPY_COMPLETE_2_TO_1 into the relevant SAP transaction such as SE37 or SE80.

Associated Function Group: SZAE
Released Date: Not Released
Processing type: Normal fucntion module
Normal function module settings


Pattern for FM ADDR_COPY_COMPLETE_2_TO_1 - ADDR COPY COMPLETE 2 TO 1





CALL FUNCTION 'ADDR_COPY_COMPLETE_2_TO_1' "
* EXPORTING
*   old_address_handle =        " addr2_sel-addrhandle
*   old_address_number =        " addr2_sel-addrnumber
*   old_person_handle =         " addr2_sel-pershandle
*   old_person_number =         " addr2_sel-persnumber
*   address_handle =            " szad_field-handle
*   address_number =            " adrc-addrnumber
*   updateflag = 'I'            " szad_field-updateflag
*   address_group =             " adrg-addr_group
*   address_reference =         " addr_ref      Address Reference
*   get_number = SPACE          " szad_field-flag
*   numberrange_number = '01'   " inri-nrrangenr
*   check_address = SPACE       " szad_field-flag  Flag: Check address contents
*   owner = 'X'                 " szad_field-flag
  IMPORTING
    returncode =                " szad_field-returncode
    returncode_numberrange =    " inri-returncode
    new_address_number =        " addr1_sel-addrnumber
  TABLES
    error_table =               " addr_error    Table with errors, warnings, information
  EXCEPTIONS
    PARAMETER_ERROR = 1         "               Parameter Error
    OLD_ADDRESS_NOT_EXIST = 2   "               Address does not exist
    OLD_PERSON_NOT_EXIST = 3    "
    ADDRESS_HANDLE_EXIST = 4    "
    INTERNAL_ERROR = 5          "               Internal Error
    .  "  ADDR_COPY_COMPLETE_2_TO_1

ABAP code example for Function Module ADDR_COPY_COMPLETE_2_TO_1





The ABAP code below is a full code listing to execute function module ADDR_COPY_COMPLETE_2_TO_1 including all data declarations. The code uses 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 original method of declaring data variables up front. 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).

DATA:
ld_returncode  TYPE SZAD_FIELD-RETURNCODE ,
ld_returncode_numberrange  TYPE INRI-RETURNCODE ,
ld_new_address_number  TYPE ADDR1_SEL-ADDRNUMBER ,
it_error_table  TYPE STANDARD TABLE OF ADDR_ERROR,"TABLES PARAM
wa_error_table  LIKE LINE OF it_error_table .


DATA(ld_old_address_handle) = some text here

DATA(ld_old_address_number) = some text here

DATA(ld_old_person_handle) = some text here

DATA(ld_old_person_number) = some text here

DATA(ld_address_handle) = some text here

SELECT single ADDRNUMBER
FROM ADRC
INTO @DATA(ld_address_number).


DATA(ld_updateflag) = some text here

SELECT single ADDR_GROUP
FROM ADRG
INTO @DATA(ld_address_group).

DATA(ld_address_reference) = 'Check type of data required'.

DATA(ld_get_number) = some text here

DATA(ld_numberrange_number) = some text here

DATA(ld_check_address) = some text here

DATA(ld_owner) = some text here

"populate fields of struture and append to itab
append wa_error_table to it_error_table. . CALL FUNCTION 'ADDR_COPY_COMPLETE_2_TO_1' * EXPORTING * old_address_handle = ld_old_address_handle * old_address_number = ld_old_address_number * old_person_handle = ld_old_person_handle * old_person_number = ld_old_person_number * address_handle = ld_address_handle * address_number = ld_address_number * updateflag = ld_updateflag * address_group = ld_address_group * address_reference = ld_address_reference * get_number = ld_get_number * numberrange_number = ld_numberrange_number * check_address = ld_check_address * owner = ld_owner IMPORTING returncode = ld_returncode returncode_numberrange = ld_returncode_numberrange new_address_number = ld_new_address_number TABLES error_table = it_error_table EXCEPTIONS PARAMETER_ERROR = 1 OLD_ADDRESS_NOT_EXIST = 2 OLD_PERSON_NOT_EXIST = 3 ADDRESS_HANDLE_EXIST = 4 INTERNAL_ERROR = 5 . " ADDR_COPY_COMPLETE_2_TO_1
IF SY-SUBRC EQ 0. "All OK ELSEIF SY-SUBRC EQ 1. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 2. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 3. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 4. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 5. "Exception "Add code for exception here ENDIF.







ABAP code to compare 7.40 inline data declaration with original syntax

The below ABAP code uses the older none in-line data declarations. This allows you to see the coding differences/benefits of the later inline syntax. It may also be useful if you are using an older version of SAP as some of the newer syntax above, such as the @DATA is not available until 4.70 EHP 8.

DATA:
ld_returncode  TYPE SZAD_FIELD-RETURNCODE ,
ld_old_address_handle  TYPE ADDR2_SEL-ADDRHANDLE ,
it_error_table  TYPE STANDARD TABLE OF ADDR_ERROR ,
wa_error_table  LIKE LINE OF it_error_table,
ld_returncode_numberrange  TYPE INRI-RETURNCODE ,
ld_old_address_number  TYPE ADDR2_SEL-ADDRNUMBER ,
ld_new_address_number  TYPE ADDR1_SEL-ADDRNUMBER ,
ld_old_person_handle  TYPE ADDR2_SEL-PERSHANDLE ,
ld_old_person_number  TYPE ADDR2_SEL-PERSNUMBER ,
ld_address_handle  TYPE SZAD_FIELD-HANDLE ,
ld_address_number  TYPE ADRC-ADDRNUMBER ,
ld_updateflag  TYPE SZAD_FIELD-UPDATEFLAG ,
ld_address_group  TYPE ADRG-ADDR_GROUP ,
ld_address_reference  TYPE ADDR_REF ,
ld_get_number  TYPE SZAD_FIELD-FLAG ,
ld_numberrange_number  TYPE INRI-NRRANGENR ,
ld_check_address  TYPE SZAD_FIELD-FLAG ,
ld_owner  TYPE SZAD_FIELD-FLAG .


ld_old_address_handle = some text here

"populate fields of struture and append to itab
append wa_error_table to it_error_table.

ld_old_address_number = some text here

ld_old_person_handle = some text here

ld_old_person_number = some text here

ld_address_handle = some text here

SELECT single ADDRNUMBER
FROM ADRC
INTO ld_address_number.


ld_updateflag = some text here

SELECT single ADDR_GROUP
FROM ADRG
INTO ld_address_group.

ld_address_reference = 'Check type of data required'.

ld_get_number = some text here

ld_numberrange_number = some text here

ld_check_address = some text here

ld_owner = some text here

Contribute (Add Comments)

Please help keep this info upto date and use the comments section below to add useful hints, tips and information specific to this SAP function. This will then be available for you and other users to easily find by simply searching on the object name ADDR_COPY_COMPLETE_2_TO_1 or its description.