Call transaction 'tcode' using bdc_tab... is a convenient statement provided by ABAP to execute batch input.ProgramCodeComplete the continuous execution of multiple transaction codes.
The bdc_tab option is used to fill in the batch input task table. There are many examples on the Internet, and you can search for it when using it. You can use the transaction code shdb to generate the content of this table, and enter the content according to the definition of the ABAP dictionary structure type bdcdata.
The following describes the execution parameters in this call method in detail:
... {[Mode] [update UPD]}
| [Options from OPT]}
[Messages into itab]...
Mode: determines the Execution Mode of the batch input. There are several optional values:
Execution Mode |
Function |
"" |
Show all input screens. If the bdc_tab contains the function code of the screen, a small window will show this function code. It is also the default value. If it is not the following value, it is considered as. |
"E" |
The screen is displayed only when an error occurs. You can modify the data and the program can continue to process the modification. |
"N" |
The silent mode of the screen is not displayed. If you reach the breakpoint of the called transaction, the system will terminate the process and set some system fields.Sy-subrcIs 1001,Sy-msgtyFor "S ",Sy-msgidFor "00 ",Sy-msgnoIs 344 ",Sy-msgv1For "sapmssy3 ",Sy-msgv20131 ". |
"P" |
The debug mode of the screen is not displayed. If the transaction breakpoint is reached, the system automatically goes to the ABAP debugger. This method is mainly used for debugging. |
Update: determines the update mode of batch input. The following values are available:
Update mode |
function |
"A" |
asynchronous update. Update of the called program is executed in the way that the commit work statement and the wait append are not specified. That is to say, the data update is put into the update queue and executed by another special update process. Once the main program submits data, it continues to execute, regardless of whether the submitted update is completed or not. This method is suitable for using a transaction code to update a large number of specified data, such as maintaining the master data. |
"S" |
synchronously update. Update of the called program is executed according to the specified commit work statement and the method of attaching and wait. That is to say, the data update is put into the update queue and is executed by a special update process. However, the main program will not continue execution until the data is submitted and the result information is returned. This method is suitable for the continuous processing of multiple different transaction codes with high data consistency requirements. |
"L" |
local update. Update of the called program is executed by executing the Set Update task local statement. That is to say, the data update is completed in the process where the main program is located, and the main program will not continue until the called transaction is completed. |
Options from OPT transmits parameters by referring to the structure data object of ctu_params in the abap dictionary. The ctu_params structure includes two parameters: mode and update, and other parameters. The structure is as follows:
Dismode: display mode. The value corresponds to the mode parameter described earlier;
Updmode: update mode. Its value corresponds to the update parameter described earlier;
Cattmode: catt mode, which has three values: "", non-catt mode, and "N", catt mode, but does not control each screen; "A", catt mode and control each screen;
Defsize: whether to use the screen size. There are two values: "". If the screen size is not used, the screen displayed to the user is the same as the normal running time, the screen size is automatically expanded to full screen according to the user's window size. "X", the screen size is defined, that is, only the fixed screen size in the source program is used, regardless of the user's window size;
Racommit: Call transaction using... is not completed by commit, German original (commit work ist kein Ende bei call transaction using...), not clear;
Nobinpt: The sy-binpt value of the system field when the transaction code is called. There are two values: "". When the called transaction is executed, the system field sy-binpt value is "X";: "X". When the called transaction is executed, the system field sy-binpt value is "";
Nobiend: The sy-binpt value of the system field after the transaction code is called. There are two values: "". After the transaction is called for execution, the system field sy-binpt value is "X";: "X". After the called transaction is executed, the system field sy-binpt value is "".
The last message into itab is to input all the messages in the execution process to the itab table. The itab structure must be bdcmsgcoll in the abap dictionary.