<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Performance in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance/m-p/3797025#M913254</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) Use a joing between kna1 and knb1, that will reduce 1 select statement.&lt;/P&gt;&lt;P&gt;2) SELECT vbeln vkorg kunag kunnr lfdat wadat lifnr vstel lfart&lt;/P&gt;&lt;P&gt;FROM likp INTO TABLE it_likp&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN it_lips&lt;/P&gt;&lt;P&gt;WHERE vbeln = it_lips-vbeln&lt;/P&gt;&lt;P&gt;AND vkorg IN s_vkorg&lt;/P&gt;&lt;P&gt;AND wadat IN s_wadat&lt;/P&gt;&lt;P&gt;AND kunag IN s_kunag&lt;/P&gt;&lt;P&gt;AND kunnr IN s_kunwe&lt;/P&gt;&lt;P&gt;AND vstel IN s_vstel&lt;/P&gt;&lt;P&gt;AND lfart IN s_lfart.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In this select statement, conver it_lips-vbeln into a range table so that you can modify the query in this fashion, so that one hit to DB is done:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT vbeln vkorg kunag kunnr lfdat wadat lifnr vstel lfart&lt;/P&gt;&lt;P&gt;FROM likp INTO TABLE it_likp&lt;/P&gt;&lt;P&gt;WHERE vbeln in r_vbeln&lt;/P&gt;&lt;P&gt;AND vkorg IN s_vkorg&lt;/P&gt;&lt;P&gt;AND wadat IN s_wadat&lt;/P&gt;&lt;P&gt;AND kunag IN s_kunag&lt;/P&gt;&lt;P&gt;AND kunnr IN s_kunwe&lt;/P&gt;&lt;P&gt;AND vstel IN s_vstel&lt;/P&gt;&lt;P&gt;AND lfart IN s_lfart.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pls reward points if useful&lt;/P&gt;&lt;P&gt;Shruthi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: Shruthi R on May 21, 2008 5:44 AM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 21 May 2008 03:44:20 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-05-21T03:44:20Z</dc:date>
    <item>
      <title>Performance</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance/m-p/3797022#M913251</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I need to optimize the following code. pls advise me&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_delivery_note_data .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if p_sammg is initial.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Do nothing&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT vbeln werks posnr matnr lfimg erdat ernam meins vgbel lgort&lt;/P&gt;&lt;P&gt;FROM lips INTO TABLE it_lips&lt;/P&gt;&lt;P&gt;*FOR ALL ENTRIES IN it_likp&lt;/P&gt;&lt;P&gt;WHERE werks = p_werks&lt;/P&gt;&lt;P&gt;AND lgort IN s_lgort&lt;/P&gt;&lt;P&gt;AND vbeln IN s_vbeln&lt;/P&gt;&lt;P&gt;AND erdat IN s_erdat&lt;/P&gt;&lt;P&gt;AND ernam IN s_ernam.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Else.&lt;/P&gt;&lt;P&gt;  SELECT VBELN INTO TABLE it_VBSS&lt;/P&gt;&lt;P&gt;    FROM VBSS&lt;/P&gt;&lt;P&gt;    WHERE SAMMG = P_SAMMG.&lt;/P&gt;&lt;P&gt;  CHECK SYST-SUBRC = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT vbeln werks posnr matnr lfimg erdat ernam meins vgbel lgort&lt;/P&gt;&lt;P&gt;FROM lips INTO TABLE it_lips&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN it_vbss&lt;/P&gt;&lt;P&gt;WHERE werks = p_werks&lt;/P&gt;&lt;P&gt;AND VBELN = it_vbss-vbeln&lt;/P&gt;&lt;P&gt;AND lgort IN s_lgort&lt;/P&gt;&lt;P&gt;*AND vbeln IN s_vbeln&lt;/P&gt;&lt;P&gt;AND erdat IN s_erdat&lt;/P&gt;&lt;P&gt;AND ernam IN s_ernam.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF NOT it_lips[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT vbeln vkorg kunag kunnr lfdat wadat lifnr vstel lfart&lt;/P&gt;&lt;P&gt;FROM likp INTO TABLE it_likp&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN it_lips&lt;/P&gt;&lt;P&gt;WHERE vbeln = it_lips-vbeln&lt;/P&gt;&lt;P&gt;AND vkorg IN s_vkorg&lt;/P&gt;&lt;P&gt;AND wadat IN s_wadat&lt;/P&gt;&lt;P&gt;AND kunag IN s_kunag&lt;/P&gt;&lt;P&gt;AND kunnr IN s_kunwe&lt;/P&gt;&lt;P&gt;AND vstel IN s_vstel&lt;/P&gt;&lt;P&gt;AND lfart IN s_lfart.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT  kunnr bukrs&lt;/P&gt;&lt;P&gt;FROM  knb1 INTO TABLE it_knb1&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN it_likp&lt;/P&gt;&lt;P&gt;       WHERE  kunnr = it_likp-kunnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT vbeln bstkd FROM vbkd&lt;/P&gt;&lt;P&gt;INTO TABLE it_vbkd&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN it_lips&lt;/P&gt;&lt;P&gt;WHERE vbeln = it_lips-vgbel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT kunnr name1 name2 stras ort02 pstlz ort01&lt;/P&gt;&lt;P&gt;FROM kna1 INTO TABLE it_kna1&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN it_likp&lt;/P&gt;&lt;P&gt;WHERE kunnr = it_likp-kunnr.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT it_lips.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;it_final-werks = it_lips-werks.&lt;/P&gt;&lt;P&gt;it_final-posnr = it_lips-posnr.&lt;/P&gt;&lt;P&gt;it_final-matnr = it_lips-matnr.&lt;/P&gt;&lt;P&gt;it_final-lfimg = it_lips-lfimg.&lt;/P&gt;&lt;P&gt;it_final-erdat = it_lips-erdat.&lt;/P&gt;&lt;P&gt;it_final-ernam = it_lips-ernam.&lt;/P&gt;&lt;P&gt;*it_final-meins = it_lips-meins.&lt;/P&gt;&lt;P&gt;it_final-vgbel = it_lips-vgbel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    input         = it_final-vgbel&lt;/P&gt;&lt;P&gt; IMPORTING&lt;/P&gt;&lt;P&gt;   output        = it_final-vgbel&lt;/P&gt;&lt;P&gt;          .&lt;/P&gt;&lt;P&gt;READ TABLE it_likp WITH KEY vbeln = it_lips-vbeln.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;READ TABLE it_vbkd WITH KEY vbeln = it_lips-vgbel.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;it_final-bstkd = it_vbkd-bstkd.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;it_final-vbeln = it_likp-vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    input         = it_final-vbeln&lt;/P&gt;&lt;P&gt; IMPORTING&lt;/P&gt;&lt;P&gt;   output        = it_final-vbeln&lt;/P&gt;&lt;P&gt;          .&lt;/P&gt;&lt;P&gt;it_final-vkorg = it_likp-vkorg.&lt;/P&gt;&lt;P&gt;it_final-kunag = it_likp-kunag.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    input         = it_final-kunag&lt;/P&gt;&lt;P&gt; IMPORTING&lt;/P&gt;&lt;P&gt;   output        = it_final-kunag.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;it_final-kunnr = it_likp-kunnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    input         = it_final-kunnr&lt;/P&gt;&lt;P&gt; IMPORTING&lt;/P&gt;&lt;P&gt;   output        = it_final-kunnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;it_final-lfdat = it_likp-lfdat.&lt;/P&gt;&lt;P&gt;it_final-wadat = it_likp-wadat.&lt;/P&gt;&lt;P&gt;it_final-vstel = it_likp-vstel.&lt;/P&gt;&lt;P&gt;*it_final-lfart = it_likp-lfart.&lt;/P&gt;&lt;P&gt;*it_final-lifnr = it_likp-lifnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;READ TABLE it_knb1 WITH KEY kunnr = it_likp-kunnr.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;it_final-bukrs = it_knb1-bukrs.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;READ TABLE it_kna1 WITH KEY kunnr = it_likp-kunnr.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;it_final-name1 = it_kna1-name1.&lt;/P&gt;&lt;P&gt;it_final-name2 = it_kna1-name2.&lt;/P&gt;&lt;P&gt;it_final-stras = it_kna1-stras.&lt;/P&gt;&lt;P&gt;it_final-ort02 = it_kna1-ort02.&lt;/P&gt;&lt;P&gt;it_final-pstlz = it_kna1-pstlz.&lt;/P&gt;&lt;P&gt;it_final-ort01 = it_kna1-ort01.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;it_final-mandt = sy-mandt.&lt;/P&gt;&lt;P&gt;it_final-date = sy-datum.&lt;/P&gt;&lt;P&gt;it_final-time = sy-uzeit.&lt;/P&gt;&lt;P&gt;it_final-user = sy-uname.&lt;/P&gt;&lt;P&gt;it_final-file = p_pcfile.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;APPEND it_final.&lt;/P&gt;&lt;P&gt;DELETE it_final WHERE vbeln EQ space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR : it_lips, it_likp, it_kna1, it_final.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_DELIVERY_NOTE_DATA&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 May 2008 03:06:29 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance/m-p/3797022#M913251</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-21T03:06:29Z</dc:date>
    </item>
    <item>
      <title>Re: Performance</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance/m-p/3797023#M913252</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Kumar,&lt;/P&gt;&lt;P&gt;Use SORT and DELETE ADJASCENT DUPLICATES statement on the Internal tables after each SELECT stmt where FOR ALL ENTRIES is used. Its needed.&lt;/P&gt;&lt;P&gt;And also before every select stmt check whether the comparing / parent table is INITIAL or not...it'll increase the performance...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward if helpful.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 May 2008 03:13:28 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance/m-p/3797023#M913252</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-21T03:13:28Z</dc:date>
    </item>
    <item>
      <title>Re: Performance</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance/m-p/3797024#M913253</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi there....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;first reorganize your select query. in the where conditions, arrange the conditions in such a manner that the one which is most likely to fail should be first and the least likely condition to fail should be the last.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;this is the best optimizing that can be done to this code as the code written by you follows all the optimizing conditions. Good Job!!!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do reward if the above advice is helpful!!!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 May 2008 03:15:34 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance/m-p/3797024#M913253</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-21T03:15:34Z</dc:date>
    </item>
    <item>
      <title>Re: Performance</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance/m-p/3797025#M913254</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) Use a joing between kna1 and knb1, that will reduce 1 select statement.&lt;/P&gt;&lt;P&gt;2) SELECT vbeln vkorg kunag kunnr lfdat wadat lifnr vstel lfart&lt;/P&gt;&lt;P&gt;FROM likp INTO TABLE it_likp&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN it_lips&lt;/P&gt;&lt;P&gt;WHERE vbeln = it_lips-vbeln&lt;/P&gt;&lt;P&gt;AND vkorg IN s_vkorg&lt;/P&gt;&lt;P&gt;AND wadat IN s_wadat&lt;/P&gt;&lt;P&gt;AND kunag IN s_kunag&lt;/P&gt;&lt;P&gt;AND kunnr IN s_kunwe&lt;/P&gt;&lt;P&gt;AND vstel IN s_vstel&lt;/P&gt;&lt;P&gt;AND lfart IN s_lfart.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In this select statement, conver it_lips-vbeln into a range table so that you can modify the query in this fashion, so that one hit to DB is done:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT vbeln vkorg kunag kunnr lfdat wadat lifnr vstel lfart&lt;/P&gt;&lt;P&gt;FROM likp INTO TABLE it_likp&lt;/P&gt;&lt;P&gt;WHERE vbeln in r_vbeln&lt;/P&gt;&lt;P&gt;AND vkorg IN s_vkorg&lt;/P&gt;&lt;P&gt;AND wadat IN s_wadat&lt;/P&gt;&lt;P&gt;AND kunag IN s_kunag&lt;/P&gt;&lt;P&gt;AND kunnr IN s_kunwe&lt;/P&gt;&lt;P&gt;AND vstel IN s_vstel&lt;/P&gt;&lt;P&gt;AND lfart IN s_lfart.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pls reward points if useful&lt;/P&gt;&lt;P&gt;Shruthi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: Shruthi R on May 21, 2008 5:44 AM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 May 2008 03:44:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance/m-p/3797025#M913254</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-21T03:44:20Z</dc:date>
    </item>
    <item>
      <title>Re: Performance</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance/m-p/3797026#M913255</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You have missed, table initial condition check, beore few "for all entries" statements.&lt;/P&gt;&lt;P&gt;use "DELETE ADJACENT DUPLICATE " after each for all entries statement.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 May 2008 03:59:56 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance/m-p/3797026#M913255</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-21T03:59:56Z</dc:date>
    </item>
    <item>
      <title>Re: Performance</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance/m-p/3797027#M913256</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Kumar k,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;FORM get_delivery_note_data .

