Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

select query

Former Member
0 Likes
349

Hi all,

I wrote logic like this.But it getting performance problem.

How to write this query using for all entries.Please give me the solution.

urgent.

SELECT * INTO TABLE wknvv

FROM knvv

WHERE vkorg IN sales_or

AND vtweg IN dist_cha

AND spart IN div

AND vkbur IN sales_of .

LOOP AT wknvv .

SELECT vbeln auart zzmax_cpi INTO (wlist-vbeln,wlist-auart,max)

FROM vbak

WHERE

vbtyp = 'G'

AND kunnr = wknvv-kunnr

AND auart IN contr_ty.

max1 = max.

IF sy-subrc = 0 AND max1 IS NOT INITIAL .

SELECT * INTO wvbap FROM vbap

WHERE vbeln = wlist-vbeln

AND abgru = ''.

IF sy-subrc = 0.

SELECT SINGLE * FROM veda INTO wveda

WHERE vbeln = wlist-vbeln

AND vposn = wvbap-posnr

AND vkuegru = ''

AND venddat IN dates .

IF sy-subrc = 0.

MOVE-CORRESPONDING wvbap TO wlist .

MOVE-CORRESPONDING wveda TO wlist .

MOVE-CORRESPONDING wknvv TO wlist .

APPEND wlist.

ENDIF .

ENDIF.

ENDSELECT.

CLEAR wlist.

ENDIF.

ENDSELECT .

ENDLOOP.

regards,

rakesh.

1 REPLY 1
Read only

Former Member
0 Likes
319

Hi Rakesh,

rite now i m not on the system but

you can write the query like this.

SELECT * INTO TABLE wknvv

FROM knvv

WHERE vkorg IN sales_or

AND vtweg IN dist_cha

AND spart IN div

AND vkbur IN sales_of .

  • then do the for all entries of WKNW

  • CREATE a table type with 3 fields for WLIST

SELECT vbeln auart zzmax_cpi

INTO TABLE wlist

FOR ALL ENTRIES IN wknw

FROM vbak

WHERE

vbtyp = 'G'

AND kunnr = wknvv-kunnr

AND auart IN contr_ty.

delete wlist where zzmax_cpi = 0.

SELECT * INTO TABLE wvbap

FROM vbap

FOR ALL ENTRIES OF wlist

WHERE vbeln = wlist-vbeln

AND abgru = ''.

IF sy-subrc = 0.

SELECT SINGLE *

FROM veda

INTO TABLE wveda

FOR ALL ENTRIES OF wlist

WHERE vbeln = wlist-vbeln

AND vposn = wvbap-posnr

AND vkuegru = ''

AND venddat IN dates .

  • here you have to create two more Internal tables WVEDA and WLIST

Hope this is useful to u...