直接使用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.

 

posted @   linhuang  阅读(20)  评论(0编辑  收藏  举报  
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示