手动创建table control实例

屏幕流代码:

 

 PROCESS BEFORE OUTPUT.
 MODULE STATUS_0100.
LOOP WITH CONTROL tab_crl.
  MODULE filltab1.
ENDLOOP.
PROCESS AFTER INPUT.
 LOOP WITH CONTROL tab_crl.
   MODULE readtab1.
 ENDLOOP.
 MODULE USER_COMMAND_0100.

 

 

主程序代码:

 

 REPORT  ztest_pillar.
DATAok_code TYPE sy-ucomm.
DATAsave_ok TYPE sy-ucomm.
DATAnums TYPE i.
"定义内表存储数据库数据
DATAsp2 LIKE TABLE OF spfli WITH HEADER LINE.
"定义单结构记录,table control中行记录字段值就是参考该结构。而该结构要从SP2内表中取数。
DATAsp1 TYPE spfli.
"增加内表数据
SELECT INTO CORRESPONDING FIELDS OF TABLE sp2 FROM spfli.
"直接调用窗口
CALL SCREEN 100.
"定义表控制对象
CONTROLS tab_crl TYPE TABLEVIEW USING SCREEN 100.
"输出数据看内表有无改变
LOOP AT sp2.
  WRITE/ sp2-carridsp2-connid.
ENDLOOP.
*&---------------------------------------------------------------------*
*&      Module  USER_COMMAND_0100  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE user_command_0100 INPUT.
  save_ok ok_code.
  CLEAR ok_code.
  CASE save_ok.
    WHEN 'EXIT'.
      LEAVE PROGRAM.
  ENDCASE.
ENDMODULE.                 " USER_COMMAND_0100  INPUT
*&---------------------------------------------------------------------*
*&      Module  STATUS_0100  OUTPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
  SET PF-STATUS 'STATUS1'.
*  SET TITLEBAR 'xxx'.
"给tabcontrol增加控制条----------------------------------------------------
  IF nums 0.
    DESCRIBE TABLE sp2 LINES nums.
    tab_crl-lines nums.
  ENDIF.
ENDMODULE.                 " STATUS_0100  OUTPUT
*&---------------------------------------------------------------------*
*&      Module  FILLTAB1  OUTPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE filltab1 OUTPUT.
  READ TABLE sp2 INTO sp1 INDEX tab_crl-current_line.
ENDMODULE.                 " FILLTAB1  OUTPUT
*&---------------------------------------------------------------------*
*&      Module  READTAB1  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE readtab1 INPUT.
  MODIFY sp2 FROM sp1 INDEX tab_crl-current_line.
ENDMODULE.                 " READTAB1  INPUT

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值