FPM十:FORM Repeater

1.建立feeder class:ZCL_FPM_FORM_REP_DEMOui

添加接口類:spa

 

 2.新建全局內表:3d

DATA:GT_QPGT TYPE TABLE OF QPGT.
code

3.實列化get_data方法:orm

  METHOD if_fpm_guibb_form_repeater~get_data.
    CASE io_event->mv_event_id.
      WHEN 'FPM_START'.
        SELECT * FROM qpgt INTO TABLE gt_qpgt WHERE SPRACHE = 'E' AND KATALOGART BETWEEN 'Z1' AND 'Z5'.
        ct_data = gt_qpgt.
        ev_data_changed = abap_true.
      WHEN OTHERS.
    ENDCASE.
  ENDMETHOD.

實例化get_definition方法:這裏作分組定義對象

  METHOD if_fpm_guibb_form_repeater~get_definition.
    DATA: lr_struc  TYPE REF TO  cl_abap_structdescr,
          gt_fields TYPE         ddfields,
          gw_fields TYPE         dfies.
    FIELD-SYMBOLS:<fs_field_descr> TYPE fpmgb_s_formrepfield_descr.

    eo_field_catalog ?=  cl_abap_tabledescr=>describe_by_name( 'ZQPGT' ).
    lr_struc    ?=  eo_field_catalog->get_table_line_type( ).
    gt_fields = lr_struc->get_ddic_field_list( p_including_substructres = abap_true ).

    LOOP AT gt_fields INTO gw_fields.
      APPEND INITIAL LINE TO et_field_description ASSIGNING <fs_field_descr>.
      <fs_field_descr>-name = gw_fields-fieldname.
      CASE <fs_field_descr>-name.
        WHEN 'KATALOGART'."這是個二級目錄表,這裏以第一級目錄做爲分組節點
          <fs_field_descr>-allow_grouping = abap_true.
          SELECT
            katalogart AS value
            katalogtxt AS text
            FROM tq15t INTO CORRESPONDING FIELDS OF TABLE <fs_field_descr>-fixed_values WHERE sprache = 'E'.
      ENDCASE.
    ENDLOOP.
  ENDMETHOD.

4.FPM_WB新建新的OVP程序:blog

5保存,激活。編輯配置:接口

6.添加UIBB對象:ip

7.添加UIBB配置對象,點擊UIBB配置:get

8。輸入FEEDER類,配置UIBB

 

9.添加字段:

 

 

10.運行:

相關文章
相關標籤/搜索