screen data get

上一篇 / 下一篇  2008-05-15 08:31:08 / 个人分类:sap

  • 文件版本: V1.0
  • 开发商: 本站原创
  • 文件来源: 本地
  • 界面语言: 简体中文
  • 授权方式: 免费
  • 运行平台: Win9X/Win2000/WinXP

FORM. write_data.

  DATA : lv_mod TYPE i,
         lv_cnt TYPE i .

  sy-lsind = sy-lsind - 1.
  WRITE : AT /(l) sy-uline.
  FORMAT COLOR COL_HEADING.
  WRITE : / '|' NO-GAP, AT (3) 'Sel' NO-GAP,
            '|' NO-GAP, AT (7) 'Status' NO-GAP,
            '|' NO-GAP, AT (15) 'Repair.Order' NO-GAP,
            '|' NO-GAP, AT (12) 'WorkShop' NO-GAP,
            '|' NO-GAP, AT (18)  'Create Man ' NO-GAP,
            '|' NO-GAP, AT (12) 'Create Date' NO-GAP,
            '|' NO-GAP, AT (13) '' NO-GAP,
            '|' NO-GAP, AT (13) '' NO-GAP,
            '|' NO-GAP, AT (13) '' NO-GAP,
            '|' NO-GAP, AT (8) '' NO-GAP,
            '|' NO-GAP.

  WRITE:   / '|' NO-GAP, AT (3) ' ' NO-GAP,
             '|' NO-GAP, AT (7) '' NO-GAP,
             '|' NO-GAP, AT (15) '' NO-GAP,
             '|' NO-GAP, AT (12) 'Item NO' NO-GAP,
             '|' NO-GAP, AT (18)  'Material' NO-GAP,
             '|' NO-GAP, AT (12) 'Model' NO-GAP,
             '|' NO-GAP, AT (13) 'Item Qty' NO-GAP,
             '|' NO-GAP, AT (13) 'Issue Qty' NO-GAP,
             '|' NO-GAP, AT (13) 'GR Qty' NO-GAP,
             '|' NO-GAP, AT (8) 'Unit' NO-GAP,
             '|' NO-GAP.

  FORMAT RESET.
  WRITE : AT /(l) sy-uline.

  CLEAR itab_h .
  LOOP AT itab_h .
    itab_h-index = sy-tabix.
    MODIFY itab_h.
    CLEAR itab_h .
  ENDLOOP .

  CLEAR itab_i .
  LOOP AT itab_i .
    itab_i-index = sy-tabix.
    MODIFY itab_i.
    CLEAR itab_i .
  ENDLOOP .

 

  LOOP AT itab_h .

    ADD 1 TO lv_cnt.
    lv_mod = lv_cnt MOD 2.
    IF lv_mod = 0.
      FORMAT COLOR COL_NORMAL INTENSIFIED ON.
    ELSE.
      FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
    ENDIF.


    IF itab_h-status = 'A0' .
      itab_h-icon = icon_create .
    ELSEIF itab_h-status = 'B0'.
      itab_h-icon = icon_release .
    ENDIF .
    WRITE:/ '|' ,  itab_h-checkbox AS CHECKBOX INPUT ON,
            '|' NO-GAP, AT (7) itab_h-icon NO-GAP,
            '|' NO-GAP, AT (15) itab_h-repair_no NO-GAP,
            '|' NO-GAP, AT (12) itab_h-workshop  NO-GAP,
            '|' NO-GAP, AT (18) itab_h-new_man  NO-GAP,
            '|' NO-GAP, AT (12) itab_h-new_date NO-GAP,
            '|' NO-GAP, AT (13) '' NO-GAP,
            '|' NO-GAP, AT (13) '' NO-GAP,
            '|' NO-GAP, AT (13) '' NO-GAP,
            '|' NO-GAP, AT (8) '' NO-GAP,
            '|' NO-GAP.
*    WRITE : AT /(l) sy-uline.
    HIDE: itab_h-index, itab_h-checkbox , itab_h-repair_no .
    CLEAR itab_i .
    LOOP AT itab_i WHERE repair_no = itab_h-repair_no .

      WRITE:   / '|' NO-GAP, AT (3) ' ' NO-GAP,
           '|' NO-GAP, AT (7) '' NO-GAP,
           '|' NO-GAP, AT (15) '' NO-GAP,
           '|' NO-GAP, AT (12) itab_i-item_no NO-GAP,
           '|' NO-GAP, AT (18) itab_i-matnr NO-GAP,
           '|' NO-GAP, AT (12) itab_i-model NO-GAP,
           '|' NO-GAP, AT (13) itab_i-gamng NO-GAP,
           '|' NO-GAP, AT (13) itab_i-issue_qty NO-GAP,
           '|' NO-GAP, AT (13) itab_i-wemng NO-GAP,
           '|' NO-GAP, AT (8) itab_i-meins NO-GAP,
           '|' NO-GAP.

      HIDE: itab_i-index, itab_i-checkbox .

    ENDLOOP .
    WRITE : AT /(l) sy-uline.
    CLEAR itab_h .

  ENDLOOP .

 


ENDFORM.                    " WRITE_DATA

-------------------------------------------------------------------------------------------------------------------------------

FORM. modify_screen.

  DATA :
        lv_zcheck,
        lv_index LIKE sy-tabix,
        lv_repair LIKE zkrfc_i-repair_no.

  CLEAR itab_h.

  DO.
    CLEAR :  lv_zcheck, lv_index, lv_repair, itab_h.
    READ LINE sy-index FIELD VALUE : itab_h-index  itab_h-checkbox
                                     itab_h-repair_no.

    lv_index = itab_h-index.
    lv_zcheck = itab_h-checkbox.
    lv_repair = itab_h-repair_no.
    CONDENSE lv_repair NO-GAPS.

    IF sy-subrc NE 0.
      EXIT.
    ENDIF.


    READ TABLE itab_h INDEX lv_index .

    IF sy-subrc EQ 0.
      IF lv_repair NE ''.
        itab_h-checkbox = lv_zcheck.
        itab_h-repair_no = lv_repair.
        MODIFY itab_h INDEX lv_index .
      ENDIF .
    ENDIF.

  ENDDO.

 

ENDFORM.                    " MODIFY_SCREEN

TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

我的栏目

日历

« 2008-07-09  
  12345
6789101112
13141516171819
20212223242526
2728293031  

数据统计

  • 访问量: 69
  • 日志数: 1
  • 文件数: 10
  • 建立时间: 2008-04-18
  • 更新时间: 2008-05-15

RSS订阅

Open Toolbar