메뉴 건너뛰기

SAP 한국 커뮤니티

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

안녕아밥 2011.03.29 09:47 조회 수 : 2647

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 부분이 어려운거같네요 초보라서 죄송합니다 ㅜㅜ


 


 



번호 제목 글쓴이 날짜 조회 수
6447 <img src=3.gif border=0>mes table 로 인서트 중 dump 가 발생했습니다 [4] 아밥어렵네요 2009.04.15 7698
6446 [요청]최대값 구하기 [10] 풍뎅이 2007.11.23 7569
6445 [요청]덤프에럽니다. 평소에 쓰는 alv 프로그램 똑같은 형식을 사용해서 alv프로그램을 만들어줬는데요. [2] 아밥걸 2008.07.09 7494
6444 <b>[완료]</b>Class ALV에서요....TOP-OF-PAGE할려면요?? [4] 복만돌이 2008.07.01 7247
6443 <img src=3.gif>CTS 릴리즈 취소하는 방법 좀 알려주세요. [3] 기쁨 2011.01.26 7157
6442 <img src=3.gif><img src=1.gif>SUBMIT 구문을 이용하지 않고 화면의 SPOOL 번호 구하는 방법은 없나요?? 튀밥 2010.04.28 7147
6441 <img src=1.gif>SQL HINT절 (%_HINTS ORACLE'&max_in_blocking_factor 40&'.) 에 대해 질문드립니다. [5] 아밥 2010.03.16 7074
6440 <b>[완료]</b>LVC_FIELDCATALOG_MERGE 펑션에 대한 문의 [5] 박상우 2008.07.28 7064
6439 [요청]왕기초질문 LEFT OUTER JOIN [4] 벤또 2007.12.10 7053
6438 ALV 마이너스 부호 앞으로 옮기기 [1] 모포 2019.07.04 7041
6437 <b>[완료]%_hints oracle 'ORDERED USE_NL (T_00 T_01) INDEX (T_00 "ZPP0010T~Z03")'. 어떻게해석하나요?</b> [7] file 하오 2009.02.20 7039
6436 reuse_alv_grid_display 에서 data_change 후에 alv에 refresh하여 뿌리는 방법 좀 부탁드립니다. 리코보코 2020.09.18 7029
6435 4. include structure~ [1] file sapjoy 2007.02.27 7018
6434 <b>[완료]</b>select count(*) 구문이 어떤 구문인가요?? [6] bd 2008.05.15 7016
6433 <img src=3.gif>소수점 이하 0 지우기 (소수점 값이 없는 부분만 ) [5] 짭군 2009.11.09 6962
6432 [질문]인터널테이블 복사하는 방법은? [4] 나도아밥퍼 2007.05.19 6886
6431 <b>[완료]</b>chain과 endchain의 쓰임새를 정확히 알고싶습니다. LOOP AT IT_ZCATPSTCD. [8] SD2 2008.04.14 6812
6430 [요청]number_get_next 함수 사용법이 궁금합니다. [4] copine 2009.03.24 6736
6429 <b>[완료]</b>CURRENCY 변환 FUNCTION 사용법에 대하여 질문있습니다. [4] with SAP 2007.12.28 6707
6428 [re] Maintenance view에 sort 기능 추가? [8] sapjoy 2006.12.13 6680