直接使用CDS VIEW 输出SALV
demo to show salv with cds view!
TRY .
DATA IV_CDS_VIEW_NAME TYPE DBTABL.
DATA IO_GUI_CONTAINER TYPE REF TO CL_GUI_CONTAINER.
DATA IO_CALC_FIELD_HANDLER TYPE REF TO IF_SALV_IDA_CALC_FIELD_HANDLER.
DATA RO_ALV_GUI_TABLE_IDA TYPE REF TO IF_SALV_GUI_TABLE_IDA.
IV_CDS_VIEW_NAME = 'ZCDSV_MATERIAL'.
ro_alv_gui_table_ida = cl_salv_gui_table_ida=>create_for_cds_view(
iv_cds_view_name = iv_cds_view_name
io_gui_container = io_gui_container
io_calc_field_handler = io_calc_field_handler
).
CATCH CX_SALV_DB_CONNECTION INTO DATA(LO_SALV_DB_CONNECTION). "
CATCH CX_SALV_DB_TABLE_NOT_SUPPORTED INTO DATA(LO_SALV_DB_TABLE_NOT_SUPPORTED). "
CATCH CX_SALV_IDA_CONTRACT_VIOLATION INTO DATA(LO_SALV_IDA_CONTRACT_VIOLATION).
CATCH CX_SALV_FUNCTION_NOT_SUPPORTED INTO DATA(LO_SALV_FUNTION_NOT_SUPPORTED).
CLEANUP.
IF LO_SALV_DB_CONNECTION IS BOUND.
CLEAR:LO_SALV_DB_CONNECTION.
ENDIF.
IF LO_SALV_DB_TABLE_NOT_SUPPORTED IS BOUND.
CLEAR:LO_SALV_DB_TABLE_NOT_SUPPORTED.
ENDIF.
IF LO_SALV_IDA_CONTRACT_VIOLATION IS BOUND.
CLEAR:LO_SALV_IDA_CONTRACT_VIOLATION.
ENDIF.
IF LO_SALV_FUNTION_NOT_SUPPORTED IS BOUND .
CLEAR:LO_SALV_FUNTION_NOT_SUPPORTED.
ENDIF.
ENDTRY.
IF ro_alv_gui_table_ida IS NOT INITIAL .
ro_alv_gui_table_ida->fullscreen( )->display( ).
ENDIF.
浙公网安备 33010602011771号