SAP NetWeaver AS ABAP Release 752, ©Copyright 2017 SAP AG. All rights reserved.
ABAP - Keyword Documentation → ABAP - Reference → Data Interfaces and Communication Interfaces → ABAP and XML → Transformations for XML → ST - Simple Transformations → ST - Examples →Simple Transformation, Method Call
This example demonstrates the call of a static method from a simple transformation.
Source Code
METHOD main.
DATA: scarr_tab TYPE SORTED TABLE OF scarr
WITH UNIQUE KEY carrid.
SELECT *
FROM scarr
INTO TABLE @scarr_tab.
IF sy-subrc <> 0.
RETURN.
ENDIF.
TRY.
CALL TRANSFORMATION demo_st_with_method_call
SOURCE scarr_tab = scarr_tab
spfli_tab = spfli_tab
RESULT XML data(xml).
cl_demo_output=>display_xml( xml ).
CATCH cx_st_call_method_error INTO data(exc).
cl_demo_output=>display_text( exc->get_text( ) ).
RETURN.
ENDTRY.
ENDMETHOD.
Description
The method MAIN of the global class CL_DEMO_CALL_FROM_ST calls an ST program DEMO_ST_WITH_METHOD_CALL and passes the static attributes SCARR_TAB and SPFLI_TAB of this class to the data roots of the transformation with the same name. The table SCARR_TAB is filled and SPFLI_TAB is passed empty. The ST program is as follows:
In a serialization in a tt:loop loop, it uses the data root SCARR_TAB to call the static method GET_FLIGHTS of the global class CL_DEMO_CALL_FROM_ST. This passes the component carrid of the internal table scarr_tab to the input parameter of the method. In the method, spfli_tab is filled in a different way in each loop, in accordance with the parameters passed.