<?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 regarding performance issue in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-performance-issue/m-p/2343737#M516824</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi experts&lt;/P&gt;&lt;P&gt;suppose one program performance will take 12 hour,regarding performance tunning technique used i minimised 12 hr to 8 hr.&lt;/P&gt;&lt;P&gt;the main question is again what r the methods/performance that we have to use &lt;/P&gt;&lt;P&gt;that decreases 8 hr to 2 hr.i faced recently this question from ibm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks&lt;/P&gt;&lt;P&gt;subhasis&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 08 Jun 2007 09:33:20 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-06-08T09:33:20Z</dc:date>
    <item>
      <title>regarding performance issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-performance-issue/m-p/2343737#M516824</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi experts&lt;/P&gt;&lt;P&gt;suppose one program performance will take 12 hour,regarding performance tunning technique used i minimised 12 hr to 8 hr.&lt;/P&gt;&lt;P&gt;the main question is again what r the methods/performance that we have to use &lt;/P&gt;&lt;P&gt;that decreases 8 hr to 2 hr.i faced recently this question from ibm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks&lt;/P&gt;&lt;P&gt;subhasis&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 08 Jun 2007 09:33:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-performance-issue/m-p/2343737#M516824</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-08T09:33:20Z</dc:date>
    </item>
    <item>
      <title>Re: regarding performance issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-performance-issue/m-p/2343738#M516825</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hope you replied as a good consultant:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IT DEPENDS... and took it from there...:-)&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 09 Jun 2007 03:54:34 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-performance-issue/m-p/2343738#M516825</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-09T03:54:34Z</dc:date>
    </item>
    <item>
      <title>Re: regarding performance issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-performance-issue/m-p/2343739#M516826</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;u should fallow below rules for improving performance of program,&lt;/P&gt;&lt;P&gt;&amp;amp;#61656;	1. First remove occurs 0 and occurs 0,&lt;/P&gt;&lt;P&gt;use types and delcare structure.&lt;/P&gt;&lt;P&gt;then declare internal table.&lt;/P&gt;&lt;P&gt;ex-&lt;/P&gt;&lt;P&gt;types: begin of ty_lfa1,&lt;/P&gt;&lt;P&gt;kunnr like kna1-kunnr,'end of ty_kna1.&lt;/P&gt;&lt;P&gt;data : i_kna1 type standard table of ty_kna1 with header line.&lt;/P&gt;&lt;P&gt;&amp;amp;#61656;	 instead of inner join use for allentries.&lt;/P&gt;&lt;P&gt;&amp;amp;#61656;	into corresponding fields of will decrease performance.&lt;/P&gt;&lt;P&gt;&amp;amp;#61656;	 delete adjacent duplicates from itab_final comparing matnr lgort.&lt;/P&gt;&lt;P&gt;place it outside the loop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;#61656;	before every select statenet check sy-subrc = 0.if sucessful the write another one.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;#61656;	don&amp;#146;t' loop an internal table more than once.&lt;/P&gt;&lt;P&gt;and for better performane follow below points&lt;/P&gt;&lt;P&gt;Always check the driver internal tables is not empty, while using FOR ALL ENTRIES&lt;/P&gt;&lt;P&gt;Avoid for all entries in JOINS&lt;/P&gt;&lt;P&gt;Try to avoid joins and use FOR ALL ENTRIES.&lt;/P&gt;&lt;P&gt;Try to restrict the joins to 1 level only ie only for tables&lt;/P&gt;&lt;P&gt;Avoid using Select *.&lt;/P&gt;&lt;P&gt;Avoid having multiple Selects from the same table in the same object.&lt;/P&gt;&lt;P&gt;Try to minimize the number of variables to save memory. &lt;/P&gt;&lt;P&gt;The sequence of fields in 'where clause' must be as per primary/secondary index ( if any)&lt;/P&gt;&lt;P&gt;Avoid creation of index as far as possible&lt;/P&gt;&lt;P&gt;Avoid operators like &amp;lt;&amp;gt;, &amp;gt; , &amp;lt; &amp;amp; like % in where clause conditions&lt;/P&gt;&lt;P&gt;Avoid select/select single statements in loops.&lt;/P&gt;&lt;P&gt;Try to use 'binary search' in READ internal table. Ensure table is sorted before using BINARY SEARCH.&lt;/P&gt;&lt;P&gt;Avoid using aggregate functions (SUM, MAX etc) in selects ( GROUP BY , HAVING,) &lt;/P&gt;&lt;P&gt;Avoid using ORDER BY in selects&lt;/P&gt;&lt;P&gt;Avoid Nested Selects &lt;/P&gt;&lt;P&gt;Avoid Nested Loops of Internal Tables&lt;/P&gt;&lt;P&gt;Try to use FIELD SYMBOLS.&lt;/P&gt;&lt;P&gt;Try to avoid into Corresponding Fields of&lt;/P&gt;&lt;P&gt;Avoid using Select Distinct, Use DELETE ADJACENT&lt;/P&gt;&lt;P&gt;Go through the following Document&lt;/P&gt;&lt;P&gt;Check the following Links&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_message" href="https://community.sap.com/" __jive_macro_name="message" modifiedtitle="true" __default_attr="1591512"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_message" href="https://community.sap.com/" __jive_macro_name="message" modifiedtitle="true" __default_attr="1429297"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapgenie.com/abap/performance.htm" target="test_blank"&gt;http://www.sapgenie.com/abap/performance.htm&lt;/A&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;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;suresh.d&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Jun 2007 03:59:11 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-performance-issue/m-p/2343739#M516826</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-11T03:59:11Z</dc:date>
    </item>
    <item>
      <title>Re: regarding performance issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-performance-issue/m-p/2343740#M516827</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Depends on database ,how many records in tables ? if you have more than milion then you can not decrease as such you expected ,may be you can decrease 15 min when you tune the code ..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;See the steps :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. Query including select and sorting functionality&lt;/P&gt;&lt;P&gt;Consider the below queries and their levels of efficiencies is saving the execution time.&lt;/P&gt;&lt;P&gt;Code A&lt;/P&gt;&lt;P&gt;tables: mara, mast.&lt;/P&gt;&lt;P&gt;    data: begin of itab_new occurs 0,&lt;/P&gt;&lt;P&gt;             matnr like mara-matnr,&lt;/P&gt;&lt;P&gt;             ernam like mara-ernam,&lt;/P&gt;&lt;P&gt;             mtart like mara-mtart,&lt;/P&gt;&lt;P&gt;             matkl like mara-matkl,&lt;/P&gt;&lt;P&gt;             werks like mast-werks,&lt;/P&gt;&lt;P&gt;      	aenam like mast-aenam,&lt;/P&gt;&lt;P&gt; stlal like mast-stlal,&lt;/P&gt;&lt;P&gt;     end of itab_new.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select f&lt;SUB&gt;matnr f&lt;/SUB&gt;ernam f&lt;SUB&gt;mtart f&lt;/SUB&gt;matkl g&lt;SUB&gt;werks g&lt;/SUB&gt;aenam g~stlal&lt;/P&gt;&lt;P&gt;into table itab_new from mara as f inner join mast as g on&lt;/P&gt;&lt;P&gt;f&lt;SUB&gt;matnr = g&lt;/SUB&gt;matnr where g&lt;SUB&gt;stlal = '01' order by f&lt;/SUB&gt;ernam.&lt;/P&gt;&lt;P&gt;Code B&lt;/P&gt;&lt;P&gt;tables: mara, mast.&lt;/P&gt;&lt;P&gt;data: begin of itab_new occurs 0,&lt;/P&gt;&lt;P&gt;      matnr like mara-matnr,&lt;/P&gt;&lt;P&gt;      ernam like mara-ernam,&lt;/P&gt;&lt;P&gt;      mtart like mara-mtart,&lt;/P&gt;&lt;P&gt;      matkl like mara-matkl,&lt;/P&gt;&lt;P&gt;      werks like mast-werks,&lt;/P&gt;&lt;P&gt;      aenam like mast-aenam,&lt;/P&gt;&lt;P&gt;      stlal like mast-stlal,&lt;/P&gt;&lt;P&gt;end of itab_new.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select f&lt;SUB&gt;matnr f&lt;/SUB&gt;ernam f&lt;SUB&gt;mtart f&lt;/SUB&gt;matkl g&lt;SUB&gt;werks g&lt;/SUB&gt;aenam g~stlal&lt;/P&gt;&lt;P&gt;into table itab_new from mara as f inner join mast as g on f~matnr =&lt;/P&gt;&lt;P&gt;g&lt;SUB&gt;matnr where g&lt;/SUB&gt;stlal = '01'.&lt;/P&gt;&lt;P&gt;sort itab_new by ernam.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;Both the above codes essentially do the same function, but the execution time for code B is considerably lesser than that of Code A. Reason: The Order by clause associated with a select statement increases the execution time of the statement, so it is profitable to sort the internal table once after selecting the data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Performance Improvement Due to Identical Statements &amp;#150; Execution Plan&lt;/P&gt;&lt;P&gt;Consider the below queries and their levels of efficiencies is saving the execution time.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tables: mara, mast.&lt;/P&gt;&lt;P&gt;data: begin of itab_new occurs 0,&lt;/P&gt;&lt;P&gt;      matnr like mara-matnr,&lt;/P&gt;&lt;P&gt;      ernam like mara-ernam,&lt;/P&gt;&lt;P&gt;      mtart like mara-mtart,&lt;/P&gt;&lt;P&gt;      matkl like mara-matkl,&lt;/P&gt;&lt;P&gt;      werks like mast-werks,&lt;/P&gt;&lt;P&gt;      aenam like mast-aenam,&lt;/P&gt;&lt;P&gt;      stlal like mast-stlal,&lt;/P&gt;&lt;P&gt;end of itab_new.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select f&lt;SUB&gt;matnr f&lt;/SUB&gt;ernam f&lt;SUB&gt;mtart f&lt;/SUB&gt;matkl g&lt;SUB&gt;werks g&lt;/SUB&gt;aenam g~stlal&lt;/P&gt;&lt;P&gt;into table itab_new from mara as f inner join mast as g on f~matnr =&lt;/P&gt;&lt;P&gt;g&lt;SUB&gt;matnr where g&lt;/SUB&gt;stlal = '01' . &lt;/P&gt;&lt;P&gt;sort itab_new.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select f&lt;SUB&gt;matnr f&lt;/SUB&gt;ernam&lt;/P&gt;&lt;P&gt;f&lt;SUB&gt;mtart f&lt;/SUB&gt;matkl g&lt;SUB&gt;werks g&lt;/SUB&gt;aenam g~stlal&lt;/P&gt;&lt;P&gt;into table itab_new from mara as&lt;/P&gt;&lt;P&gt;f inner join mast as g on f~matnr =&lt;/P&gt;&lt;P&gt;g&lt;SUB&gt;matnr where g&lt;/SUB&gt;stlal&lt;/P&gt;&lt;P&gt;= '01' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Code D (Identical Select Statements)&lt;/P&gt;&lt;P&gt;tables: mara, mast.&lt;/P&gt;&lt;P&gt;data: begin of itab_new occurs 0,&lt;/P&gt;&lt;P&gt;      matnr like mara-matnr,&lt;/P&gt;&lt;P&gt;      ernam like mara-ernam,&lt;/P&gt;&lt;P&gt;      mtart like mara-mtart,&lt;/P&gt;&lt;P&gt;      matkl like mara-matkl,&lt;/P&gt;&lt;P&gt;      werks like mast-werks,&lt;/P&gt;&lt;P&gt;      aenam like mast-aenam,&lt;/P&gt;&lt;P&gt;      stlal like mast-stlal,&lt;/P&gt;&lt;P&gt;end of itab_new.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select f&lt;SUB&gt;matnr f&lt;/SUB&gt;ernam f&lt;SUB&gt;mtart f&lt;/SUB&gt;matkl g&lt;SUB&gt;werks g&lt;/SUB&gt;aenam g~stlal&lt;/P&gt;&lt;P&gt;into table itab_new from mara as f inner join mast as g on f~matnr =&lt;/P&gt;&lt;P&gt;g&lt;SUB&gt;matnr where g&lt;/SUB&gt;stlal = '01' .&lt;/P&gt;&lt;P&gt;sort itab_new.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select f&lt;SUB&gt;matnr f&lt;/SUB&gt;ernam f&lt;SUB&gt;mtart f&lt;/SUB&gt;matkl g&lt;SUB&gt;werks g&lt;/SUB&gt;aenam g~stlal&lt;/P&gt;&lt;P&gt;into table itab_new from mara as f inner join mast as g on f~matnr =&lt;/P&gt;&lt;P&gt;g&lt;SUB&gt;matnr where g&lt;/SUB&gt;stlal = '01' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Both the above codes essentially do the same function, but the execution time for code B is considerably lesser than that of Code A. Reason: Each SQL statement during the process of execution is converted into a series of database operation phases. In the second phase of conversion (Prepare phase) an &amp;#147;execution  plan&amp;#148; is determined for the current SQL statement and it is stored, if in the program any identical select statement is used, then the same execution plan is reused to save time. So retain the structure of the select statement as the same when it is used more than once in the program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;              &lt;/P&gt;&lt;P&gt;                                         &lt;/P&gt;&lt;P&gt;3. Reducing Parse Time Using Aliasing&lt;/P&gt;&lt;P&gt;A statement which does not have a cached execution plan should be parsed before execution; this parsing phase is a highly time and resource consuming, so parsing time for any sql query must include an alias name in it for the following reason.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;1.	Providing the alias name will enable the query engine to resolve the tables to which the specified fields belong to.&lt;/P&gt;&lt;P&gt;2.	Providing a short alias name, (a single character alias name) is more efficient that providing a big alias name.&lt;/P&gt;&lt;P&gt;Code E&lt;/P&gt;&lt;P&gt;select j&lt;SUB&gt;matnr j&lt;/SUB&gt;ernam j&lt;SUB&gt;mtart j&lt;/SUB&gt;matkl&lt;/P&gt;&lt;P&gt;g&lt;SUB&gt;werks g&lt;/SUB&gt;aenam g~stlal into table itab_new from mara as&lt;/P&gt;&lt;P&gt;j inner join mast as g on j&lt;SUB&gt;matnr = g&lt;/SUB&gt;matnr where&lt;/P&gt;&lt;P&gt;            g~stlal = '01' .&lt;/P&gt;&lt;P&gt;In the above code the alias name used is &amp;#145; j &amp;#145;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4. Performance Tuning Using Order by Clause&lt;/P&gt;&lt;P&gt;If in a SQL query you are going to  read a particular database record based on some key values mentioned in the select statement, then the read query can be very well optimized by ordering the fields in the same order in which we are going to read them in the read query.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Code F&lt;/P&gt;&lt;P&gt;tables: mara, mast.&lt;/P&gt;&lt;P&gt;data: begin of itab_new occurs 0,&lt;/P&gt;&lt;P&gt;      matnr like mara-matnr,&lt;/P&gt;&lt;P&gt;      ernam like mara-ernam,&lt;/P&gt;&lt;P&gt;      mtart like mara-mtart,&lt;/P&gt;&lt;P&gt;      matkl like mara-matkl,&lt;/P&gt;&lt;P&gt;      end of itab_new.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select MATNR ERNAM MTART MATKL from mara into table itab_new where&lt;/P&gt;&lt;P&gt;MTART = 'HAWA' ORDER BY  MATNR ERNAM  MTART MATKL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;read table itab_new with key MATNR = 'PAINT1'   ERNAM = 'RAMANUM'&lt;/P&gt;&lt;P&gt;MTART = 'HAWA'   MATKL = 'OFFICE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Code G&lt;/P&gt;&lt;P&gt;tables: mara, mast.&lt;/P&gt;&lt;P&gt;data: begin of itab_new occurs 0,&lt;/P&gt;&lt;P&gt;      matnr like mara-matnr,&lt;/P&gt;&lt;P&gt;      ernam like mara-ernam,&lt;/P&gt;&lt;P&gt;      mtart like mara-mtart,&lt;/P&gt;&lt;P&gt;      matkl like mara-matkl,&lt;/P&gt;&lt;P&gt;      end of itab_new.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select MATNR ERNAM MTART MATKL from mara into table itab_new where&lt;/P&gt;&lt;P&gt;MTART = 'HAWA' ORDER BY  ERNAM MATKL MATNR MTART.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;read table itab_new with key MATNR = 'PAINT1'   ERNAM = 'RAMANUM'&lt;/P&gt;&lt;P&gt;MTART = 'HAWA'   MATKL = 'OFFICE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the above code F, the read statement following the select statement is having the order of the keys as MATNR, ERNAM, MTART, MATKL. So it is less time intensive if the internal table is ordered in the same order as that of the keys in the read statement.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Code F&lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    &lt;/P&gt;&lt;P&gt;Code G &lt;/P&gt;&lt;P&gt;                         &lt;/P&gt;&lt;P&gt;5. Performance Tuning Using Binary Search&lt;/P&gt;&lt;P&gt;A very simple but useful method of fine tuning performance of a read statement is using &amp;#145;Binary search&amp;#145; addition to it. If the internal table consists of more than 20 entries then the traditional linear search method proves to be more time intensive.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                          &lt;/P&gt;&lt;P&gt;Code H&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select * from mara into corresponding fields of table intab.&lt;/P&gt;&lt;P&gt;sort intab.	&lt;/P&gt;&lt;P&gt;read table intab with key matnr = '11530' binary search.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Code I&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select * from mara into corresponding fields of table intab.&lt;/P&gt;&lt;P&gt;sort intab.	&lt;/P&gt;&lt;P&gt;read table intab with key matnr = '11530'.&lt;/P&gt;&lt;P&gt;        &lt;/P&gt;&lt;P&gt;      &lt;/P&gt;&lt;P&gt;     &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Jun 2007 04:05:59 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-performance-issue/m-p/2343740#M516827</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-11T04:05:59Z</dc:date>
    </item>
    <item>
      <title>Re: regarding performance issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-performance-issue/m-p/2343741#M516828</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;-&amp;gt;first we have to minimise code redundency.&lt;/P&gt;&lt;P&gt;-&amp;gt;avoid inner joins and use FOR ALL ENTRIES.&lt;/P&gt;&lt;P&gt;Always check the driver internal tables is not empty, while using FOR ALL ENTRIES&lt;/P&gt;&lt;P&gt;-&amp;gt;if u are using Database frequently i.e if u want to retrive the data more than one time from the same table depending on conditionthen first write one select statement using all the conditions and store the data into internal table.&lt;/P&gt;&lt;P&gt;make use of READ statement to retrieve data from that internal table ,this will decrese the database utilization.&lt;/P&gt;&lt;P&gt;-&amp;gt;avoid nested looping.&lt;/P&gt;&lt;P&gt;-&amp;gt; if u want o get data depending on checking radio boxes etc,selec the data depending n the condition.i.e&lt;/P&gt;&lt;P&gt;for example if u want to display vendor information when ven check box is clicked,display customer information when cust check box is clicked,instead of retrieving data from all the relavent tables write coding&lt;/P&gt;&lt;P&gt;if ven = 'X'.&lt;/P&gt;&lt;P&gt;write select statement to retrive vendor data.&lt;/P&gt;&lt;P&gt;elseifcust = 'X'.&lt;/P&gt;&lt;P&gt;write select statement to retrive customer  data.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;this will decrese performance very well.&lt;/P&gt;&lt;P&gt;-&amp;gt;make sure u dont have any unused variable declarations etc.&lt;/P&gt;&lt;P&gt;Avoid having multiple Selects from the same table in the same object.&lt;/P&gt;&lt;P&gt;Try to minimize the number of variables to save memory. &lt;/P&gt;&lt;P&gt;The sequence of fields in 'where clause' must be as per primary/secondary index ( if any)&lt;/P&gt;&lt;P&gt;Avoid creation of index as far as possible&lt;/P&gt;&lt;P&gt;Avoid operators like &amp;lt;&amp;gt;, &amp;gt; , &amp;lt; &amp;amp; like % in where clause conditions&lt;/P&gt;&lt;P&gt;Avoid select/select single statements in loops.&lt;/P&gt;&lt;P&gt;Try to use 'binary search' in READ internal table. Ensure table is sorted before using BINARY SEARCH.&lt;/P&gt;&lt;P&gt;Avoid using aggregate functions (SUM, MAX etc) in selects ( GROUP BY , HAVING,) &lt;/P&gt;&lt;P&gt;Avoid using ORDER BY in selects&lt;/P&gt;&lt;P&gt;Avoid Nested Selects &lt;/P&gt;&lt;P&gt;Try to use FIELD SYMBOLS.&lt;/P&gt;&lt;P&gt;Try to avoid into Corresponding Fields of&lt;/P&gt;&lt;P&gt;Avoid using Select Distinct, Use DELETE ADJACENT&lt;/P&gt;&lt;P&gt;Performance Tuning&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/5d0db4c9-0e01-0010-b68f-9b1408d5f234" target="test_blank"&gt;https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/5d0db4c9-0e01-0010-b68f-9b1408d5f234&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sap-img.com/abap/performance-tuning-for-data-selection-statement.htm" target="test_blank"&gt;http://www.sap-img.com/abap/performance-tuning-for-data-selection-statement.htm&lt;/A&gt;&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;P&gt;&lt;A href="https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/abap" target="test_blank"&gt;https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/abap&lt;/A&gt;&lt;EM&gt;Performance&lt;/EM&gt;and+Tuning&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.erpgenie.com/abap/performance.htm" target="test_blank"&gt;http://www.erpgenie.com/abap/performance.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sap-img.com/abap/performance-tuning-for-data-selection-statement.htm" target="test_blank"&gt;http://www.sap-img.com/abap/performance-tuning-for-data-selection-statement.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/abap" target="test_blank"&gt;https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/abap&lt;/A&gt;&lt;EM&gt;Performance&lt;/EM&gt;and+Tuning&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_nw2004s/helpdata/en/c6/617cafe68c11d2b2ab080009b43351/frameset.htm" target="test_blank"&gt;http://help.sap.com/saphelp_nw2004s/helpdata/en/c6/617cafe68c11d2b2ab080009b43351/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_nw2004s/helpdata/en/d1/801f7c454211d189710000e8322d00/frameset.htm" target="test_blank"&gt;http://help.sap.com/saphelp_nw2004s/helpdata/en/d1/801f7c454211d189710000e8322d00/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_thread" href="https://community.sap.com/" __jive_macro_name="thread" modifiedtitle="true" __default_attr="142332"&gt;&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Jun 2007 04:38:29 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-performance-issue/m-p/2343741#M516828</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-11T04:38:29Z</dc:date>
    </item>
  </channel>
</rss>

