SAP Function Modules

TB_LIMIT_TRANSACTION_PROCESS SAP Function module - Limit Management: Single Transaction Check Including Update







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

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


Pattern for FM TB_LIMIT_TRANSACTION_PROCESS - TB LIMIT TRANSACTION PROCESS





CALL FUNCTION 'TB_LIMIT_TRANSACTION_PROCESS' "Limit Management: Single Transaction Check Including Update
  EXPORTING
*   it_sle =                    " trlm_t_sle    Relevant Determination Procedures
*   i_anbetrout =               " trlm_anbetrout_typ  Attributable Amount Data in Limit Management
*   it_anbetrout =              " trlm_anbetrout_tab  Attributable Amount Data in Limit Management
*   it_gl_sec_ev =              " trlm_t_gl_sec_ev  Determination Procedure for Global Collateral
*   it_gl_sec =                 " trlm_t_gl_sec  Global Collateral
    ir_sli =                    " trlm_t_r_sli  Status to be Updated
*   i_dli = SY-DATUM            " vtblil-dli    Determination Date
*   i_check = 'X'               " c             Transaction Check
*   i_update = ' '              " c             Update Transaction
*   i_commit = 'X'              " c             COMMIT Indicator
*   i_dequeue = 'X'             " c             Unlock Afterwards (Lock Always Set)
*   i_pop = ' '                 " c             Display of Results in Dialog
*   i_sync = 'S'                " c             Asynchronous Update (for STC Only)
*   i_no_buffer = 'X'           " xfeld         Checkbox: Default - No Buffering
*   i_mode = SPACE              " c             Indicator for Call Mode
  IMPORTING
    e_tacheck =                 " trlm_tacheck  Check Results
    e_ttacheck =                " trlm_ttacheck  Check Results
    e_update =                  " c             Table Updated (Event Without COMMIT)
    e_result =                  " c             Limit Check Result (L/E/M/R/Y/O)
* CHANGING
*   c_vtblr =                   " trlm_vtblr    Reservation Data of Limit Management
*   ct_vtblr =                  " trlm_t_vtblr  Reservation Data of Limit Management
  EXCEPTIONS
    ERROR_CALL = 1              "
    ERROR_WRITE_SINGLE = 2      "
    ERROR_TRANSACTION_CLEAR = 3  "
    ERROR_TRANSACTION_CHECK = 4  "
    ERROR_UPDATE_DAY = 5        "
    ERROR_TRANSACTION_POPUP = 6  "
    ERROR_GET_HIGHDATE = 7      "
    ERROR_RESERVATION_CHANGE = 8  "
    ERROR_WRITE_GS_SINGLE = 9   "
    ERROR_TRANSACTION_GS_CLEAR = 10  "
    ERROR_TRANSACTION_GS_CHECK = 11  "
    ERROR_SLI = 12              "               Invalid Status Combination
    ERROR_ENQUEUE_READ = 13     "
    ERROR_ADJUST_GS = 14        "
    ERROR_FOREIGN_LOCK = 15     "               Global Lock from Limit Management
    .  "  TB_LIMIT_TRANSACTION_PROCESS

ABAP code example for Function Module TB_LIMIT_TRANSACTION_PROCESS





The ABAP code below is a full code listing to execute function module TB_LIMIT_TRANSACTION_PROCESS 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_tacheck  TYPE TRLM_TACHECK ,
ld_e_ttacheck  TYPE TRLM_TTACHECK ,
ld_e_update  TYPE C ,
ld_e_result  TYPE C .

DATA(ld_c_vtblr) = 'Check type of data required'.
DATA(ld_ct_vtblr) = 'Check type of data required'.
DATA(ld_it_sle) = 'Check type of data required'.
DATA(ld_i_anbetrout) = 'Check type of data required'.
DATA(ld_it_anbetrout) = 'Check type of data required'.
DATA(ld_it_gl_sec_ev) = 'Check type of data required'.
DATA(ld_it_gl_sec) = 'Check type of data required'.
DATA(ld_ir_sli) = 'Check type of data required'.

SELECT single DLI
FROM VTBLIL
INTO @DATA(ld_i_dli).