if p_sammg is initial.


Do nothing 

SELECT vbeln werks posnr matnr lfimg erdat ernam meins vgbel lgort
FROM lips INTO TABLE it_lips
*FOR ALL ENTRIES IN it_likp
WHERE werks = p_werks
AND lgort IN s_lgort
AND vbeln IN s_vbeln
AND erdat IN s_erdat
AND ernam IN s_ernam.

Else.
SELECT VBELN INTO TABLE it_VBSS
FROM VBSS
WHERE SAMMG = P_SAMMG.
CHECK SYST-SUBRC = 0.

SELECT vbeln werks posnr matnr lfimg erdat ernam meins vgbel lgort
FROM lips INTO TABLE it_lips
FOR ALL ENTRIES IN it_vbss
WHERE werks = p_werks
AND VBELN = it_vbss-vbeln
AND lgort IN s_lgort
*AND vbeln IN s_vbeln
AND erdat IN s_erdat
AND ernam IN s_ernam.

endif.

IF NOT it_lips[] IS INITIAL.

SELECT vbeln vkorg kunag kunnr lfdat wadat lifnr vstel lfart
FROM likp INTO TABLE it_likp
FOR ALL ENTRIES IN it_lips
WHERE vbeln = it_lips-vbeln
AND vkorg IN s_vkorg
AND wadat IN s_wadat
AND kunag IN s_kunag
AND kunnr IN s_kunwe
AND vstel IN s_vstel
AND lfart IN s_lfart.

