SAP Function Modules

DBMCLI_COMMAND_EXECUTE SAP Function module







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

Associated Function Group: SLCA
Released Date: Not Released
Processing type: Remote-Enabled
remote enabled module settings


Pattern for FM DBMCLI_COMMAND_EXECUTE - DBMCLI COMMAND EXECUTE





CALL FUNCTION 'DBMCLI_COMMAND_EXECUTE' "
  EXPORTING
    dbmcli_parameters =         " sxpgcolist-parameters  Parameters of external program (string)
*   comm_text = SPACE           " sy-ucomm      Screens, Function Code Triggered by PAI
    con_name =                  " dbcon-con_name  Logical Name for a Database Connection
*   use_dbmrfc =                " sdbusrset-use_dbmrfc
*   force_mode =                " flag
  IMPORTING
    status =                    " extcmdexex-status
    exitcode =                  " extcmdexex-exitcode
  TABLES
    dbmcli_exec_protocol =      " btcxpm
    action_protocol =           " lvc_aprot
  EXCEPTIONS
    NO_PERMISSION = 1           "
    SXPG_COMMAND_EXECUTE_ERROR = 2  "
    DBMCLI_COMMAND_EXECUTE_ERROR = 3  "
    NO_DBCON_ENTRY = 4          "
    NO_DBCONUSR_ENTRY = 5       "
    GET_PROFILE_ERROR = 6       "
    DBMRFC_EXECUTE_ERROR = 7    "
    .  "  DBMCLI_COMMAND_EXECUTE

ABAP code example for Function Module DBMCLI_COMMAND_EXECUTE





The ABAP code below is a full code listing to execute function module DBMCLI_COMMAND_EXECUTE 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_status  TYPE EXTCMDEXEX-STATUS ,
ld_exitcode  TYPE EXTCMDEXEX-EXITCODE ,
it_dbmcli_exec_protocol  TYPE STANDARD TABLE OF BTCXPM,"TABLES PARAM
wa_dbmcli_exec_protocol  LIKE LINE OF it_dbmcli_exec_protocol ,
it_action_protocol  TYPE STANDARD TABLE OF LVC_APROT,"TABLES PARAM
wa_action_protocol  LIKE LINE OF it_action_protocol .


DATA(ld_dbmcli_parameters) = some text here
DATA(ld_comm_text) = 'some text here'.

SELECT single CON_NAME
FROM DBCON
INTO @DATA(ld_con_name).


SELECT single USE_DBMRFC
FROM SDBUSRSET
INTO @DATA(ld_use_dbmrfc).

DATA(ld_force_mode) = 'some text here'.

"populate fields of struture and append to itab
append wa_dbmcli_exec_protocol to it_dbmcli_exec_protocol.

"populate fields of struture and append to itab
append wa_action_protocol to it_action_protocol. . CALL FUNCTION 'DBMCLI_COMMAND_EXECUTE' EXPORTING dbmcli_parameters = ld_dbmcli_parameters * comm_text = ld_comm_text con_name = ld_con_name * use_dbmrfc = ld_use_dbmrfc * force_mode = ld_force_mode IMPORTING status = ld_status exitcode = ld_exitcode TABLES dbmcli_exec_protocol = it_dbmcli_exec_protocol action_protocol = it_action_protocol EXCEPTIONS NO_PERMISSION = 1 SXPG_COMMAND_EXECUTE_ERROR = 2 DBMCLI_COMMAND_EXECUTE_ERROR = 3 NO_DBCON_ENTRY = 4 NO_DBCONUSR_ENTRY = 5 GET_PROFILE_ERROR = 6 DBMRFC_EXECUTE_ERROR = 7 . " DBMCLI_COMMAND_EXECUTE
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 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_status  TYPE EXTCMDEXEX-STATUS ,
ld_dbmcli_parameters  TYPE SXPGCOLIST-PARAMETERS ,
it_dbmcli_exec_protocol  TYPE STANDARD TABLE OF BTCXPM ,
wa_dbmcli_exec_protocol  LIKE LINE OF it_dbmcli_exec_protocol,
ld_exitcode  TYPE EXTCMDEXEX-EXITCODE ,
ld_comm_text  TYPE SY-UCOMM ,
it_action_protocol  TYPE STANDARD TABLE OF LVC_APROT ,
wa_action_protocol  LIKE LINE OF it_action_protocol,
ld_con_name  TYPE DBCON-CON_NAME ,
ld_use_dbmrfc  TYPE SDBUSRSET-USE_DBMRFC ,
ld_force_mode  TYPE FLAG .


ld_dbmcli_parameters = some text here

"populate fields of struture and append to itab
append wa_dbmcli_exec_protocol to it_dbmcli_exec_protocol.
ld_comm_text = 'some text here'.

"populate fields of struture and append to itab
append wa_action_protocol to it_action_protocol.

SELECT single CON_NAME
FROM DBCON
INTO ld_con_name.


SELECT single USE_DBMRFC
FROM SDBUSRSET
INTO ld_use_dbmrfc.

ld_force_mode = '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 DBMCLI_COMMAND_EXECUTE or its description.