DATA city1 TYPE spfli-cityfrom VALUE 'BERLIN'.
DATA cid TYPE spfli-connid VALUE '2463'.
CONCATENATE 'CITYFROM = ''' city1 '''' INTO cond.
APPEND cond TO itab.
cond = 'AND'.
APPEND cond TO itab.
CONCATENATE 'CONNID=''' cid '''' INTO cond.
APPEND cond TO itab.
START-OF-SELECTION.
SELECT airpfrom INTO l_airpfrom
FROM spfli
WHERE (itab).
댓글 6
-
Gwang Chul
2009.01.20 02:34
-
activeman
2009.01.20 04:14
DATA CITY1 TYPE SPFLI-CITYFROM VALUE 'BERLIN'.
DATA CID TYPE SPFLI-CONNID VALUE '2463'.
CONCATENATE 'CITYFROM = ''' CITY1 '''' INTO COND.
APPEND COND TO ITAB.
COND = 'AND'.
APPEND COND TO ITAB.
CONCATENATE 'CONNID = ''' CID '''' INTO COND. ==> 칸 띄우는게 중요합니다. CONNID = '2643' 형태로 되어야 에러가 안남.
APPEND COND TO ITAB.
SELECT AIRPFROM ==> SELECT ~ ENDSELECT. 또는 SELECT SINGLE 문을 이용해야 합니다.
INTO L_AIRPFROM
FROM SPFLI
WHERE (ITAB).
ENDSELECT.
WHERE (ITAB)은 동적WHERE절을 구성할때 사용하는 방법입니다.
조건에 따라 WHERE절이 변경될때 사용하는 방법이죠..
즐밥하세요....
-
용스
2009.01.21 17:54
한수 배우고 갑니다.. 감사합니다.. 그런데 동적 itab은 그냥 아무렇게나 선언해도 되나요? -
SD2
2009.01.21 19:40
data: itab(72) occurs 5 with header line
if ex1 = 'X'.
concatenate 'pernr = ''' btab-pernr '''' into wtab.
elseif ex2 = 'X'.
...
elseif..
...
endif.
append itab.
select * ......
.....
where (wtab)
...
endselect.
이런식으로 많이 쓰이는것 같아요!!
-
꽁꽁
2009.04.15 20:47
저도 한수 배웠네요...감사합니다.
-
폭풍질주
2010.08.25 00:07
어렵네요....따옴표 사용법이...
WHERE (itab).이건 처음 보는건데요.
일반적으로 where '' in ''.
where '' = '', 아니면 >,< 등 조건을 줘서 select하는데
where(itab)은 무슨 뜻이예요?