메뉴 건너뛰기

SAP 한국 커뮤니티

<img src=2.gif>DEMO_DYNPRO_TABCONT_LOOP 예제소스 질문드립니다.

안녕아밥 2011.03.29 18:47 조회 수 : 2681

DEMO_DYNPRO_TABCONT_LOOP


 


REPORT demo_dynpro_tabcont_loop.


CONTROLS flights TYPE TABLEVIEW USING SCREEN 100.


DATA: ok_code TYPE sy-ucomm,
      save_ok TYPE sy-ucomm.


DATA: itab TYPE TABLE OF demo_conn,
      fill TYPE i.
TABLES demo_conn.


DATA: lines TYPE i,
      limit TYPE i.


SELECT * FROM spfli INTO CORRESPONDING FIELDS OF TABLE itab.


CALL SCREEN 100.


MODULE status_0100 OUTPUT.
  SET PF-STATUS 'SCREEN_100'.
  DESCRIBE TABLE itab LINES fill.
  flights-lines = fill.
ENDMODULE.


MODULE fill_table_control OUTPUT.
  READ TABLE itab INTO demo_conn INDEX flights-current_line.
ENDMODULE.


MODULE cancel INPUT.
  LEAVE PROGRAM.
ENDMODULE.


MODULE read_table_control INPUT.
  lines = sy-loopc.
  MODIFY itab FROM demo_conn INDEX flights-current_line.
ENDMODULE.


MODULE user_command_0100 INPUT.
  save_ok = ok_code.
  CLEAR ok_code.
  CASE save_ok.
    WHEN 'NEXT_LINE'.
      flights-top_line = flights-top_line + 1.
      limit = fill - lines + 1.
      IF flights-top_line > limit.
        flights-top_line = limit.
      ENDIF.
    WHEN 'PREV_LINE'.
      flights-top_line = flights-top_line - 1.
      IF flights-top_line < 0.
        flights-top_line = 0.
      ENDIF.
    WHEN 'NEXT_PAGE'.
      flights-top_line = flights-top_line + lines.
      limit = fill - lines + 1.
      IF flights-top_line > limit.
        flights-top_line = limit.
      ENDIF.
    WHEN 'PREV_PAGE'.
      flights-top_line = flights-top_line - lines.
      IF flights-top_line < 0.
        flights-top_line = 0.
      ENDIF.
    WHEN 'LAST_PAGE'.
      flights-top_line =  fill - lines + 1.
    WHEN 'FIRST_PAGE'.
      flights-top_line = 0.
  ENDCASE.
ENDMODULE.


 


 


 


MODULE fill_table_control OUTPUT.
READ TABLE itab INTO demo_conn INDEX flights-current_line.
ENDMODULE.


 


디버깅을 하다보면 itab 의 라인수는 19인데요 왜 인덱스가 10까지만 도는지 궁금합니다.


실행을 하면 10라인까지만 화면에 보여지기때문에 그런가여?


 


MODULE user_command_0100 INPUT. 이부분이 어려운거 같은데


그냥 암기하는게 나을까여?


TYPE-M 부분이 어려운거같네요 초보라서 죄송합니다 ㅜㅜ


 


 



번호 제목 글쓴이 날짜 조회 수
6487 [요청]MESSAGE TYPE에 관해 알고싶습니다!! [7] genius 2008.03.26 8182
6486 [요청]절대값을 어떻게 해용???초보라서 ..부탁해용~~~~~~~ [3] 因緣 2008.10.30 8168
6485 [요청]FUNCTION ALV 에서 DATA_CHANGED 후 REFRESH 기능이 있을까요? [7] 왕초~삽질맨 2008.10.07 8062
6484 [요청]최대값 구하기 [10] 풍뎅이 2007.11.23 7985
6483 <img src=3.gif>소수점 이하 0 지우기 (소수점 값이 없는 부분만 ) [5] 짭군 2009.11.09 7863
6482 <img src=3.gif border=0>mes table 로 인서트 중 dump 가 발생했습니다 [4] 아밥어렵네요 2009.04.15 7715
6481 <b>[완료]</b>Class ALV에서요....TOP-OF-PAGE할려면요?? [4] 복만돌이 2008.07.02 7641
6480 [요청]왕기초질문 LEFT OUTER JOIN [4] 벤또 2007.12.11 7630
6479 [요청]덤프에럽니다. 평소에 쓰는 alv 프로그램 똑같은 형식을 사용해서 alv프로그램을 만들어줬는데요. [2] 아밥걸 2008.07.09 7621
6478 ALV 마이너스 부호 앞으로 옮기기 [1] 모포 2019.07.04 7592
6477 ABAP질문은 아닌데요,,롤인 롤아웃 뜻이 뭔가용?? [2] 다크나잇트 2020.10.29 7534
6476 <img src=2.gif>서버의 파일 읽기 - Read Dataset [6] 찬호사랑 2009.12.14 7528
6475 <b>[완료]</b>chain과 endchain의 쓰임새를 정확히 알고싶습니다. LOOP AT IT_ZCATPSTCD. [8] SD2 2008.04.15 7412
6474 [질문]인터널테이블 복사하는 방법은? [4] 나도아밥퍼 2007.05.20 7397
6473 <img src=3.gif>CTS 릴리즈 취소하는 방법 좀 알려주세요. [3] 기쁨 2011.01.26 7395
6472 <b>[완료]</b>LVC_FIELDCATALOG_MERGE 펑션에 대한 문의 [5] 박상우 2008.07.28 7369
6471 4. include structure~ [1] file sapjoy 2007.02.27 7286
6470 [요청]CHECK NOT~ IS INITIAL에 대해 알고 싶습니다. [8] 앙리 2008.01.24 7268
6469 [요청]number_get_next 함수 사용법이 궁금합니다. [4] copine 2009.03.25 7263
6468 <b>[완료]%_hints oracle 'ORDERED USE_NL (T_00 T_01) INDEX (T_00 "ZPP0010T~Z03")'. 어떻게해석하나요?</b> [7] file 하오 2009.02.21 7255