메뉴 건너뛰기

SAP 한국 커뮤니티

[요청]INITIALIZATION과 loop문장에 대한 대한 질문입니다.

로미오 2008.11.09 20:39 조회 수 : 1465

TABLES : vbak.                         " Sales Document: Header Data


SELECT-OPTIONS :
* Sold-to party
  s_kunnr FOR vbak-kunnr,
* Sales Organization
  s_vkorg FOR vbak-vkorg DEFAULT '0100' TO '0200'.


PARAMETERS :
  p_datum TYPE datum DEFAULT sy-datum.


*---------------------------------------------------------------------*
INITIALIZATION.


* Fill S_KUNNR
  CLEAR s_kunnr.
  s_kunnr-sign = 'I'.
  s_kunnr-option = 'EQ'.
  s_kunnr-low = '1000'.
  APPEND s_kunnr.
  s_kunnr-low = '1010'.
  APPEND s_kunnr.
  s_kunnr-low = '1020'.
  APPEND s_kunnr.


  s_kunnr-sign = 'I'.
  s_kunnr-option = 'BT'.
  s_kunnr-low = '2000'.
  s_kunnr-high = '3000'.
  APPEND s_kunnr.


  s_kunnr-sign = 'E'.
  s_kunnr-option = 'BT'.
  s_kunnr-low = '2800'.
  s_kunnr-high = '2900'.
  APPEND s_kunnr.


  CLEAR s_kunnr.
  s_kunnr-sign = 'E'.
  s_kunnr-option = 'EQ'.
  s_kunnr-low = '2700'.
  APPEND s_kunnr.


*---------------------------------------------------------------------*
START-OF-SELECTION.


* Print Selection Parameters
  PERFORM f_print_selections.


*---------------------------------------------------------------------*
*      Form  f_print_selections
*---------------------------------------------------------------------*
FORM f_print_selections .


  DATA:
    l_even TYPE p,
    l_offset TYPE i VALUE 0,


    BEGIN OF lt_info OCCURS 20,
      flag,
      olength TYPE x,
      line  LIKE raldb-infoline, "변형정보
    END OF lt_info.


  CALL FUNCTION 'PRINT_SELECTIONS'
    EXPORTING
      mode      = 'TABLE'
      rname     = sy-cprog
      rvariante = sy-slset
    TABLES
      infotab   = lt_info.


  WRITE :/ '--- SELECTION PARAMETERS ---'(001).
  SKIP.


  LOOP AT lt_info FROM 6.
    IF lt_info-line+1(1) <> '-'.
      l_even = ( sy-tabix + l_offset ) MOD 2.
      IF l_even = 0 AND
         lt_info-line+5(4) <> 'or  '(002) AND
         lt_info-line+5(4) <> 'and '(003).
        WRITE : / lt_info-line+2(30).
      ELSEIF lt_info-line+5(4) = 'or  '(002) OR
             lt_info-line+5(4) = 'and '(003).
        l_offset = 1 - l_offset.
        WRITE : /21 lt_info-line+5(60).
      ELSE.
        WRITE :   lt_info-line+16(49).
      ENDIF.
    ENDIF.
  ENDLOOP.


ENDFORM.                    " f_print_selections


 



1.
INITIALIZATION. 아래 내용에 대한 질문입니다.
조회창에는
s_kunnr-sign = 'I'.
  s_kunnr-option = 'EQ'.
  s_kunnr-low = '1000'.
  APPEND s_kunnr.
만 보이는 것 같은데...
나머지는 어떻게 되는건가요?
나머지는 확인이 않되니 어떤 흐름으로 되는 이해가 않가네요.


 


 