SELECT vbeln bstkd FROM vbkd
INTO TABLE it_vbkd
FOR ALL ENTRIES IN it_lips
WHERE vbeln = it_lips-vgbel.

ENDIF.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Chages required here...&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;U must check for table is initial or not b4 using FOR ALL ENTRIES...&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;which u didn't...&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;The worse effect of it is if the it_LIKP[]  is initial then it will fetch the data from table kna1 and knb1....&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;See the below code ...&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;IF NOT it_LIKP[] IS INITIAL.

SELECT kunnr name1 name2 stras ort02 pstlz ort01
FROM kna1 INTO TABLE it_kna1
FOR ALL ENTRIES IN it_likp
WHERE kunnr = it_likp-kunnr.

SELECT kunnr bukrs
FROM knb1 INTO TABLE it_knb1
FOR ALL ENTRIES IN it_likp
WHERE kunnr = it_likp-kunnr.

ENDIF.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;LOOP AT it_lips.

it_final-werks = it_lips-werks.
it_final-posnr = it_lips-posnr.
it_final-matnr = it_lips-matnr.
it_final-lfimg = it_lips-lfimg.
it_final-erdat = it_lips-erdat.
it_final-ernam = it_lips-ernam.
*it_final-meins = it_lips-meins.
it_final-vgbel = it_lips-vgbel.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
input = it_final-vgbel
IMPORTING
output = it_final-vgbel
.
READ TABLE it_likp WITH KEY vbeln = it_lips-vbeln.
IF sy-subrc = 0.
READ TABLE it_vbkd WITH KEY vbeln = it_lips-vgbel.
IF sy-subrc = 0.
it_final-bstkd = it_vbkd-bstkd.
ENDIF.
it_final-vbeln = it_likp-vbeln.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
input = it_final-vbeln
IMPORTING
output = it_final-vbeln
.
it_final-vkorg = it_likp-vkorg.
it_final-kunag = it_likp-kunag.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
input = it_final-kunag
IMPORTING
output = it_final-kunag.

