<?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: HELP--PERFORMANCE TUNING in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/help-performance-tuning/m-p/1735688#M319927</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A href="http://www.sap-img.com/abap/abap-fine-tuning.htm" target="test_blank"&gt;http://www.sap-img.com/abap/abap-fine-tuning.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.allsaplinks.com/performanc_tuning.html" target="test_blank"&gt;http://www.allsaplinks.com/performanc_tuning.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Happy New Year..&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;Cheers..&lt;/P&gt;&lt;P&gt;Santhosh Reddy&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 01 Jan 2007 06:16:41 GMT</pubDate>
    <dc:creator>SantoshKallem</dc:creator>
    <dc:date>2007-01-01T06:16:41Z</dc:date>
    <item>
      <title>HELP--PERFORMANCE TUNING</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/help-performance-tuning/m-p/1735684#M319923</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please help me in performance tuning.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;Guide me to the documents and books that are useful for performance tuning of a R/3, ABAP and a JAVA systems.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As im a fresher ill be happy to start with the basics of performance tuning that too of a R/3 system.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please send me the links of documents and e-books that relate to this matter.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Expecting your kind response.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;i&amp;gt;Vineeth&amp;lt;/i&amp;gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 30 Dec 2006 10:06:41 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/help-performance-tuning/m-p/1735684#M319923</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-30T10:06:41Z</dc:date>
    </item>
    <item>
      <title>Re: HELP--PERFORMANCE TUNING</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/help-performance-tuning/m-p/1735685#M319924</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Refer to this link&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.thespot4sap.com/Articles/SAPABAPPerformanceTuning_PerformanceAnalysisTools.asp" target="test_blank"&gt;http://www.thespot4sap.com/Articles/SAPABAPPerformanceTuning_PerformanceAnalysisTools.asp&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 30 Dec 2006 10:09:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/help-performance-tuning/m-p/1735685#M319924</guid>
      <dc:creator>Manohar2u</dc:creator>
      <dc:date>2006-12-30T10:09:40Z</dc:date>
    </item>
    <item>
      <title>Re: HELP--PERFORMANCE TUNING</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/help-performance-tuning/m-p/1735686#M319925</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 can aslo see some examples in Transaction Code - SE30. In this code go to Tips &amp;amp; Tricks..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ashven&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 30 Dec 2006 17:33:07 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/help-performance-tuning/m-p/1735686#M319925</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-30T17:33:07Z</dc:date>
    </item>
    <item>
      <title>Re: HELP--PERFORMANCE TUNING</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/help-performance-tuning/m-p/1735687#M319926</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Check:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/people/rob.burbank/blog/2006/11/16/performance--what-will-kill-you-and-what-will-leave-you-with-only-a-flesh-wound&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and its links.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rob&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 30 Dec 2006 18:04:34 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/help-performance-tuning/m-p/1735687#M319926</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-30T18:04:34Z</dc:date>
    </item>
    <item>
      <title>Re: HELP--PERFORMANCE TUNING</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/help-performance-tuning/m-p/1735688#M319927</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A href="http://www.sap-img.com/abap/abap-fine-tuning.htm" target="test_blank"&gt;http://www.sap-img.com/abap/abap-fine-tuning.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.allsaplinks.com/performanc_tuning.html" target="test_blank"&gt;http://www.allsaplinks.com/performanc_tuning.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Happy New Year..&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;Cheers..&lt;/P&gt;&lt;P&gt;Santhosh Reddy&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Jan 2007 06:16:41 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/help-performance-tuning/m-p/1735688#M319927</guid>
      <dc:creator>SantoshKallem</dc:creator>
      <dc:date>2007-01-01T06:16:41Z</dc:date>
    </item>
    <item>
      <title>Re: HELP--PERFORMANCE TUNING</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/help-performance-tuning/m-p/1735689#M319928</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Vineeth,&lt;/P&gt;&lt;P&gt;You can find realted to this topic by searching through this &lt;/P&gt;&lt;P&gt;website.&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.sap.com/www.esnips.com" target="test_blank"&gt;www.esnips.com&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Balaji Reddy G&lt;/P&gt;&lt;P&gt;**Rewards if answers are useful&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Jan 2007 02:47:51 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/help-performance-tuning/m-p/1735689#M319928</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-01-02T02:47:51Z</dc:date>
    </item>
    <item>
      <title>Re: HELP--PERFORMANCE TUNING</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/help-performance-tuning/m-p/1735690#M319929</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Vineeth,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Here are some performance TIPS &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;u&amp;gt;LOOP AT with WHERE clause&lt;/P&gt;&lt;P&gt;Working with internal tables&lt;/P&gt;&lt;P&gt;For all entries&lt;/P&gt;&lt;P&gt;Tools for performance tuning&lt;/P&gt;&lt;P&gt;Using table buffering&amp;lt;/u&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;LOOP AT with WHERE clause&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you use a LOOP AT statement with a WHERE clause, the table whole will be read through &lt;/P&gt;&lt;P&gt;and not only the entriers that satifies the WHERE clause. This can lead to performance &lt;/P&gt;&lt;P&gt;problems when a very large internal table is read many times with a WHERE clause.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The solution is to sort the table on the keyfields, use a READ statment to find &lt;/P&gt;&lt;P&gt;the first entry that satifies the key. Then you can start the loop here, and check for&lt;/P&gt;&lt;P&gt;changes in the keyfield to exit the loop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do not&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  loop at gi_mseg into g_mseg&lt;/P&gt;&lt;P&gt;    where matnr = p_matnr and                   &lt;/P&gt;&lt;P&gt;          werks = p_werks and                    &lt;/P&gt;&lt;P&gt;          lgort = p_lgort and &lt;/P&gt;&lt;P&gt;          sobkz = space,&lt;/P&gt;&lt;P&gt;  endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Instead use:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Sort internal table with entries from MSEG&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; sort gi_mseg by matnr werks lgort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Find index of first entry that satifies the where clause&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; data:                           &lt;/P&gt;&lt;P&gt;   l_tabix_from like sy-tabix.   &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     &lt;/P&gt;&lt;P&gt;  read table gi_mseg with key matnr = p_matnr                    &lt;/P&gt;&lt;P&gt;                              werks = p_werks                    &lt;/P&gt;&lt;P&gt;                              lgort = p_lgort binary search      &lt;/P&gt;&lt;P&gt;             into g_mseg.                                        &lt;/P&gt;&lt;P&gt;  check sy-tabix &amp;gt; 0.                                            &lt;/P&gt;&lt;P&gt;  move sy-tabix to l_tabix_from.                                 &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Loop over the table from l_tabix_from, check for changes in keyfields, and&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if necessary check other fields.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    loop at gi_mseg into g_mseg from l_tabix_from.    &lt;/P&gt;&lt;P&gt;      if g_mseg-matnr &amp;lt;&amp;gt; p_matnr or                   &lt;/P&gt;&lt;P&gt;         g_mseg-werks &amp;lt;&amp;gt; p_werks or                   &lt;/P&gt;&lt;P&gt;         g_mseg-lgort &amp;lt;&amp;gt; p_lgort.                     &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Stop loop                                    &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        exit.                                         &lt;/P&gt;&lt;P&gt;      endif.                                          &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Check other fields                              &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      check  g_mseg-sobkz = space.                    &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ..... do something ......&lt;/P&gt;&lt;P&gt;     endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;&lt;/P&gt;&lt;P&gt;For all entries&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The for all entries creates a where clause, where all the entries in the driver table are combined with OR. If the number of entries in the driver table is larger than rsdb/max_blocking_factor, several similar SQL statements are executed to limit the length of the WHERE clause. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Some steps that might make FOR ALL ENTRIES more efficient:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Removing duplicates from the the driver table &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Sorting the driver table &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- If possible, convert the data in the driver table to ranges so a BETWEEN statement is used instead of and OR statement:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- FOR ALL ENTRIES IN i_tab&lt;/P&gt;&lt;P&gt;    WHERE mykey &amp;gt;= i_tab-low and&lt;/P&gt;&lt;P&gt;        mykey &amp;lt;= i_tab-high.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;Tools for performance tuning&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The runtime analysis (SE30)&lt;/P&gt;&lt;P&gt;	SQL Trace (ST05)&lt;/P&gt;&lt;P&gt;	Tips and Tricks tool &lt;/P&gt;&lt;P&gt;	The performance database&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;Using table buffering&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Using buffered tables improves the performance considerably. Note that in some cases a statement can not be used with a buffered table, so when using these staments the buffer will be bypassed. These staments are:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Select DISTINCT &lt;/P&gt;&lt;P&gt;	ORDER BY / GROUP BY / HAVING clause &lt;/P&gt;&lt;P&gt;	Any WHERE clasuse that contains a subquery or IS NULL expression &lt;/P&gt;&lt;P&gt;	JOIN &lt;/P&gt;&lt;P&gt;	A SELECT... FOR UPDATE &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you want to explicitly bypass the buffer, use the BYPASS BUFFER addition to the SELECT clause.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ramamurthy &lt;/P&gt;&lt;P&gt;**Rewards if answers are useful&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Jan 2007 11:16:41 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/help-performance-tuning/m-p/1735690#M319929</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-01-02T11:16:41Z</dc:date>
    </item>
  </channel>
</rss>