2.
LOOP AT lt_info FROM 6.
    IF lt_info-line+1(1) <> '-'.
      l_even = ( sy-tabix + l_offset ) MOD 2.
      IF l_even = 0 AND
         lt_info-line+5(4) <> 'or  '(002) AND
         lt_info-line+5(4) <> 'and '(003).
        WRITE : / lt_info-line+2(30).
      ELSEIF lt_info-line+5(4) = 'or  '(002) OR
             lt_info-line+5(4) = 'and '(003).
        l_offset = 1 - l_offset.
        WRITE : /21 lt_info-line+5(60).
      ELSE.
        WRITE :   lt_info-line+16(49).
      ENDIF.
    ENDIF.
  ENDLOOP.



위 소스에 대한 질문입니다.
분석해볼려고 하는데 프로그램적으로 이해는 가는데 디버깅을 걸어보니
숫자만 나오고 어떻게 결과처럼 나오는지 이해가 안가네요.
lt_info 테이블내용에 어떻게 저런 결과가 들어가는지 이해가 않가네요.
call function문에 연관이 있는것 같은데..
도저히 분석이 않되네요. 어떻게 이해가 될까요? 설명부탁합니다.


 


그리고 LOOP AT lt_info FROM 6에서 from 6 뭔가요?

번호 제목 글쓴이 날짜 조회 수
2605 <b>[완료]</b>Table Control에서 질문입니다.(해당 계정에 대한 텍스트 나타내기) [2] 냥냥 2008.11.11 1265
2604 [요청]인터널테이블에 담긴 글자를 나눠서 여러줄로 만들고싶은데요~~ [4] 아밥걸 2008.11.11 1214
2603 <b>[완료]</b>write 할때 몇번째 글자부터 보이게 하는 것 아시나요? [2] 해물파전 2008.11.11 1009
2602 [요청]리포트 프로그램 작성할때 경고창!(해결좀 부탁드립니다.) [5] file Top Secret 2008.11.10 1104
2601 [요청][스마트폼] 한 행에 다른 템플릿 출력하고할 경우에.... [4] file 효방 ^-^ 2008.11.10 1606
2600 <b>[완료]</b>라디오버튼 관련 질문입니다.답변부탁드립니다. [1] file 튀밥 2008.11.10 1153
2599 [요청]loop 안에 if문에서 걸렸을때 loop까지 한번에 빠져나오려면?? [5] bizarre 2008.11.10 4790
2598 [요청]abap object에서 ->, =>에 대해 질문입니다. [3] 앙리 2008.11.10 2111
2597 <b>[완료]</b>리포트 프로그램 관련 질문입니다. [5] file 튀밥 2008.11.10 1149
2596 <b>[완료]</b>header있는 인터널테이블과 header없는 인터널 테이블의 차이 [5] 샴바나 2008.11.10 1785
2595 [요청]loop at item 질문.. (중간에 빠져나오려면..) [2] bizarre 2008.11.10 1810
2594 <b>[완료]</b>같은질문을 또 드려봅니다...답변좀 자세하게 부탁드려요. [2] ㅇrㄱlㅈrㄱl 2008.11.10 1284
2593 <img src=3.gif>[요청][급질문] 데이타베이스 뷰를 만들었는데 티코드를 붙이고 싶어요..그냥 테이블에 붙이는 유지 보수 뷰가 아니고요.. [3] sagar 2008.11.10 1284
2592 [요청]구구단을 출력해보려고 합니다. 힌트바랍니다 [1] 아상 2008.11.10 1981
2591 [요청]Dynamic Table(CREATE_DYNAMIC_TABLE) 질문 드립니다. you1228 2008.11.10 2779
2590 <b>[완료]</b>select 하는 구문입니다 도움을 바랍니다. [5] file ABAP쟁이 2008.11.09 1069
» [요청]INITIALIZATION과 loop문장에 대한 대한 질문입니다. [4] 로미오 2008.11.09 1465
2588 <b>[완료]</b>Easy ABAP 교재의 효율적인 공부 순서 방법은 과연 무엇일까요? [8] Top Secret 2008.11.09 1207
2587 [요청]get, read문에 대한 질문입니다. [4] 아로미 2008.11.09 1360
2586 [요청]Sales Order가 취소된 건인지 확인하는 방법은? [3] 김지성 2008.11.07 1291