SAP Function Modules

TR_CHECK_TYPE SAP Function module - Determine whether key can be locked, generate TADIR and TLOCK







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

Associated Function Group: STRD
Released Date: 21.12.1998
Processing type: Normal fucntion module
Normal function module settings


Pattern for FM TR_CHECK_TYPE - TR CHECK TYPE





CALL FUNCTION 'TR_CHECK_TYPE' "Determine whether key can be locked, generate TADIR and TLOCK
  EXPORTING
    wi_e071 =                   " e071          Input key
*   iv_translate_objname = SPACE  " trboolean   ' ': Without, 'X': With conversion of the object name into upper case
  IMPORTING
    pe_result =                 " trpari-s_checked  Check result ('type class')
    we_e071 =                   " e071          Output string E071
    we_lock_key =               " tlock_int     Long-term lock key
    we_tadir =                  " tadir         Object directory key created
    we_complete_only =          " trpari-w_complete  X - only complete object can be transported -> R3TR
    we_category =               " e070-korrdev  Request category ('CUST', 'CUSY', 'SYST')
    we_cli_dep =                " trpari-w_cli_dep  X - object client-dependent
    we_table_typ =              " dd02l-tabclass  Table type (inttab, pooled, cluster, transp. , view...)
    we_table_contflag =         " dd02l-contflag  Table delivery class
    pe_name_too_long =          " trpari-s_checked  Object name too long
    ev_no_object_name =         " trpari-s_checked  X - no object name transferred
    ev_r3trtext_syntaxerror =   " trpari-s_checked  X - syntax error in an R3TR TEXT object
    ev_langtyp =                " trpari-langtyp  Language dependency of object
    ev_langtypa =               " trpari-langtypa  Type of language dependency of object
    ev_logo_obj =               " trpari-s_exists  X - object is a TLOGO object
    ev_curr_setting =           " objh-cursetting  X - object belongs to current settings
    ev_name_too_long_for_old =   " trpari-s_checked  Object name is too long (according to rules prior to 4.0)
    ev_name_with_nonstandard_chars =   " trpari-s_checked  Object name contains invalid characters
    ev_namespace =              " trnspace-namespace  Namespace
    ev_invalid_prefix_syntax =   " trpari-s_checked  Prefix of the object name is incorrect
    ev_prefix_not_allowed =     " trpari-s_checked  Object name prefix not valid for object type
    ev_case_sensitive =         " trpari-s_checked
    ev_objlen =                 " tlock-len     Maximum name length for object type
    ev_invalid_language_field =   " trpari-s_checked  'X': Language field filled incorrectly
    .  "  TR_CHECK_TYPE

ABAP code example for Function Module TR_CHECK_TYPE





The ABAP code below is a full code listing to execute function module TR_CHECK_TYPE 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_pe_result  TYPE TRPARI-S_CHECKED ,
ld_we_e071  TYPE E071 ,
ld_we_lock_key  TYPE TLOCK_INT ,
ld_we_tadir  TYPE TADIR ,
ld_we_complete_only  TYPE TRPARI-W_COMPLETE ,
ld_we_category  TYPE E070-KORRDEV ,
ld_we_cli_dep  TYPE TRPARI-W_CLI_DEP ,
ld_we_table_typ  TYPE DD02L-TABCLASS ,
ld_we_table_contflag  TYPE DD02L-CONTFLAG ,
ld_pe_name_too_long  TYPE TRPARI-S_CHECKED ,
ld_ev_no_object_name  TYPE TRPARI-S_CHECKED ,
ld_ev_r3trtext_syntaxerror  TYPE TRPARI-S_CHECKED ,
ld_ev_langtyp  TYPE TRPARI-LANGTYP ,
ld_ev_langtypa  TYPE TRPARI-LANGTYPA ,
ld_ev_logo_obj  TYPE TRPARI-S_EXISTS ,
ld_ev_curr_setting  TYPE OBJH-CURSETTING ,
ld_ev_name_too_long_for_old  TYPE TRPARI-S_CHECKED ,
ld_ev_name_with_nonstandard_chars  TYPE TRPARI-S_CHECKED ,
ld_ev_namespace  TYPE TRNSPACE-NAMESPACE ,
ld_ev_invalid_prefix_syntax  TYPE TRPARI-S_CHECKED ,
ld_ev_prefix_not_allowed  TYPE TRPARI-S_CHECKED ,
ld_ev_case_sensitive  TYPE TRPARI-S_CHECKED ,
ld_ev_objlen  TYPE TLOCK-LEN ,
ld_ev_invalid_language_field  TYPE TRPARI-S_CHECKED .

