메뉴 건너뛰기

SAP 한국 커뮤니티

PROGRAM z13_03.

sapjoy 2012.08.01 19:42 조회 수 : 1155

*&---------------------------------------------------------------------*
*& 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

번호 제목 글쓴이 날짜 조회 수
589 REPORT Z14_18. sapjoy 2012.08.01 900
588 REPORT z14_17. sapjoy 2012.08.01 1023
587 REPORT z14_16. [1] sapjoy 2012.08.01 908
586 REPORT z14_15. sapjoy 2012.08.01 1016
585 REPORT z14_14. sapjoy 2012.08.01 1013
584 REPORT z14_13. sapjoy 2012.08.01 797
583 REPORT z14_12. sapjoy 2012.08.01 851
582 REPORT z14_11. sapjoy 2012.08.01 835
581 REPORT z14_10. sapjoy 2012.08.01 847
580 REPORT z14_09. sapjoy 2012.08.01 799
579 REPORT z14_08. [2] sapjoy 2012.08.01 1007
578 REPORT z14_07. sapjoy 2012.08.01 816
577 REPORT z14_06. [1] sapjoy 2012.08.01 1003
576 REPORT z14_05. sapjoy 2012.08.01 855
575 REPORT z14_04. sapjoy 2012.08.01 929
574 REPORT z14_03. sapjoy 2012.08.01 870
573 REPORT Z14_02. sapjoy 2012.08.01 841
572 REPORT Z14_01. sapjoy 2012.08.01 907
571 PROGRAM z13_05. sapjoy 2012.08.01 1148
570 PROGRAM z13_04. sapjoy 2012.08.01 1019