SAP Function Modules

ABADR_DERIVE_CHARACTERISTICS SAP Function module - Characteristic derivation







ABADR_DERIVE_CHARACTERISTICS 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 ABADR_DERIVE_CHARACTERISTICS into the relevant SAP transaction such as SE37 or SE80.

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


Pattern for FM ABADR_DERIVE_CHARACTERISTICS - ABADR DERIVE CHARACTERISTICS





CALL FUNCTION 'ABADR_DERIVE_CHARACTERISTICS' "Characteristic derivation
  EXPORTING
    i_appl =                    " tabadr-applclass  Application class for DD objects (not used)
    i_subclass =                " tabadr-subclass  Subgroup by Application Class
    i_env =                     " tabadrs-abadrenv  Environment for strategy
    i_strategy_id =             " tabadr-abadrstratid  Strategy ID
    i_identifier_1 =            " abadr_identifier
    i_record_1 =                "
*   i_identifier_2 =            " abadr_identifier
*   i_record_2 =                "
*   i_identifier_3 =            " abadr_identifier
*   i_record_3 =                "
*   i_identifier_4 =            " abadr_identifier
*   i_record_4 =                "
*   i_trace_mode =              " abadr_trace_mode
*   i_tab_exceptions =          " abadr_tab_exceptions
*   i_derivation_date = SY-DATUM  " sy-datum    Date and Time, Current (Application Server) Date
*   i_version =                 "
*   i_derive_anyway =           " abadr_flag
*   i_mass_processing =         " abadr_flag
*   i_force_derivation =        " abadr_flag
*   i_bal =                     " abadr_flag
  IMPORTING
    e_record_1 =                "
    e_record_2 =                "
    e_record_3 =                "
    e_record_4 =                "
    e_trace_handle =            " abadr_trace_handle
    e_tab_modified_fields =     " abadr_tab_names
    e_tab_used_source_fields =   " abadr_tab_names
  EXCEPTIONS
    DERIVATION_FAILED = 1       "
    ASSIGN_FAILED = 2           "
    .  "  ABADR_DERIVE_CHARACTERISTICS

ABAP code example for Function Module ABADR_DERIVE_CHARACTERISTICS





The ABAP code below is a full code listing to execute function module ABADR_DERIVE_CHARACTERISTICS 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_e_record_1  TYPE STRING ,
ld_e_record_2  TYPE STRING ,
ld_e_record_3  TYPE STRING ,
ld_e_record_4  TYPE STRING ,
ld_e_trace_handle  TYPE ABADR_TRACE_HANDLE ,
ld_e_tab_modified_fields  TYPE ABADR_TAB_NAMES ,
ld_e_tab_used_source_fields  TYPE ABADR_TAB_NAMES .


SELECT single APPLCLASS
FROM TABADR
INTO @DATA(ld_i_appl).


SELECT single SUBCLASS
FROM TABADR
INTO @DATA(ld_i_subclass).


SELECT single ABADRENV
FROM TABADRS
INTO @DATA(ld_i_env).


SELECT single ABADRSTRATID
FROM TABADR
INTO @DATA(ld_i_strategy_id).

