메뉴 건너뛰기

SAP 한국 커뮤니티

PROGRAM z13_03.

sapjoy 2012.08.01 19:42 조회 수 : 1162

*&---------------------------------------------------------------------*
*& Module Pool       Z13_02
*&
*&---------------------------------------------------------------------*
PROGRAM  z13_03.

CONTROLS zemp_con TYPE TABLEVIEW USING SCREEN  100.
DATA: gs_cols LIKE LINE OF zemp_con-cols.


TABLES : zemp.
DATA : gt_zemp TYPE TABLE OF zemp.
DATA : ok_code TYPE sy-ucomm,
       save_ok TYPE sy-ucomm.

DATA : gv_fill  TYPE i,
       gv_lines TYPE i,
       gv_limit TYPE i.

 


*&---------------------------------------------------------------------*
*&      Module  STATUS_0100  OUTPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
  SET PF-STATUS 'G100'.

  CLEAR : gt_zemp.
  SELECT * FROM zemp
  INTO CORRESPONDING FIELDS OF TABLE gt_zemp.

  DESCRIBE TABLE gt_zemp LINES gv_fill.
  zemp_con-lines = gv_fill.

ENDMODULE.                 " STATUS_0100  OUTPUT

*&---------------------------------------------------------------------*
*&      Module  READ_TCONTROL  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE read_tcontrol INPUT.

  gv_lines = sy-loopc.

  MODIFY gt_zemp FROM zemp
  INDEX zemp_con-current_line.
ENDMODULE.                 " READ_TCONTROL  INPUT


*&---------------------------------------------------------------------*
*&      Module  USER_COMMAND_0100  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE user_command_0100 INPUT.
  save_ok = ok_code.
  CLEAR ok_code.


  CASE save_ok.
    WHEN 'NEXT_LINE'.
      zemp_con-top_line = zemp_con-top_line + 1.
      gv_limit = gv_fill - gv_lines + 1.
      IF zemp_con-top_line > gv_limit.
        zemp_con-top_line = gv_limit.
      ENDIF.
    WHEN 'PREV_LINE'.
      zemp_con-top_line = zemp_con-top_line - 1.
      IF zemp_con-top_line < 0.
        zemp_con-top_line = 0.
      ENDIF.
    WHEN 'NEXT_PAGE'.
      zemp_con-top_line = zemp_con-top_line + gv_lines.
      gv_limit = gv_fill - gv_lines + 1.
      IF zemp_con-top_line > gv_limit.
        zemp_con-top_line = gv_limit.
      ENDIF.
    WHEN 'PREV_PAGE'.
      zemp_con-top_line = zemp_con-top_line - gv_lines.
      IF zemp_con-top_line < 0.
        zemp_con-top_line = 0.
      ENDIF.
    WHEN 'LAST_PAGE'.
      zemp_con-top_line =  gv_fill - gv_lines + 1.
    WHEN 'FIRST_PAGE'.
      zemp_con-top_line = 0.
  ENDCASE.


ENDMODULE.                 " USER_COMMAND_0100  INPUT
*&---------------------------------------------------------------------*
*&      Module  ZEMP_MODIFY  OUTPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE zemp_modify OUTPUT.
  LOOP AT zemp_con-cols INTO gs_cols.
    IF gs_cols-screen-name = 'ZEMP-EMP_PART'.
      gs_cols-invisible = 1.
      MODIFY zemp_con-cols INDEX sy-tabix FROM gs_cols.
    ENDIF.
  ENDLOOP.
ENDMODULE.                 " ZEMP_MODIFY  OUTPUT


*  LOOP AT SCREEN.
*    IF screen-name = 'ZEMP-EMP_PART'.
*      IF zemp-emp_part = 'SAP FCM'.
*        screen-input = 0.
*        MODIFY SCREEN.
*      ENDIF.
*    ENDIF.
*  ENDLOOP.
*&---------------------------------------------------------------------*
*&      Module  CANCEL  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE cancel INPUT.
  LEAVE PROGRAM.
ENDMODULE.                 " CANCEL  INPUT

번호 제목 글쓴이 날짜 조회 수
590 REPORT Z12_20. sapjoy 2012.07.30 926
589 REPORT z12_10. sapjoy 2012.07.30 927
588 REPORT z05_05. sapjoy 2012.07.30 931
587 REPORT Z12_19 sapjoy 2012.07.30 931
586 REPORT z12_12. sapjoy 2012.07.30 932
585 REPORT z14_04. sapjoy 2012.08.01 932
584 REPORT z17_11 . sapjoy 2012.08.01 934
583 REPORT z15_11. sapjoy 2012.08.01 937
582 REPORT Z16_02. sapjoy 2012.08.01 939
581 REPORT Z07_05. sapjoy 2012.07.30 943
580 REPORT z05_13. sapjoy 2012.07.30 945
579 REPORT z15_27. sapjoy 2012.08.01 946
578 REPORT z05_15. sapjoy 2012.07.30 948
577 REPORT z15_19. sapjoy 2012.08.01 952
576 REPORT Z12_02 sapjoy 2012.07.30 954
575 REPORT z17_09 . sapjoy 2012.08.01 955
574 REPORT z12_09. sapjoy 2012.07.30 960
573 REPORT z17_12 . sapjoy 2012.08.01 962
572 REPORT Z12_18. sapjoy 2012.07.30 967
571 REPORT z15_09. sapjoy 2012.08.01 967