CLASS zcl_demo_008_amdp DEFINITION PUBLIC FINAL CREATE PUBLIC . PUBLIC SECTION. TYPES: BEGIN OF ty_spfli, mandt TYPE mandt, carrid TYPE s_carr_id, connid TYPE s_conn_id, countryfr TYPE land1, countryto TYPE land1, END OF ty_spfli. TYPES: tt_spfli TYPE TABLE OF ty_spfli. INTERFACES: if_amdp_marker_hdb. METHODS: get_spfli_details IMPORTING VALUE(iv_mandt) TYPE mandt EXPORTING VALUE(et_spfli) TYPE tt_spfli. PROTECTED SECTION. PRIVATE SECTION.ENDCLASS.CLASS zcl_demo_008_amdp IMPLEMENTATION. METHOD get_spfli_details BY DATABASE PROCEDURE FOR HDB LANGUAGE SQLSCRIPT OPTIONS READ-ONLY. DECLARE lt_spfli TABLE ( mandt "$ABAP.type( SY-MANDT )", carrid "$ABAP.type( S_CARR_ID )", connid "$ABAP.type( S_CONN_ID )", countryfr "$ABAP.type( LAND1 )", countryto "$ABAP.type( LAND1 )" ); lt_spfli.mandt[1] := '100'; lt_spfli.carrid[1] := 'AA'; lt_spfli.connid[1] := '1000'; lt_spfli.countryfr[1] := 'DE'; lt_spfli.countryto[1] := 'US'; et_spfli = select * from :lt_spfli; ENDMETHOD.ENDCLASS.
*&---------------------------------------------------------------------**& Report ztest_amdp5*&---------------------------------------------------------------------**&*&---------------------------------------------------------------------*REPORT ztest_amdp5.CLASS lcl_test_amdp DEFINITION. PUBLIC SECTION. CLASS-METHODS: run.ENDCLASS.CLASS lcl_test_amdp IMPLEMENTATION. METHOD run.* AMDP Method call TRY. IF cl_abap_dbfeatures=>use_features( requested_features = VALUE #( ( cl_abap_dbfeatures=>call_amdp_method ) ) ) = abap_true. NEW zcl_demo_008_amdp( )->get_spfli_details( EXPORTING iv_mandt = sy-mandt IMPORTING et_spfli = DATA(lt_spfli) ). BREAK-POINT. ENDIF. CATCH cx_abap_invalid_param_value. ENDTRY. ENDMETHOD.ENDCLASS.START-OF-SELECTION. lcl_test_amdp=>run( ).