What does it do? Defines the table parameters> t1 t2 ...> in the function module interface> display in the source text of function modules. Table parameters are obsolete CHANGING> parameters that are typed as standard tables> with a header line>. If an internal table without a header line or a table body> is passed as an actual parameter to a formal parameter of this type, an empty local header line is generated in the function module. If an internal table with a header line is used as an actual parameter, both the table body and the header line are passed to the function module. Pass by value is not possible in formal parameters defined using TABLES>.
For information on the TYPE>, STRUCTURE> and OPTIONAL >, see Properties of the Interface Parameters>. The following special rules apply to table parameters: Only pass by reference> is allowed in TABLES> parameters. After TYPE>, only one table type itab_type> from ABAP Dictionary (including type groups) with the table category standard table with a flat row type can be specified. A type with TYPE REF TO> is not permitted. In non-Unicode programs>, typings using STRUCTURE> do not have to match the line length of the actual parameter, but do have to be at least the length of the structure.
When TABLES> parameters are accessed that are not bound to any type-compliant actual parameters, a special exception situation> can arise.
Latest notes:Formal parameters defined with TABLES> can be replaced by formal parameters defined with CHANGING>. A local work area can be created for the internal table in the function module by using the addition LIKE LINE OF itab> of the DATA> statement.
Exception
Provided that basXML>> is not set as the RFC log>, using TABLES> parameters for remote-enabled function modules> for RFC>> can be significantly faster than passing by means of the CHANGING> parameter.