메뉴 건너뛰기

SAP 한국 커뮤니티

1. 첫번째


 

SELECT belnr INTO CORRESPONDING FIELDS OF TABLE itab_belnr
    FROM bkpf
     WHERE bukrs  EQ  pbukrs
       AND gjahr  EQ  pgjahr
       AND monat IN pmonat
       AND stblg  EQ  space.
   -> 회계전표번호만 가지고 옵니다.


 

LOOP AT itab_belnr.
    belnr_r_t-sign = 'I'.
    belnr_r_t-option = 'EQ'.
    belnr_r_t-low = itab_belnr-belnr.
    belnr_r_t-high = ''.
    APPEND belnr_r_t. -> 레인지 변수안에 회계전표를 넣습니다.
  ENDLOOP.


 

SELECT single  belnr shkzg dmbtr hkont buzei INTO CORRESPONDING FIELDS OF wa1
   FROM bseg
   WHERE bukrs EQ pbukrs
   AND gjahr EQ pgjahr
   AND belnr IN belnr_r_t
    AND hkont IN psaknr.
-> 회계변수와 맞는 회계번호와 차대지시자 금액 계정 항순을 가지고 옵니다.


 


위와 같이 프로그램을 짲더니 마지막 부분에 AND belnr IN belnr_r_t 부분의 조건(범위)이 너무 많아서


DB와 연결이 끊어 집니다. belnr_r_t의 값이 보통 10만건을 넘는것이라서 'DBIF_RSQL_INVALID_RSQL'이라는 덤프가 발생합니다.


 


원래는 아래과 같이 짲는데요 시간이 너무 걸리는게 만약 belnr이 10만건 이상이면 db접속이 10만이상이라는거자나요


그래서 속도가 정말 안 나오더군요.


2.번째


 

SELECT belnr INTO CORRESPONDING FIELDS OF TABLE itab_belnr
    FROM bkpf
     WHERE bukrs  EQ  pbukrs
       AND gjahr  EQ  pgjahr
       AND monat IN pmonat
       AND stblg  EQ  space.


 


 

LOOP AT itab_belnr.
  SELECT belnr shkzg dmbtr hkont INTO CORRESPONDING  FIELDS OF TABLE itab_bseg
   FROM bseg
   WHERE bukrs EQ pbukrs
   AND gjahr EQ pgjahr
    AND hkont IN psaknr
    AND belnr EQ itab_belnr-belnr.
ENDLOOP.


 


그래서 생각하는게 서브커리 아니면 조인을 해야 할듯 합니다.


어느것을 사용하는게 속도를 더 올릴수 있는지 시간 되시면 커리도 쫌 만들어 주시면 감사하겠습니다.


 


서브 커리로 하면 왠지


 

SELECT belnr shkzg dmbtr hkont APPENDING CORRESPONDING FIELDS OF TABLE itab_bseg_1
    FROM bseg
    WHERE bukrs EQ pbukrs
   AND gjahr EQ pgjahr
    AND hkont IN psaknr
    AND belnr IN ( SELECT belnr 
     FROM bkpf
     WHERE bukrs  EQ  pbukrs
       AND gjahr  EQ  pgjahr
       AND monat IN pmonat
       AND stblg  EQ  space ).


이런 삘일것 같은데 첫번째


테스트하는데 1시간 이상 걸려요.. 너무 느려요


아무리 생각해도 2번째와 비슷하게도 in안에 조건이 너무 많아서 db접속이 끊길것 같네요.


bkpf에서는 그냥 회계 전표번호(조건이 됨)만 가져옵니다. bseg에 있기 때문에 조인을 할필요는 없는것 같은데요


쫌 도와 주십시요


참고로 세번째와 같이 서브 커리를 작성시에는


Sub-queries are only valid for transparent tables: "BSEG".  
라는 에러가 발생합니다.


 


 

번호 제목 글쓴이 날짜 조회 수
3599 <img src=3.gif border=0>오른쪽 2번째의 2글자 땡겨오기? [8] 용군 2009.04.28 1429
3598 <img src=3.gif><img src=2.gif border=0>트리구조의 CLASS ALV 에서 특정필드 입력 받을수 있게 하는 방법이 궁금합니다. [4] Norton 2009.04.28 1004
3597 <img src=2.gif border=0>ALV Field Title내 날짜 능동전환에 대해 문의드립니다. [3] 하오칸님 2009.04.28 896
3596 <img src=3.gif border=0>업체별 월 매출 액 리스트 를 만들려 하는데요 [7] 쿵쓰 2009.04.28 997
3595 <img src=3.gif border=0>스탠다드 COPY PGM 의 SELECT 문장 속도개선에 관해서 질문드립니다. [5] hccpi 2009.04.28 1304
» <img src=3.gif border=0>효율적인 커리 쫌 만들어주세요 서브커리 조인 어느것이 좋을까요? [10] 아밥고지를 찾아서 2009.04.28 2202
3593 <img src=2.gif border=0>slis_t_fieldcat_alv로 alv화면에서 추가될수 있는 필드수 제한 여부 [2] Dave 2009.04.27 1549
3592 <img src=2.gif border=0>특정날짜의 계정잔액을 가져오는 펑션이없을까요? [1] 마시멜로우 2009.04.27 1045
3591 <img src=3.gif border=0>FIELDCATALOG 에서 금액 필드를 XXX,XXX 로 변경하는 방법를 찾습니다. [4] SSong 2009.04.27 1117
3590 <img src=3.gif border=0>시산표를 만들고 있습니다. 그런데 인터널테이블용량 문제와 속도 문제가 있습니다. [3] 아밥고지를 찾아서 2009.04.27 990
3589 <img src=2.gif border=0>NAST 테이블과 다른 테이블과의 연동성에 대해서 궁금합니다. [2] .... 2009.04.27 1238
3588 <img src=3.gif border=0><img src=3.gif border=0>캐리터 변환에 관한 질문입니다. [5] 아밥돌이 2009.04.27 872
3587 <img src=3.gif border=0>alv에서 셀값을 통해 글자색, 소숫점 변경 할 수 있나요? [3] 불근모자 2009.04.25 1939
3586 <img src=3.gif border=0>공란 채워지는 문제... 질문입니다. [3] 퐈이링 2009.04.25 1222
3585 <img src=3.gif border=0>양식은 어떻게 다운받을수 있을까요 ? [3] 쿠궁 2009.04.25 1345
3584 <img src=3.gif border=0>tables 의 의미를 정확히 알고 싶어요 [11] 아밥돌이 2009.04.24 1192
3583 <img src=2.gif border=0>FROM~TO 라는 구문이 있나요?............................ [5] STAR 2009.04.24 952
3582 <img src=2.gif border=0>ECC 6.0 에서 추가된 ABAP 기능들과 사용예를 알고 싶은데요. [6] 별이 2009.04.24 969
3581 <img src=2.gif border=0>레이아웃 편집기가 되지 않습니다... [5] Bizzard.Chul 2009.04.23 993
3580 <img src=3.gif border=0>4.6 에서 xml 파일 생성 또는 읽기 [6] woong 2009.04.22 1711