메뉴 건너뛰기

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

번호 제목 글쓴이 날짜 조회 수
510 REPORT z15_04. sapjoy 2012.08.01 1155
509 REPORT z12_30. sapjoy 2012.07.30 1160
» PROGRAM z13_03. sapjoy 2012.08.01 1162
507 Report Z15_02 sapjoy 2012.08.01 1164
506 REPORT z15_15. sapjoy 2012.08.01 1168
505 REPORT z05_01. [3] sapjoy 2012.07.30 1170
504 REPORT z15_13. sapjoy 2012.08.01 1177
503 PROGRAM z13_02. sapjoy 2012.08.01 1181
502 REPORT z15_03. sapjoy 2012.08.01 1181
501 REPORT z16_10. sapjoy 2012.08.01 1182
500 REPORT z16_05. sapjoy 2012.08.01 1183
499 REPORT z15_25. [1] sapjoy 2012.08.01 1189
498 report Z12_33 sapjoy 2012.07.30 1193
497 REPORT z15_20. sapjoy 2012.08.01 1193
496 REPORT z12_27. sapjoy 2012.07.30 1208
495 REPORT z15_23. [1] sapjoy 2012.08.01 1215
494 REPORT z15_17. [1] sapjoy 2012.08.01 1217
493 REPORT Z12_22 sapjoy 2012.07.30 1226
492 REPORT z16_04. sapjoy 2012.08.01 1246
491 REPORT z12_06. sapjoy 2012.07.30 1294