OOALV 多屏幕布局管理

IS_VARIANT TYPE DISVARIANT "定义显示器格式
IS_VARIANT-REPORT = SY-REPID.

DATA: LT_EXCLUDE TYPE UI_FUNCTIONS.

IF ZDHZ = ‘’.
IS_VARIANT-HANDLE = 1.
CREATE OBJECT CUSTOM_CONTAINER
EXPORTING
CONTAINER_NAME = SCRFNAME
EXCEPTIONS
CNTL_ERROR = 1
CNTL_SYSTEM_ERROR = 2
CREATE_ERROR = 3
LIFETIME_ERROR = 4
LIFETIME_DYNPRO_DYNPRO_LINK = 5.

  • create an instance of alv control
    CREATE OBJECT GRID1
    EXPORTING
    I_PARENT = CUSTOM_CONTAINER.

  • Set a titlebar for the grid control

    PERFORM BUILD_FIELDCAT_H CHANGING GT_FIELDCAT.

    PERFORM EXCLUDE_TB_FUNCTIONS CHANGING LT_EXCLUDE.
    PERFORM BUILD_DATA." CHANGING GT_OUTTAB[].
    ELSE.
    IS_VARIANT-HANDLE = 3.
    CREATE OBJECT CUSTOM_CONTAINER
    EXPORTING
    CONTAINER_NAME = SCRFNAME4
    EXCEPTIONS
    CNTL_ERROR = 1
    CNTL_SYSTEM_ERROR = 2
    CREATE_ERROR = 3
    LIFETIME_ERROR = 4
    LIFETIME_DYNPRO_DYNPRO_LINK = 5.

  • create an instance of alv control
    CREATE OBJECT GRID1
    EXPORTING
    I_PARENT = CUSTOM_CONTAINER.
    PERFORM BUILD_FIELDCAT_H1 CHANGING GT_FIELDCAT.
    PERFORM EXCLUDE_TB_FUNCTIONS CHANGING LT_EXCLUDE.
    PERFORM BUILD_DATA ."CHANGING GT_HJ[].
    ENDIF.

    IF ZDHZ = ‘’.
    LOOP AT GT_OUTTAB."by zyg date20190923

  • 可利用量=备货数量-后台已备货数量

  • GT_OUTTAB-KLYL = GT_OUTTAB-BHSL - GT_OUTTAB-B_KWMENG.

  • 已预留量=后台已备货数量-已交货量

  • GT_OUTTAB-YYLL       =  GT_OUTTAB-B_KWMENG -   GT_OUTTAB-YCHL.
    GT_OUTTAB-B_KWMENG1  = GT_OUTTAB-B_KWMENG.
    REPLACE ALL OCCURRENCES OF  '.000'  IN GT_OUTTAB-B_KWMENG1  WITH SPACE.
    GT_OUTTAB-KWMENGT    = GT_OUTTAB-KWMENG.
    REPLACE ALL OCCURRENCES OF  '.000'  IN GT_OUTTAB-KWMENGT  WITH SPACE.
    MODIFY GT_OUTTAB ."TRANSPORTING KLYL YYLL.
    

    ENDLOOP.

    GS_LAYOUT-STYLEFNAME = ‘CELLTAB’.
    GS_LAYOUT-GRID_TITLE = SPACE.

    CALL METHOD GRID1->SET_TABLE_FOR_FIRST_DISPLAY
    EXPORTING
    I_STRUCTURE_NAME = ‘gt_outtab’
    IS_LAYOUT = GS_LAYOUT
    IT_TOOLBAR_EXCLUDING = LT_EXCLUDE
    I_SAVE = ‘A’
    I_DEFAULT = ‘X’
    IS_VARIANT = IS_VARIANT
    CHANGING
    IT_FIELDCATALOG = GT_FIELDCAT
    IT_OUTTAB = GT_OUTTAB[].

    CREATE OBJECT EVENT_RECEIVER.
    SET HANDLER EVENT_RECEIVER->HANDLE_DOUBLE_CLICK FOR GRID1.


CALL METHOD GRID1->SET_READY_FOR_INPUT
  EXPORTING
    I_READY_FOR_INPUT = 1.

"调明细表
  • data: ls_outtab like line of gt_outtab.

  • " read table gt_outtab index e_row-index into ls_outtab.

  • perform read_list using ls_outtab

  •                           changing gv_outtab[].
    

    PERFORM CREATE_DETAIL_LIST.

    ELSE.

    GS_LAYOUT-STYLEFNAME = ‘CELLTAB’.
    GS_LAYOUT-GRID_TITLE = SPACE.

    CALL METHOD GRID1->SET_TABLE_FOR_FIRST_DISPLAY
    EXPORTING
    I_STRUCTURE_NAME = ‘GT_HJ’
    IS_LAYOUT = GS_LAYOUT
    IT_TOOLBAR_EXCLUDING = LT_EXCLUDE
    I_SAVE = ‘A’
    I_DEFAULT = ‘X’
    IS_VARIANT = IS_VARIANT
    CHANGING
    IT_FIELDCATALOG = GT_FIELDCAT
    IT_OUTTAB = GT_HJ[].

    CREATE OBJECT EVENT_RECEIVER.
    SET HANDLER EVENT_RECEIVER->HANDLE_DOUBLE_CLICK FOR GRID1.


CALL METHOD GRID1->SET_READY_FOR_INPUT
  EXPORTING
    I_READY_FOR_INPUT = 1.

ENDIF.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值