FPM十:FORM Repeater

1.创建feeder class:ZCL_FPM_FORM_REP_DEMO

添加接口类:

 

 2.新建全局内表:

DATA:GT_QPGT TYPE TABLE OF QPGT.

3.实列化get_data方法:

  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程序:

5保存,激活。编辑配置:

6.添加UIBB对象:

7.添加UIBB配置对象,点击UIBB配置:

8。输入FEEDER类,配置UIBB

 

9.添加字段:

 

 

10.运行:

 

 

转载于:https://www.cnblogs.com/sapSB/p/11577293.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值