DATA(ld_i_identifier_1) = 'Check type of data required'.
DATA(ld_i_record_1) = 'some text here'.
DATA(ld_i_identifier_2) = 'Check type of data required'.
DATA(ld_i_record_2) = 'some text here'.
DATA(ld_i_identifier_3) = 'Check type of data required'.
DATA(ld_i_record_3) = 'some text here'.
DATA(ld_i_identifier_4) = 'Check type of data required'.
DATA(ld_i_record_4) = 'some text here'.
DATA(ld_i_trace_mode) = 'Check type of data required'.
DATA(ld_i_tab_exceptions) = 'Check type of data required'.
DATA(ld_i_derivation_date) = '20210129'.
DATA(ld_i_version) = 'some text here'.
DATA(ld_i_derive_anyway) = '20210129'.
DATA(ld_i_mass_processing) = '20210129'.
DATA(ld_i_force_derivation) = '20210129'.
DATA(ld_i_bal) = '20210129'. . CALL FUNCTION 'ABADR_DERIVE_CHARACTERISTICS' EXPORTING i_appl = ld_i_appl i_subclass = ld_i_subclass i_env = ld_i_env i_strategy_id = ld_i_strategy_id i_identifier_1 = ld_i_identifier_1 i_record_1 = ld_i_record_1 * i_identifier_2 = ld_i_identifier_2 * i_record_2 = ld_i_record_2 * i_identifier_3 = ld_i_identifier_3 * i_record_3 = ld_i_record_3 * i_identifier_4 = ld_i_identifier_4 * i_record_4 = ld_i_record_4 * i_trace_mode = ld_i_trace_mode * i_tab_exceptions = ld_i_tab_exceptions * i_derivation_date = ld_i_derivation_date * i_version = ld_i_version * i_derive_anyway = ld_i_derive_anyway * i_mass_processing = ld_i_mass_processing * i_force_derivation = ld_i_force_derivation * i_bal = ld_i_bal IMPORTING e_record_1 = ld_e_record_1 e_record_2 = ld_e_record_2 e_record_3 = ld_e_record_3 e_record_4 = ld_e_record_4 e_trace_handle = ld_e_trace_handle e_tab_modified_fields = ld_e_tab_modified_fields e_tab_used_source_fields = ld_e_tab_used_source_fields EXCEPTIONS DERIVATION_FAILED = 1 ASSIGN_FAILED = 2 . " ABADR_DERIVE_CHARACTERISTICS
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 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_e_record_1  TYPE STRING ,
ld_i_appl  TYPE TABADR-APPLCLASS ,
ld_e_record_2  TYPE STRING ,
ld_i_subclass  TYPE TABADR-SUBCLASS ,
ld_e_record_3  TYPE STRING ,
ld_i_env  TYPE TABADRS-ABADRENV ,
ld_e_record_4  TYPE STRING ,
ld_i_strategy_id  TYPE TABADR-ABADRSTRATID ,
ld_e_trace_handle  TYPE ABADR_TRACE_HANDLE ,
ld_i_identifier_1  TYPE ABADR_IDENTIFIER ,
ld_e_tab_modified_fields  TYPE ABADR_TAB_NAMES ,
ld_i_record_1  TYPE STRING ,
ld_e_tab_used_source_fields  TYPE ABADR_TAB_NAMES ,
ld_i_identifier_2  TYPE ABADR_IDENTIFIER ,
ld_i_record_2  TYPE STRING ,
ld_i_identifier_3  TYPE ABADR_IDENTIFIER ,
ld_i_record_3  TYPE STRING ,
ld_i_identifier_4  TYPE ABADR_IDENTIFIER ,
ld_i_record_4  TYPE STRING ,
ld_i_trace_mode  TYPE ABADR_TRACE_MODE ,
ld_i_tab_exceptions  TYPE ABADR_TAB_EXCEPTIONS ,
ld_i_derivation_date  TYPE SY-DATUM ,
ld_i_version  TYPE STRING ,
ld_i_derive_anyway  TYPE ABADR_FLAG ,
ld_i_mass_processing  TYPE ABADR_FLAG ,
ld_i_force_derivation  TYPE ABADR_FLAG ,
ld_i_bal  TYPE ABADR_FLAG .


SELECT single APPLCLASS
FROM TABADR
INTO ld_i_appl.


SELECT single SUBCLASS
FROM TABADR
INTO ld_i_subclass.


SELECT single ABADRENV
FROM TABADRS
INTO ld_i_env.


SELECT single ABADRSTRATID
FROM TABADR
INTO ld_i_strategy_id.

ld_i_identifier_1 = '20210129'.
ld_i_record_1 = 'some text here'.
ld_i_identifier_2 = '20210129'.
ld_i_record_2 = 'some text here'.
ld_i_identifier_3 = '20210129'.
ld_i_record_3 = 'some text here'.
ld_i_identifier_4 = '20210129'.
ld_i_record_4 = 'some text here'.
ld_i_trace_mode = '20210129'.
ld_i_tab_exceptions = '20210129'.
ld_i_derivation_date = '20210129'.
ld_i_version = 'some text here'.
ld_i_derive_anyway = '20210129'.
ld_i_mass_processing = '20210129'.
ld_i_force_derivation = '20210129'.
ld_i_bal = '20210129'.

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 ABADR_DERIVE_CHARACTERISTICS or its description.