Skip to Content
0
Former Member
May 26, 2009 at 11:47 AM

performance issue

164 Views

Hi Experts,

Following are my coding for performance issue....

SELECT

a~erdat

a~zzstyleno

a~zzponumber

a~zzarticleno

a~zzskuno

a~zzcolour

a~zzedisize

a~zzquantity

a~zztotalnopcs

a~zzvolume

a~zzlength

a~zzwidth

a~zzheight

a~zzinchcm

a~zzhscode

a~zzunit_cost

a~zzunit_cost_unit

a~zzreference1

a~zzreference2

a~zzreference3

a~zzreference4

a~zzreference5

a~zzrel_ord_dt

a~vbeln

a~posnr

  • B~KUNNR "CHANGED BY Kishore

b~zzcrgohandoverdt

b~zzreleasedby

b~zzplacereceipt

b~zzsoquantity

b~zzairlinename1

b~zzairlineno1

b~spart

b~vkorg

b~vtweg

b~zzeta

c~kunnr "CHANGED BY Kishore

c~parvw

FROM vbap AS a INNER JOIN vbak AS b ON avbeln = bvbeln

INNER JOIN vbpa AS c ON bvbeln = cvbeln INTO CORRESPONDING FIELDS OF TABLE it_final WHERE vkorg = salesorg AND

b~spart = division AND

vtweg = distchan AND

a~erdat BETWEEN erdat1 AND erdat2 AND

b~auart NE 'ZCQT' AND

b~auart NE 'ZMCQ' AND

b~auart NE 'ZMIQ' AND

b~auart NE 'ZMQT' AND

b~auart NE 'ZMTQ' AND

b~auart NE 'ZMUQ' AND

b~auart EQ 'ZMAE' AND

c~kunnr = customerno AND

parvw IN ('ZD','ZB','AG', 'ZY','WE','ZX','ZO','ZL').

.

SORT it_final BY vbeln posnr.

DELETE ADJACENT DUPLICATES FROM it_final.

*********************************************************************

IF it_final[] IS NOT INITIAL.

SELECT

a~zzfreightmode

a~zzcrgohandoverdt

a~zzreleasedby

a~zzplacereceipt

a~zzsoquantity

a~zzhblhawbno

a~zzcomminvno

a~zzmblmawbno

  • A~KUNNR "CHANGED BY Kishore

a~vbeln

a~zzportofdest

a~audat

a~zzdocrecvdate

a~zzcustaprovdt

a~zzata_dt

a~zzairlinename1

a~zzairlineno1

a~zzeta

a~zzconsapprovdate

a~zzloadingdt

  • a~zzcostapprovdt

b~kunnr "CHANGED BY Kishore

b~parvw

c~name1

a~audat

a~zzcustaprovdt

azzata_dt FROM vbak AS a INNER JOIN vbpa AS b ON avbeln = b~vbeln

INNER JOIN kna1 AS c ON ckunnr = bkunnr

INTO CORRESPONDING FIELDS OF TABLE i_vbak1 FOR ALL ENTRIES IN it_final WHERE a~vbeln = it_final-vbeln

AND parvw IN ('ZD','ZB','AG', 'ZY','WE','ZX','ZO').

SELECT a~vbeln

  • A~KUNNR "CHANGED BY Kishore

b~kunnr "CHANGED BY Kishore

b~parvw

cname1 FROM vbak AS a INNER JOIN vbpa AS b ON avbeln = b~vbeln

INNER JOIN kna1 AS c ON ckunnr = bkunnr INTO CORRESPONDING FIELDS OF TABLE i_vbak2

FOR ALL ENTRIES IN it_final WHERE a~vbeln = it_final-vbeln

  • AND parvw IN ('ZD','ZB','AG', 'ZY','WE','ZX','ZO').

AND parvw IN ('ZB','AG').

  • PARVW = 'WE'.

ENDIF.

  • ADDED JOINING FOR MKPF,VEKP ETC TABLES

***************

IF i_vbak1[] IS NOT INITIAL.

SELECT a~mat_kdauf

a~mblnr

b~budat

b~cputm

FROM mseg AS a INNER JOIN mkpf AS b ON amblnr = bmblnr

INTO CORRESPONDING FIELDS OF TABLE t_mseg

FOR ALL ENTRIES IN i_vbak1 WHERE mat_kdauf = i_vbak1-vbeln AND

bwart = '501'.

IF t_mseg[] IS NOT INITIAL.

SELECT mblnr

zzstarttime

zzenddate

zzendtime FROM migo_badi_examp2 INTO TABLE t_migo_badi_examp2

FOR ALL ENTRIES IN t_mseg WHERE mblnr = t_mseg-mblnr.

ENDIF.

LOOP AT t_mseg.

READ TABLE t_migo_badi_examp2 WITH KEY mblnr = t_mseg-mblnr.

IF sy-subrc = 0.