it_final-kunnr = it_likp-kunnr.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
input = it_final-kunnr
IMPORTING
output = it_final-kunnr.

it_final-lfdat = it_likp-lfdat.
it_final-wadat = it_likp-wadat.
it_final-vstel = it_likp-vstel.
*it_final-lfart = it_likp-lfart.
*it_final-lifnr = it_likp-lifnr.

READ TABLE it_knb1 WITH KEY kunnr = it_likp-kunnr.
IF sy-subrc = 0.
it_final-bukrs = it_knb1-bukrs.
ENDIF.
ENDIF.



READ TABLE it_kna1 WITH KEY kunnr = it_likp-kunnr.
IF sy-subrc = 0.
it_final-name1 = it_kna1-name1.
it_final-name2 = it_kna1-name2.
it_final-stras = it_kna1-stras.
it_final-ort02 = it_kna1-ort02.
it_final-pstlz = it_kna1-pstlz.
it_final-ort01 = it_kna1-ort01.
ENDIF.
it_final-mandt = sy-mandt.
it_final-date = sy-datum.
it_final-time = sy-uzeit.
it_final-user = sy-uname.
it_final-file = p_pcfile.

APPEND it_final.
DELETE it_final WHERE vbeln EQ space.

CLEAR : it_lips, it_likp, it_kna1, it_final.