DATA(ld_i_check) = 'Check type of data required'.
DATA(ld_i_update) = 'Check type of data required'.
DATA(ld_i_commit) = 'Check type of data required'.
DATA(ld_i_dequeue) = 'Check type of data required'.
DATA(ld_i_pop) = 'Check type of data required'.
DATA(ld_i_sync) = 'Check type of data required'.
DATA(ld_i_no_buffer) = 'Check type of data required'.
DATA(ld_i_mode) = 'Check type of data required'. . CALL FUNCTION 'TB_LIMIT_TRANSACTION_PROCESS' EXPORTING * it_sle = ld_it_sle * i_anbetrout = ld_i_anbetrout * it_anbetrout = ld_it_anbetrout * it_gl_sec_ev = ld_it_gl_sec_ev * it_gl_sec = ld_it_gl_sec ir_sli = ld_ir_sli * i_dli = ld_i_dli * i_check = ld_i_check * i_update = ld_i_update * i_commit = ld_i_commit * i_dequeue = ld_i_dequeue * i_pop = ld_i_pop * i_sync = ld_i_sync * i_no_buffer = ld_i_no_buffer * i_mode = ld_i_mode IMPORTING e_tacheck = ld_e_tacheck e_ttacheck = ld_e_ttacheck e_update = ld_e_update e_result = ld_e_result * CHANGING * c_vtblr = ld_c_vtblr * ct_vtblr = ld_ct_vtblr EXCEPTIONS ERROR_CALL = 1 ERROR_WRITE_SINGLE = 2 ERROR_TRANSACTION_CLEAR = 3 ERROR_TRANSACTION_CHECK = 4 ERROR_UPDATE_DAY = 5 ERROR_TRANSACTION_POPUP = 6 ERROR_GET_HIGHDATE = 7 ERROR_RESERVATION_CHANGE = 8 ERROR_WRITE_GS_SINGLE = 9 ERROR_TRANSACTION_GS_CLEAR = 10 ERROR_TRANSACTION_GS_CHECK = 11 ERROR_SLI = 12 ERROR_ENQUEUE_READ = 13 ERROR_ADJUST_GS = 14 ERROR_FOREIGN_LOCK = 15 . " TB_LIMIT_TRANSACTION_PROCESS
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 ELSEIF SY-SUBRC EQ 6. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 7. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 8. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 9. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 10. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 11. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 12. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 13. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 14. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 15. "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_c_vtblr  TYPE TRLM_VTBLR ,
ld_e_tacheck  TYPE TRLM_TACHECK ,
ld_it_sle  TYPE TRLM_T_SLE ,
ld_ct_vtblr  TYPE TRLM_T_VTBLR ,
ld_e_ttacheck  TYPE TRLM_TTACHECK ,
ld_i_anbetrout  TYPE TRLM_ANBETROUT_TYP ,
ld_e_update  TYPE C ,
ld_it_anbetrout  TYPE TRLM_ANBETROUT_TAB ,
ld_e_result  TYPE C ,
ld_it_gl_sec_ev  TYPE TRLM_T_GL_SEC_EV ,
ld_it_gl_sec  TYPE TRLM_T_GL_SEC ,
ld_ir_sli  TYPE TRLM_T_R_SLI ,
ld_i_dli  TYPE VTBLIL-DLI ,
ld_i_check  TYPE C ,
ld_i_update  TYPE C ,
ld_i_commit  TYPE C ,
ld_i_dequeue  TYPE C ,
ld_i_pop  TYPE C ,
ld_i_sync  TYPE C ,
ld_i_no_buffer  TYPE XFELD ,
ld_i_mode  TYPE C .

ld_c_vtblr = 'Check type of data required'.
ld_it_sle = 'Check type of data required'.
ld_ct_vtblr = 'Check type of data required'.
ld_i_anbetrout = 'Check type of data required'.
ld_it_anbetrout = 'Check type of data required'.
ld_it_gl_sec_ev = 'Check type of data required'.
ld_it_gl_sec = 'Check type of data required'.
ld_ir_sli = 'Check type of data required'.

SELECT single DLI
FROM VTBLIL
INTO ld_i_dli.

ld_i_check = 'Check type of data required'.
ld_i_update = 'Check type of data required'.
ld_i_commit = 'Check type of data required'.
ld_i_dequeue = 'Check type of data required'.
ld_i_pop = 'Check type of data required'.
ld_i_sync = 'Check type of data required'.
ld_i_no_buffer = 'Check type of data required'.
ld_i_mode = 'Check type of data required'.

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