t_mseg-zzstarttime = t_migo_badi_examp2-zzstarttime.

t_mseg-zzenddate = t_migo_badi_examp2-zzenddate.

t_mseg-zzendtime = t_migo_badi_examp2-zzendtime.

MODIFY t_mseg.

CLEAR t_mseg.

ENDIF.

ENDLOOP.

ENDIF.

IF it_final[] IS NOT INITIAL.

SELECT vbeln

posnr

ntgew

volum

vgbel

vgpos

FROM lips

INTO TABLE t_lips FOR ALL ENTRIES IN it_final

WHERE vgbel = it_final-vbeln AND

vgpos = it_final-posnr.

ENDIF.

IF t_lips[] IS NOT INITIAL.

SELECT a~venum

a~vbeln

a~posnr

a~vemng

b~vhilm

b~zzstuffingdate

bzzstuffingtime FROM vepo AS a INNER JOIN vekp AS b ON avenum = b~venum

INTO CORRESPONDING FIELDS OF TABLE t_vepo

FOR ALL ENTRIES IN t_lips WHERE vbeln = t_lips-vbeln AND

posnr = t_lips-posnr.

ENDIF.

IF t_vepo[] IS NOT INITIAL.

SELECT mara~matnr

mara~matkl

t023t~wgbez60

INTO TABLE t_mara

FROM mara INNER JOIN t023t

ON maramatkl = t023tmatkl

FOR ALL entries IN t_vepo

WHERE matnr = t_vepo-vhilm.

ENDIF.

SELECT a~vbeln

b~tknum

b~exti1

b~zzvoynam1

b~zzvoynam2

b~zzvoyno2

c~dpten

c~dptbg

c~datbg

c~knota

c~knotz

c~belad

FROM vttp AS a INNER JOIN vttk AS b ON atknum = btknum

INNER JOIN vtts AS c ON btknum = ctknum INTO TABLE t_vttk

FOR ALL ENTRIES IN t_lips WHERE vbeln = t_lips-vbeln.

IF i_vbak1[] IS NOT INITIAL.

SELECT vbeln

indate

intime

FROM zmm_provgr_hdr INTO TABLE t_zmm_provgr_hdr FOR ALL ENTRIES IN i_vbak1 WHERE vbeln = i_vbak1-vbeln.

ENDIF.

READ TABLE i_vbak1 INTO wa_vbak1 WITH KEY l_vbeln. "= NUMBER.

READ TABLE t_read INDEX sy-index .

wa_vbak-desc = t_read-tdline.

DELETE ADJACENT DUPLICATES FROM i_vbak1 COMPARING vbeln.

SELECT SINGLE zzportname FROM zsdport1 INTO wa_vbak-port_pod WHERE zzport = wa_vbak-zzportofdest.

****

SELECT SINGLE zzportname FROM zsdport1 INTO wa_vbak-port_loading WHERE zzport = wa_vbak-zzportofloading.

SELECT a~zzponumber

a~zzstyleno

a~zzreference2

a~zzarticleno

a~zzskuno

a~zzedisize

a~zzcolour

a~zzquantity

a~zzgr_wt

a~zzvolume

a~zztotalnopcs

a~zzstyleno

a~zzponumber

a~zzarticleno

a~zzskuno

a~zzcolour

a~zzusercode

a~zzsupliercode

a~zzedisize

a~zzquantity

a~zztotalnopcs

a~vbeln

a~zzvolume

a~zzrel_ord_dt

a~zzlength

a~zzwidth

a~zzheight

a~zzinchcm

a~zzhscode

a~zzunit_cost

a~zzunit_cost_unit

a~zzskuno

a~zzreference1

a~zzreference2

a~zzreference3

a~zzreference4

a~zzreference5

a~posnr

b~indate

b~intime

b~outdate

b~outtime

b~check_point

b~remarks

c~license_num

FROM vbap AS a

LEFT OUTER JOIN zmm_chkpoint_dtl AS b ON avbeln = bvbeln

LEFT OUTER JOIN zmm_chkpoint_hdr AS c ON cvbeln = avbeln

INTO CORRESPONDING FIELDS OF TABLE t_vbap FOR ALL ENTRIES IN it_final

WHERE a~vbeln = it_final-vbeln.

*

SELECT mat_kdauf

mat_kdpos

wempf

bwart

ablad

erfmg INTO CORRESPONDING FIELDS OF TABLE t_gr_mseg

FROM mseg

FOR ALL ENTRIES IN it_final

WHERE mat_kdauf = it_final-vbeln

AND mat_kdpos = it_final-posnr.

  • SELECT wempf

  • bwart

  • ablad

  • erfmg INTO (wempf,

  • bwart,

  • ablad,

  • erfmg) FROM mseg

  • WHERE mat_kdauf = it_final-vbeln

  • AND mat_kdpos = it_final-posnr.

*

l.

Please Suggest me the solution to make better performance.

Thanks Babbal