DATA(ld_wi_e071) = 'Check type of data required'.
DATA(ld_iv_translate_objname) = 'Check type of data required'. . CALL FUNCTION 'TR_CHECK_TYPE' EXPORTING wi_e071 = ld_wi_e071 * iv_translate_objname = ld_iv_translate_objname IMPORTING pe_result = ld_pe_result we_e071 = ld_we_e071 we_lock_key = ld_we_lock_key we_tadir = ld_we_tadir we_complete_only = ld_we_complete_only we_category = ld_we_category we_cli_dep = ld_we_cli_dep we_table_typ = ld_we_table_typ we_table_contflag = ld_we_table_contflag pe_name_too_long = ld_pe_name_too_long ev_no_object_name = ld_ev_no_object_name ev_r3trtext_syntaxerror = ld_ev_r3trtext_syntaxerror ev_langtyp = ld_ev_langtyp ev_langtypa = ld_ev_langtypa ev_logo_obj = ld_ev_logo_obj ev_curr_setting = ld_ev_curr_setting ev_name_too_long_for_old = ld_ev_name_too_long_for_old ev_name_with_nonstandard_chars = ld_ev_name_with_nonstandard_chars ev_namespace = ld_ev_namespace ev_invalid_prefix_syntax = ld_ev_invalid_prefix_syntax ev_prefix_not_allowed = ld_ev_prefix_not_allowed ev_case_sensitive = ld_ev_case_sensitive ev_objlen = ld_ev_objlen ev_invalid_language_field = ld_ev_invalid_language_field . " TR_CHECK_TYPE
IF SY-SUBRC EQ 0. "All OK 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_pe_result  TYPE TRPARI-S_CHECKED ,
ld_wi_e071  TYPE E071 ,
ld_we_e071  TYPE E071 ,
ld_iv_translate_objname  TYPE TRBOOLEAN ,
ld_we_lock_key  TYPE TLOCK_INT ,
ld_we_tadir  TYPE TADIR ,
ld_we_complete_only  TYPE TRPARI-W_COMPLETE ,
ld_we_category  TYPE E070-KORRDEV ,
ld_we_cli_dep  TYPE TRPARI-W_CLI_DEP ,
ld_we_table_typ  TYPE DD02L-TABCLASS ,
ld_we_table_contflag  TYPE DD02L-CONTFLAG ,
ld_pe_name_too_long  TYPE TRPARI-S_CHECKED ,
ld_ev_no_object_name  TYPE TRPARI-S_CHECKED ,
ld_ev_r3trtext_syntaxerror  TYPE TRPARI-S_CHECKED ,
ld_ev_langtyp  TYPE TRPARI-LANGTYP ,
ld_ev_langtypa  TYPE TRPARI-LANGTYPA ,
ld_ev_logo_obj  TYPE TRPARI-S_EXISTS ,
ld_ev_curr_setting  TYPE OBJH-CURSETTING ,
ld_ev_name_too_long_for_old  TYPE TRPARI-S_CHECKED ,
ld_ev_name_with_nonstandard_chars  TYPE TRPARI-S_CHECKED ,
ld_ev_namespace  TYPE TRNSPACE-NAMESPACE ,
ld_ev_invalid_prefix_syntax  TYPE TRPARI-S_CHECKED ,
ld_ev_prefix_not_allowed  TYPE TRPARI-S_CHECKED ,
ld_ev_case_sensitive  TYPE TRPARI-S_CHECKED ,
ld_ev_objlen  TYPE TLOCK-LEN ,
ld_ev_invalid_language_field  TYPE TRPARI-S_CHECKED .

ld_wi_e071 = 'Check type of data required'.
ld_iv_translate_objname = 'Check type of data required'.

SAP Documentation for FM TR_CHECK_TYPE


The function module TR_CHECK_TYPE can also be called outside of the Change and Transport System since the database is not updated. ...See here for full SAP fm documentation

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