Hi Clemens Li,
Thanks for you reply, I just debugged by with few extraction records as below
Data Records/Call: 100
No of Extraction call : 10
And i see that the time is getting consumed during the Fetch statement.
here is the code below,
OPEN CURSOR WITH HOLD s_cursor FOR
SELECT t1~mandt t1~matnr t1~werks t1~stlan t1~stlnr
t1~stlal t2~stlty t2~stlkn t2~stasz t4~stpoz
t4~idnrk t4~postp t4~posnr t4~meins t4~menge
t3~bwkey t3~bwtar t3~verpr t3~vprsv t3~stprs
t3~peinh t6~waers
FROM XXX AS t2 INNER JOIN XXX AS t4
ON t2~stlty = t4~stlty
AND t2~stlnr = t4~stlnr
AND t2~stlkn = t4~stlkn
INNER JOIN XXX AS t1
ON t1~stlnr = t2~stlnr
AND t1~stlal = t2~stlal
INNER JOIN XXX AS t3
ON t4~idnrk = t3~matnr
AND t1~werks = t3~bwkey
INNER JOIN XXX AS t5
ON t3~bwkey = t5~bwkey
INNER JOIN XXX AS t6
ON t5~bukrs = t6~bukrs
WHERE t1~stlan = '5' OR t1~stlan = 'K'
%_HINTS ORACLE 'ordered'.
ENDIF.
* Fetch records into interface table.
FETCH NEXT CURSOR s_cursor
APPENDING CORRESPONDING FIELDS
OF TABLE XX_data
PACKAGE SIZE i_maxsize.
IF sy-subrc <> 0.
CLOSE CURSOR s_cursor.
RAISE ssss_data.
ENDIF.