<?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: Optimize a loop in a SAP standard program in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177350#M756199</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;Do a select into table statement. - This will fetch the entire content in one single go. Select-endselect will hit the database for every record!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;then call the perform statement by passing the table content of the select statement.&lt;/P&gt;&lt;P&gt;You can loop inside the perform and do your modifications to the internal table.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Shruthi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 14 Dec 2007 05:01:21 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-12-14T05:01:21Z</dc:date>
    <item>
      <title>Optimize a loop in a SAP standard program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177343#M756192</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi gurus,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Iv been optimizing this code.. inlcude workarea but still the same. It has 1000 records after retrieving the data from the select statement for less than 1 minute. It takes 10-12 mins in looping. I already debug it and PERFORM takes half a minute or less. So, I need to focus with the loop. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;See the codes below.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;[code]&lt;/P&gt;&lt;P&gt;    SELECT (FIELD_LIST)&lt;/P&gt;&lt;P&gt;           INTO CORRESPONDING FIELDS OF TABLE I_ZZUWT PACKAGE SIZE 1000&lt;/P&gt;&lt;P&gt;           FROM  ZZUWT CLIENT SPECIFIED&lt;/P&gt;&lt;P&gt;           WHERE KUNNR IN SELR_KUNNR&lt;/P&gt;&lt;P&gt;             AND RACCT IN SELR_RACCT&lt;/P&gt;&lt;P&gt;             AND RASSC IN SELR_RASSC&lt;/P&gt;&lt;P&gt;             AND RBUKRS IN SELR_RBUKRS&lt;/P&gt;&lt;P&gt;             AND RDATLT IN SELR_RDATLT&lt;/P&gt;&lt;P&gt;             AND RLDNR IN SELR_RLDNR&lt;/P&gt;&lt;P&gt;             AND RPMAX IN SELR_RPMAX&lt;/P&gt;&lt;P&gt;             AND RRCTY IN SELR_RRCTY&lt;/P&gt;&lt;P&gt;             AND RVERS IN SELR_RVERS&lt;/P&gt;&lt;P&gt;             AND RYEAR IN SELR_RYEAR&lt;/P&gt;&lt;P&gt;             AND RCLNT IN MANDTTAB&lt;/P&gt;&lt;P&gt;           GROUP BY (GROUP_LIST).&lt;/P&gt;&lt;P&gt;      LOOP AT I_ZZUWT INTO ZZUWT   .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       ZZUWT                          = I_ZZUWT     .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        PERFORM PZZUWT      USING I_ZZUWT-_COUNTER.&lt;/P&gt;&lt;P&gt;        CLEAR: $RWTAB, ZZUWT                         .&lt;/P&gt;&lt;P&gt;        CLEAR GLDBZ                         .&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;    ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;[/code]&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Dec 2007 09:38:34 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177343#M756192</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-13T09:38:34Z</dc:date>
    </item>
    <item>
      <title>Re: Optimize a loop in a SAP standard program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177344#M756193</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: avoid looping within a select statement,&lt;/P&gt;&lt;P&gt;2: try to read the database with an array fetch,&lt;/P&gt;&lt;P&gt;3: loop over internal table with field-symbols rather than workareas.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Dec 2007 10:08:02 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177344#M756193</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-13T10:08:02Z</dc:date>
    </item>
    <item>
      <title>Re: Optimize a loop in a SAP standard program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177345#M756194</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;can u paste the code what the perform is doing??&lt;/P&gt;&lt;P&gt; PERFORM PZZUWT      USING I_ZZUWT-_COUNTER&lt;/P&gt;&lt;P&gt;may be u can optimise this.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Dec 2007 10:15:26 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177345#M756194</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-13T10:15:26Z</dc:date>
    </item>
    <item>
      <title>Re: Optimize a loop in a SAP standard program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177346#M756195</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Check SQL Trace of your problem&lt;/P&gt;&lt;P&gt;/people/siegfried.boes/blog/2007/09/05/the-sql-trace-st05-150-quick-and-easy&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How long does the SELECT take, how many records are read, what is the minimal time per record. Check the explain, is an index used? or is it a full table scan?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;A full table scan is o.k., if you read more the 10% of the table. If less then add&lt;/P&gt;&lt;P&gt;the client to the WHERE condition, if you really need all clients.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Read all clients from the T000 and add WHERE mandt in (...).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Siegfried&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Dec 2007 12:55:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177346#M756195</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-13T12:55:31Z</dc:date>
    </item>
    <item>
      <title>Re: Optimize a loop in a SAP standard program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177347#M756196</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;do not use select and end-select!, try out the folowing:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT (FIELD_LIST)&lt;/P&gt;&lt;P&gt;           INTO CORRESPONDING FIELDS OF TABLE I_ZZUWT PACKAGE SIZE 1000&lt;/P&gt;&lt;P&gt;           FROM  ZZUWT CLIENT SPECIFIED&lt;/P&gt;&lt;P&gt;           WHERE KUNNR IN SELR_KUNNR&lt;/P&gt;&lt;P&gt;             AND RACCT IN SELR_RACCT&lt;/P&gt;&lt;P&gt;             AND RASSC IN SELR_RASSC&lt;/P&gt;&lt;P&gt;             AND RBUKRS IN SELR_RBUKRS&lt;/P&gt;&lt;P&gt;             AND RDATLT IN SELR_RDATLT&lt;/P&gt;&lt;P&gt;             AND RLDNR IN SELR_RLDNR&lt;/P&gt;&lt;P&gt;             AND RPMAX IN SELR_RPMAX&lt;/P&gt;&lt;P&gt;             AND RRCTY IN SELR_RRCTY&lt;/P&gt;&lt;P&gt;             AND RVERS IN SELR_RVERS&lt;/P&gt;&lt;P&gt;             AND RYEAR IN SELR_RYEAR&lt;/P&gt;&lt;P&gt;             AND RCLNT IN MANDTTAB&lt;/P&gt;&lt;P&gt;           GROUP BY (GROUP_LIST).&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;LOOP AT I_ZZUWT INTO ZZUWT   .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       ZZUWT                          = I_ZZUWT     .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        PERFORM PZZUWT      USING I_ZZUWT-_COUNTER.&lt;/P&gt;&lt;P&gt;        CLEAR: $RWTAB, ZZUWT                         .&lt;/P&gt;&lt;P&gt;        CLEAR GLDBZ                         .&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;endif.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks and Regards, &lt;/P&gt;&lt;P&gt;sooness&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Dec 2007 13:22:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177347#M756196</guid>
      <dc:creator>dev_parbutteea</dc:creator>
      <dc:date>2007-12-13T13:22:04Z</dc:date>
    </item>
    <item>
      <title>Re: Optimize a loop in a SAP standard program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177348#M756197</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;To optimize this loop please follow these steps&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) remove the loop from the select and after the select use the loop.&lt;/P&gt;&lt;P&gt;2) don't use the CORRESPONDING FIELDS command, create the internal table as fields are selected from database table . It will increase the select performance.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please send the code of  PERFORM PZZUWT      USING I_ZZUWT-_COUNTER.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Dec 2007 13:24:46 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177348#M756197</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-13T13:24:46Z</dc:date>
    </item>
    <item>
      <title>Re: Optimize a loop in a SAP standard program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177349#M756198</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;Avoid using SELECT...ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Use FOR ALL ENTRIES rather or/ and  put it into an internal table and use that internal table in the loop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;VJ&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Dec 2007 19:23:43 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177349#M756198</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-13T19:23:43Z</dc:date>
    </item>
    <item>
      <title>Re: Optimize a loop in a SAP standard program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177350#M756199</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;Do a select into table statement. - This will fetch the entire content in one single go. Select-endselect will hit the database for every record!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;then call the perform statement by passing the table content of the select statement.&lt;/P&gt;&lt;P&gt;You can loop inside the perform and do your modifications to the internal table.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Shruthi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 14 Dec 2007 05:01:21 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177350#M756199</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-14T05:01:21Z</dc:date>
    </item>
    <item>
      <title>Re: Optimize a loop in a SAP standard program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177351#M756200</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;maui bayog,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The problem is most likely your subroutine (PERFORM). By your own admission it takes half a minute (30 seconds) to execute. For 1000 records this is multiplied by 1000. For all the 1000 records, execution of the subroutine itself should take 30,000 seconds.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you post the subroutine code we could help you.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 14 Dec 2007 17:42:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177351#M756200</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-14T17:42:49Z</dc:date>
    </item>
    <item>
      <title>Re: Optimize a loop in a SAP standard program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177352#M756201</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mark,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I wanted to but It's too long to paste it... perform has several perform routines a I go through the inner routines these programs are SAP Standards. That's why I'm hesitant to edit the affected areas.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Dec 2007 03:54:14 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177352#M756201</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-19T03:54:14Z</dc:date>
    </item>
    <item>
      <title>Re: Optimize a loop in a SAP standard program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177353#M756202</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Use transaction SE30 to analyse the persormance of the subroutine. It will give you a good idea which of the subroutine called withing the subroutine in question causes the performace to degrade. You can then send us the code in that subroutine and we could help you.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Dec 2007 14:34:11 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/optimize-a-loop-in-a-sap-standard-program/m-p/3177353#M756202</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-19T14:34:11Z</dc:date>
    </item>
  </channel>
</rss>

