메뉴 건너뛰기

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

번호 제목 글쓴이 날짜 조회 수
570 REPORT z15_09. sapjoy 2012.08.01 967
569 REPORT z14_19. sapjoy 2012.08.01 968
568 REPORT z10_09. sapjoy 2012.07.30 969
567 REPORT z05_07. sapjoy 2012.07.30 970
566 REPORT z07_03. sapjoy 2012.07.30 970
565 REPORT z05_29. sapjoy 2012.07.30 974
564 REPORT z12_04. sapjoy 2012.07.30 976
563 REPORT Z12_17. sapjoy 2012.07.30 981
562 REPORT z15_08. sapjoy 2012.08.01 982
561 REPORT z17_10 . sapjoy 2012.08.01 984
560 REPORT z09_02. sapjoy 2012.07.30 992
559 REPORT z12_07. sapjoy 2012.07.30 993
558 REPORT z12_32. sapjoy 2012.07.30 994
557 REPORT z17_08 . sapjoy 2012.08.01 994
556 REPORT z05_06. sapjoy 2012.07.30 996
555 REPORT z05_19. sapjoy 2012.07.30 996
554 REPORT z05_03. sapjoy 2012.07.30 998
553 REPORT Z12_16. sapjoy 2012.07.30 998
552 REPORT z12_25. sapjoy 2012.07.30 999
551 REPORT z14_06. [1] sapjoy 2012.08.01 1007