Chinaunix首页 | 论坛 | 博客
  • 博客访问: 721403
  • 博文数量: 158
  • 博客积分: 6010
  • 博客等级: 准将
  • 技术积分: 1643
  • 用 户 组: 普通用户
  • 注册时间: 2007-10-11 14:37
个人简介

人法地,地法天,天法道,道法自然

文章分类

全部博文(158)

文章存档

2022年(1)

2020年(3)

2016年(1)

2014年(7)

2013年(4)

2010年(5)

2009年(86)

2008年(25)

2007年(26)

我的朋友

分类:

2009-06-03 22:09:36

Table Control多表设计

Table Control多表设计出现了一个问题,那就是只有其中一个表的垂直滚动有效,其而他的都失效了,这种问题将会给用户带来极大的不便,如果手动增加上下翻页,虽然可以解决问题,但是还是不便。

针对这种现象,并没有什么好的解决方法。网上也曾提到过类似问题,但都没有具体的解决方案。在标准程序中,也没有这样的现象,例如:事务码:me23n()为此,我通过Table Control向导设计来测试多个表格是否也有这种问题的存在。最终通过一个很简单的测试程序也不会有这样的问题,我以为出现这样种现象,很有可能在于程序设计上没有处理好!为了再次证明程序设计上存在的不足,又通过非向导Table Control来设计来测试。程序上基本与Table  Control向导设计自动生成的代码相当。(效果如图)

 

通过TC向导设计:

 

 

Flow Logic:

PROCESS BEFORE OUTPUT.


*&SPWIZARD: PBO FLOW LOGIC FOR TABLECONTROL 'MYTC'
  MODULE MYTC_CHANGE_TC_ATTR.
*&SPWIZARD: MODULE MYTC_CHANGE_COL_ATTR.
  LOOP AT   ITAB
       WITH CONTROL MYTC
       CURSOR MYTC-CURRENT_LINE.
    MODULE MYTC_GET_LINES.
*&SPWIZARD:   MODULE MYTC_CHANGE_FIELD_ATTR
  ENDLOOP.

*&SPWIZARD: PBO FLOW LOGIC FOR TABLECONTROL 'MYITEM'
  MODULE MYITEM_CHANGE_TC_ATTR.
*&SPWIZARD: MODULE MYITEM_CHANGE_COL_ATTR.
  LOOP AT   ITEM
       WITH CONTROL MYITEM
       CURSOR MYITEM-CURRENT_LINE.
    MODULE MYITEM_GET_LINES.
*&SPWIZARD:   MODULE MYITEM_CHANGE_FIELD_ATTR
  ENDLOOP.


PROCESS AFTER INPUT.


*&SPWIZARD: PAI FLOW LOGIC FOR TABLECONTROL 'MYTC'
  LOOP AT ITAB.
    CHAIN.
      FIELD ITAB-MATNR.
      FIELD ITAB-ERSDA.
      FIELD ITAB-ERNAM.
      FIELD ITAB-LAEDA.
      FIELD ITAB-AENAM.
      FIELD ITAB-VPSTA.
      FIELD ITAB-PSTAT.
      FIELD ITAB-LVORM.
      FIELD ITAB-MTART.
      FIELD ITAB-MBRSH.
      FIELD ITAB-MATKL.
      FIELD ITAB-BISMT.
      FIELD ITAB-MEINS.
      MODULE MYTC_MODIFY ON CHAIN-REQUEST.
    endchain.
    FIELD ITAB-MARK
      MODULE MYTC_MARK ON REQUEST.
  ENDLOOP.
  MODULE MYTC_USER_COMMAND.
*&SPWIZARD: MODULE MYTC_CHANGE_TC_ATTR.
*&SPWIZARD: MODULE MYTC_CHANGE_COL_ATTR.

*&SPWIZARD: PAI FLOW LOGIC FOR TABLECONTROL 'MYITEM'
  LOOP AT ITEM.
    CHAIN.
      FIELD ITEM-MANDT.
      FIELD ITEM-WERKS.
      FIELD ITEM-LGORT.
      FIELD ITEM-LGOBE.
      FIELD ITEM-SPART.
      FIELD ITEM-XLONG.
      FIELD ITEM-XBUFX.
      FIELD ITEM-DISKZ.
      FIELD ITEM-XBLGO.
    endchain.
    FIELD ITEM-MARK
      MODULE MYITEM_MARK ON REQUEST.
  ENDLOOP.
  MODULE MYITEM_USER_COMMAND.
*&SPWIZARD: MODULE MYITEM_CHANGE_TC_ATTR.
*&SPWIZARD: MODULE MYITEM_CHANGE_COL_ATTR.

阅读(1687) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~