Skip to Content
0
Former Member
Apr 17, 2010 at 06:06 PM

Help with timeout for select inside loop

143 Views

Hi everyone, im a little confused with this code. Can you help me to optimize it? Its giving Timeout dump.

Thanks so much, I´m new in abap and I tried hard, but its getting worse.

Any idea is welcomed.

LOOP AT it_lips.

SELECT SINGLE *

FROM vbak

WHERE vbeln = it_lips-vgbel.

IF sy-subrc <> 0 OR vbak-vbtyp <> 'C'.

CONTINUE.

ENDIF.

SELECT SINGLE *

FROM vbup

WHERE vbeln = it_lips-vgbel

AND posnr = it_lips-vgpos.

IF sy-subrc = 0 AND vbup-lfgsa = 'C'.

READ TABLE it_likp WITH KEY vbeln = it_lips-vbeln.

IF it_likp-wadat < it_likp-wadat_ist.

it_data-statu = 'N'.

v_countn = v_countn + 1.

ELSE.

it_data-statu = 'S'.

v_counts = v_counts + 1.

ENDIF.

ELSE.

CONTINUE.

ENDIF.

it_data-vbeln = it_lips-vgbel.

it_data-posnr = it_lips-vgpos.

SELECT SINGLE matnr arktx kwmeng vrkme

INTO (it_data-matnr, it_data-arktx, it_data-mengs, it_data-vrkme)

FROM vbap

WHERE vbeln = it_lips-vgbel

AND posnr = it_lips-vgpos.

it_data-menge = it_data-mengs.

it_data-kunnr = vbak-kunnr.

SELECT SINGLE name1

INTO it_data-name1

FROM kna1

WHERE kunnr = it_data-kunnr.

it_data-edatu = it_likp-wadat.

it_data-wadat = it_likp-wadat_ist.

it_data-vkorg = it_likp-vkorg.

APPEND it_data.

CLEAR: it_data, vbak, it_vbep, vbap, kna1, it_lips, it_likp.

ENDLOOP.