ENDLOOP.

ENDFORM. " GET_DELIVERY_NOTE_DATA&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope it will solve your problem...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Reward points if useful...&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks &amp;amp; Regards&lt;/P&gt;&lt;P&gt;ilesh 24x7&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 May 2008 05:07:56 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance/m-p/3797027#M913256</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-21T05:07:56Z</dc:date>
    </item>
    <item>
      <title>Re: Performance</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance/m-p/3797028#M913257</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Apart from the above suggestions ,&lt;/P&gt;&lt;P&gt;you can also use field symbols for modifying entries in the internal table.&lt;/P&gt;&lt;P&gt;do not use sort inside the loop.It will reduce the performance of the code. &lt;/P&gt;&lt;P&gt;Also in the select queries where condition, arrange the fields in the order in which teh appear in the table/structure.&lt;/P&gt;&lt;P&gt;In case ur using for all entries give the field of the internal table ur referring to first and then arrange the remaining fields according to the able/structure.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for eg&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select ebeln ebelp aedat &lt;/P&gt;&lt;P&gt;from ekpo&lt;/P&gt;&lt;P&gt;into correspondig fields of table itab2&lt;/P&gt;&lt;P&gt;for all entries in it_itab1&lt;/P&gt;&lt;P&gt;where ebeln = itab-ebeln&lt;/P&gt;&lt;P&gt;and  aedat in so_aedat&lt;/P&gt;&lt;P&gt;and pspnr in so_pspnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please do reward points if you find this useful&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 May 2008 05:08:11 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance/m-p/3797028#M913257</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-21T05:08:11Z</dc:date>
    </item>
  </channel>
</rss>

