<?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 Performance Issues in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324736#M166604</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;I am posting my sample code for subroutine. Can anyone please suggest me some means to improve the performance of this code. This program takes almost 17 hours in our DR and PR. So using se30 wont help me to analyze it immediately . Also I know I need to eliminate the nested selects and select * statement. Can anyone suggest me any other tips to  improve the performance of this program. Will secondary indexes help me in this regard ?&lt;/P&gt;&lt;P&gt;Code sample :&lt;/P&gt;&lt;P&gt;*********************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_data_no_sobsk.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Extract the material by plant, then corresponding details-----&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT    *&lt;/P&gt;&lt;P&gt;  FROM      marc&lt;/P&gt;&lt;P&gt;  WHERE     werks IN s_werks.                        &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; and       sobsk ne space. &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; check marc-sobsk ca 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'. &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;Material Descriptions&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CLEAR     makt.&lt;/P&gt;&lt;P&gt;    SELECT    *&lt;/P&gt;&lt;P&gt;    FROM      makt&lt;/P&gt;&lt;P&gt;    WHERE     matnr = marc-matnr&lt;/P&gt;&lt;P&gt;     AND      spras IN s_spras.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;General Material Data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CLEAR     mara.&lt;/P&gt;&lt;P&gt;      SELECT    *&lt;/P&gt;&lt;P&gt;      FROM      mara&lt;/P&gt;&lt;P&gt;      WHERE     matnr = marc-matnr&lt;/P&gt;&lt;P&gt;        AND     mtart IN s_mtart.&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;Plant description for destination company&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        CLEAR     t001w-name1.&lt;/P&gt;&lt;P&gt;        SELECT    name1&lt;/P&gt;&lt;P&gt;        UP TO     1 ROWS&lt;/P&gt;&lt;P&gt;        INTO      t_material-dstcomp&lt;/P&gt;&lt;P&gt;        FROM      t001w&lt;/P&gt;&lt;P&gt;        WHERE     werks = marc-werks.&lt;/P&gt;&lt;P&gt;        ENDSELECT.&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;Material Valuation&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        CLEAR     mbew.&lt;/P&gt;&lt;P&gt;        SELECT    *&lt;/P&gt;&lt;P&gt;        UP TO     1 ROWS&lt;/P&gt;&lt;P&gt;        FROM      mbew&lt;/P&gt;&lt;P&gt;        WHERE     matnr = marc-matnr&lt;/P&gt;&lt;P&gt;          AND     bwkey = marc-werks.&lt;/P&gt;&lt;P&gt;        ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Material Valuation&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        CLEAR     t460t-ltext.&lt;/P&gt;&lt;P&gt;        SELECT    SINGLE ltext&lt;/P&gt;&lt;P&gt;        INTO      t_material-ltext&lt;/P&gt;&lt;P&gt;        FROM      t460t&lt;/P&gt;&lt;P&gt;        WHERE     werks = marc-werks&lt;/P&gt;&lt;P&gt;          AND     sobsl = marc-sobsk&lt;/P&gt;&lt;P&gt;          AND     spras IN s_spras.&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;format internal table with fields ready for unix&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        MOVE-CORRESPONDING mara TO t_material.&lt;/P&gt;&lt;P&gt;        MOVE-CORRESPONDING marc TO t_material.&lt;/P&gt;&lt;P&gt;        MOVE-CORRESPONDING mbew TO t_material.&lt;/P&gt;&lt;P&gt;        MOVE-CORRESPONDING makt TO t_material.&lt;/P&gt;&lt;P&gt;        t_material-cr = w_eor.&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;insert cariage return and tabs&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        t_material-cr     = w_eor.&lt;/P&gt;&lt;P&gt;        t_material-tab1   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab2   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab3   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab4   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab5   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab6   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab7   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab8   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab9   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab10  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab11  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab12  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab13  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab14  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab15  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab16  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab17  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab18  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab19  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab20  = w_tab. " PRS #1386042&lt;/P&gt;&lt;P&gt;        t_material-tab21  = w_tab. "TAG 5013&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WRITE mbew-bwprh        TO t_material-bwprh  NO-GROUPING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         WRITE mbew-stprs        TO t_material-stprs  NO-GROUPING.&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;Create the internal table with extracted data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        APPEND   t_material.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDSELECT.&lt;/P&gt;&lt;P&gt;    ENDSELECT.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_Data_no_sobsk&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*********************************************************&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;Note : I am not the edeveloper of this code.&amp;lt;/b&amp;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;Ben.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 09 May 2006 14:08:43 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-05-09T14:08:43Z</dc:date>
    <item>
      <title>Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324736#M166604</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;I am posting my sample code for subroutine. Can anyone please suggest me some means to improve the performance of this code. This program takes almost 17 hours in our DR and PR. So using se30 wont help me to analyze it immediately . Also I know I need to eliminate the nested selects and select * statement. Can anyone suggest me any other tips to  improve the performance of this program. Will secondary indexes help me in this regard ?&lt;/P&gt;&lt;P&gt;Code sample :&lt;/P&gt;&lt;P&gt;*********************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_data_no_sobsk.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Extract the material by plant, then corresponding details-----&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT    *&lt;/P&gt;&lt;P&gt;  FROM      marc&lt;/P&gt;&lt;P&gt;  WHERE     werks IN s_werks.                        &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; and       sobsk ne space. &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; check marc-sobsk ca 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'. &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;Material Descriptions&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CLEAR     makt.&lt;/P&gt;&lt;P&gt;    SELECT    *&lt;/P&gt;&lt;P&gt;    FROM      makt&lt;/P&gt;&lt;P&gt;    WHERE     matnr = marc-matnr&lt;/P&gt;&lt;P&gt;     AND      spras IN s_spras.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;General Material Data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CLEAR     mara.&lt;/P&gt;&lt;P&gt;      SELECT    *&lt;/P&gt;&lt;P&gt;      FROM      mara&lt;/P&gt;&lt;P&gt;      WHERE     matnr = marc-matnr&lt;/P&gt;&lt;P&gt;        AND     mtart IN s_mtart.&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;Plant description for destination company&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        CLEAR     t001w-name1.&lt;/P&gt;&lt;P&gt;        SELECT    name1&lt;/P&gt;&lt;P&gt;        UP TO     1 ROWS&lt;/P&gt;&lt;P&gt;        INTO      t_material-dstcomp&lt;/P&gt;&lt;P&gt;        FROM      t001w&lt;/P&gt;&lt;P&gt;        WHERE     werks = marc-werks.&lt;/P&gt;&lt;P&gt;        ENDSELECT.&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;Material Valuation&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        CLEAR     mbew.&lt;/P&gt;&lt;P&gt;        SELECT    *&lt;/P&gt;&lt;P&gt;        UP TO     1 ROWS&lt;/P&gt;&lt;P&gt;        FROM      mbew&lt;/P&gt;&lt;P&gt;        WHERE     matnr = marc-matnr&lt;/P&gt;&lt;P&gt;          AND     bwkey = marc-werks.&lt;/P&gt;&lt;P&gt;        ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Material Valuation&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        CLEAR     t460t-ltext.&lt;/P&gt;&lt;P&gt;        SELECT    SINGLE ltext&lt;/P&gt;&lt;P&gt;        INTO      t_material-ltext&lt;/P&gt;&lt;P&gt;        FROM      t460t&lt;/P&gt;&lt;P&gt;        WHERE     werks = marc-werks&lt;/P&gt;&lt;P&gt;          AND     sobsl = marc-sobsk&lt;/P&gt;&lt;P&gt;          AND     spras IN s_spras.&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;format internal table with fields ready for unix&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        MOVE-CORRESPONDING mara TO t_material.&lt;/P&gt;&lt;P&gt;        MOVE-CORRESPONDING marc TO t_material.&lt;/P&gt;&lt;P&gt;        MOVE-CORRESPONDING mbew TO t_material.&lt;/P&gt;&lt;P&gt;        MOVE-CORRESPONDING makt TO t_material.&lt;/P&gt;&lt;P&gt;        t_material-cr = w_eor.&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;insert cariage return and tabs&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        t_material-cr     = w_eor.&lt;/P&gt;&lt;P&gt;        t_material-tab1   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab2   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab3   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab4   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab5   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab6   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab7   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab8   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab9   = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab10  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab11  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab12  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab13  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab14  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab15  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab16  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab17  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab18  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab19  = w_tab.&lt;/P&gt;&lt;P&gt;        t_material-tab20  = w_tab. " PRS #1386042&lt;/P&gt;&lt;P&gt;        t_material-tab21  = w_tab. "TAG 5013&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WRITE mbew-bwprh        TO t_material-bwprh  NO-GROUPING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         WRITE mbew-stprs        TO t_material-stprs  NO-GROUPING.&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;Create the internal table with extracted data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        APPEND   t_material.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDSELECT.&lt;/P&gt;&lt;P&gt;    ENDSELECT.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_Data_no_sobsk&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*********************************************************&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;Note : I am not the edeveloper of this code.&amp;lt;/b&amp;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;Ben.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 14:08:43 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324736#M166604</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T14:08:43Z</dc:date>
    </item>
    <item>
      <title>Re: Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324737#M166605</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Daniel,&lt;/P&gt;&lt;P&gt;          Use &amp;lt;b&amp;gt;SELECT &amp;lt;feild1&amp;gt; &amp;lt;feild2&amp;gt; .....&amp;lt;feildn&amp;gt; from &amp;lt;dtab&amp;gt;&amp;lt;/b&amp;gt; instead of &amp;lt;b&amp;gt;SELECT * from &amp;lt;dtab&amp;gt;&amp;lt;/b&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you,&lt;/P&gt;&lt;P&gt;Ramu N.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 14:13:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324737#M166605</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T14:13:55Z</dc:date>
    </item>
    <item>
      <title>Re: Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324738#M166606</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hai Daniel &lt;/P&gt;&lt;P&gt;use for all Entries for improving Performence and also Not use Select--Endselect instead. Better to use select .... from Tablename into table Internal table&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I will send a sample report&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Check it &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  zs_stockreport3&lt;/P&gt;&lt;P&gt;                        NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;                        LINE-SIZE 255&lt;/P&gt;&lt;P&gt;                        MESSAGE-ID zz1.&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;              Table Declaration                                      *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;TABLES: mara,&lt;/P&gt;&lt;P&gt;        marc,&lt;/P&gt;&lt;P&gt;        mard.&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;              Types Declaration                                      *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF typ_mara,&lt;/P&gt;&lt;P&gt;       matnr TYPE mara-matnr, "Material Number"&lt;/P&gt;&lt;P&gt;       mbrsh TYPE mara-mbrsh, "Industrial Sector"&lt;/P&gt;&lt;P&gt;       mtart TYPE mara-mtart, "Material Type"&lt;/P&gt;&lt;P&gt;       meins TYPE mara-meins, "Base Unit of Measure"&lt;/P&gt;&lt;P&gt;       END OF typ_mara.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF typ_makt,&lt;/P&gt;&lt;P&gt;       matnr TYPE makt-matnr, "Material Number"&lt;/P&gt;&lt;P&gt;       maktx TYPE makt-maktx, "Material Description"&lt;/P&gt;&lt;P&gt;       END OF typ_makt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF typ_marc,&lt;/P&gt;&lt;P&gt;       matnr TYPE marc-matnr, "Material Number"&lt;/P&gt;&lt;P&gt;       werks TYPE marc-werks, "Plant Number"&lt;/P&gt;&lt;P&gt;       END OF typ_marc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF typ_mard,&lt;/P&gt;&lt;P&gt;       matnr TYPE marc-matnr, "Material Number"&lt;/P&gt;&lt;P&gt;       werks TYPE marc-werks, "Plant Number"&lt;/P&gt;&lt;P&gt;       lgort TYPE mard-lgort, "Storage Location"&lt;/P&gt;&lt;P&gt;       END OF typ_mard.&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;              Intrnal tables Declaration                             *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;DATA: it_mara TYPE STANDARD TABLE OF typ_mara WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: it_makt TYPE STANDARD TABLE OF typ_makt WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: it_marc TYPE STANDARD TABLE OF typ_marc WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: it_mard TYPE STANDARD TABLE OF typ_mard WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;              Variable Declaration                                   *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;DATA: v_count TYPE i.&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;              Selection Screen                                       *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS   : s_matnr FOR mara-matnr.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : SKIP.&lt;/P&gt;&lt;P&gt;PARAMETERS       : p_mtart LIKE mara-mtart.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : END OF BLOCK b1.&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                      Start Events                                   *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                      Initialization                                 *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;INITIALIZATION.&lt;/P&gt;&lt;P&gt;***&lt;/P&gt;&lt;P&gt;  PERFORM initial_input.&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                      At Selection-screen                            *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt;***&lt;/P&gt;&lt;P&gt;  PERFORM validte_inputdata.&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                      Start of Selection                             *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;***&lt;/P&gt;&lt;P&gt;  SELECT matnr&lt;/P&gt;&lt;P&gt;         mbrsh&lt;/P&gt;&lt;P&gt;         mtart&lt;/P&gt;&lt;P&gt;         meins&lt;/P&gt;&lt;P&gt;         INTO TABLE it_mara&lt;/P&gt;&lt;P&gt;         FROM mara&lt;/P&gt;&lt;P&gt;         WHERE matnr IN s_matnr and&lt;/P&gt;&lt;P&gt;               mtart = p_mtart.&lt;/P&gt;&lt;P&gt;  if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    sort it_mara by matnr.&lt;/P&gt;&lt;P&gt;  else.&lt;/P&gt;&lt;P&gt;    MESSAGE e001 WITH 'No data Found' ' For the Given'&lt;/P&gt;&lt;P&gt;                      'Selection Criteria'(400).&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT it_mara[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SELECT matnr&lt;/P&gt;&lt;P&gt;           maktx&lt;/P&gt;&lt;P&gt;           INTO TABLE it_makt FROM makt&lt;/P&gt;&lt;P&gt;           FOR ALL ENTRIES IN it_mara&lt;/P&gt;&lt;P&gt;           WHERE matnr = it_mara-matnr&lt;/P&gt;&lt;P&gt;           AND spras = sy-langu.&lt;/P&gt;&lt;P&gt;  if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    sort it_makt by matnr.&lt;/P&gt;&lt;P&gt;  endif.&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_mara[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    select matnr&lt;/P&gt;&lt;P&gt;           werks&lt;/P&gt;&lt;P&gt;           from marc&lt;/P&gt;&lt;P&gt;           into table it_marc&lt;/P&gt;&lt;P&gt;           for all entries in it_mara&lt;/P&gt;&lt;P&gt;           where matnr = it_mara-matnr.&lt;/P&gt;&lt;P&gt;  if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    sort it_marc by matnr werks.&lt;/P&gt;&lt;P&gt;  endif.&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_marc[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    select matnr&lt;/P&gt;&lt;P&gt;           werks&lt;/P&gt;&lt;P&gt;           lgort&lt;/P&gt;&lt;P&gt;           from mard&lt;/P&gt;&lt;P&gt;           into table it_mard&lt;/P&gt;&lt;P&gt;           for all entries in it_marc&lt;/P&gt;&lt;P&gt;           where matnr = it_marc-matnr and&lt;/P&gt;&lt;P&gt;                 werks = it_marc-werks.&lt;/P&gt;&lt;P&gt;  if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    sort it_mard by matnr werks lgort.&lt;/P&gt;&lt;P&gt;  endif.&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;DATA: a TYPE i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at it_mara.&lt;/P&gt;&lt;P&gt;  a = sy-tabix MOD 2.&lt;/P&gt;&lt;P&gt;  IF a = 1.&lt;/P&gt;&lt;P&gt;    FORMAT COLOR 5.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    FORMAT COLOR OFF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  read table it_marc with key matnr = it_mara-matnr&lt;/P&gt;&lt;P&gt;                              binary search.&lt;/P&gt;&lt;P&gt;  if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    read table it_mard with key matnr = it_marc-matnr&lt;/P&gt;&lt;P&gt;                                werks = it_marc-werks&lt;/P&gt;&lt;P&gt;                                binary search.&lt;/P&gt;&lt;P&gt;    if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      read table it_makt with key matnr = it_mara-matnr&lt;/P&gt;&lt;P&gt;                                  binary search.&lt;/P&gt;&lt;P&gt;      if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;        WRITE:/ sy-vline.&lt;/P&gt;&lt;P&gt;          WRITE: 2             it_mara-matnr,&lt;/P&gt;&lt;P&gt;                 18 sy-vline,  it_mara-mbrsh,&lt;/P&gt;&lt;P&gt;                 38 sy-vline,  it_mara-mtart,&lt;/P&gt;&lt;P&gt;                 54 sy-vline,  it_mara-meins,&lt;/P&gt;&lt;P&gt;                 78 sy-vline,  it_makt-maktx,&lt;/P&gt;&lt;P&gt;                120 sy-vline,  it_marc-werks,&lt;/P&gt;&lt;P&gt;                135 sy-vline,  it_mard-lgort, 155 sy-vline.&lt;/P&gt;&lt;P&gt;          clear : it_mara.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;    clear : it_makt.&lt;/P&gt;&lt;P&gt;    endif.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;WRITE: /(155) sy-uline.&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                          Top of Page                                *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE.&lt;/P&gt;&lt;P&gt;***&lt;/P&gt;&lt;P&gt;  FORMAT COLOR 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE: /(155) sy-uline.&lt;/P&gt;&lt;P&gt;  WRITE:/ sy-vline.&lt;/P&gt;&lt;P&gt;  WRITE: 2             'Material Number',&lt;/P&gt;&lt;P&gt;         18 sy-vline,  'Industrial Sector',&lt;/P&gt;&lt;P&gt;         38 sy-vline,  'Material Type',&lt;/P&gt;&lt;P&gt;         54 sy-vline,  'Base Unit of Measure',&lt;/P&gt;&lt;P&gt;         78 sy-vline,  'Material Description',&lt;/P&gt;&lt;P&gt;         120 sy-vline, 'Plant',&lt;/P&gt;&lt;P&gt;         135 sy-vline, 'Storage Location',155 sy-vline.&lt;/P&gt;&lt;P&gt;  WRITE: /(155) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORMAT RESET.&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                          End of Page                                *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  Initial_Input&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Initailization of Select Option&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM initial_input .&lt;/P&gt;&lt;P&gt;  CLEAR s_matnr.&lt;/P&gt;&lt;P&gt;  REFRESH s_matnr.&lt;/P&gt;&lt;P&gt;  s_matnr-low    = '100-100'.&lt;/P&gt;&lt;P&gt;  s_matnr-high   = '111-111'.&lt;/P&gt;&lt;P&gt;  s_matnr-sign   = 'I'.&lt;/P&gt;&lt;P&gt;  s_matnr-option = 'BT'.&lt;/P&gt;&lt;P&gt;  APPEND s_matnr.&lt;/P&gt;&lt;P&gt;  p_mtart = 'ROH'.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Initial_Input&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  Validte_Inputdta&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Validation of Select Option&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM validte_inputdata .&lt;/P&gt;&lt;P&gt;  SELECT SINGLE * FROM mara&lt;/P&gt;&lt;P&gt;   WHERE matnr IN s_matnr.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE e001 WITH 'Material'(002) 'Type'(003) 'Does Not Exit'(400).&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Validte_Inputdta&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                      End of Selection                               *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks &amp;amp; regards&lt;/P&gt;&lt;P&gt;Sreenivasulu P&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 14:15:46 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324738#M166606</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T14:15:46Z</dc:date>
    </item>
    <item>
      <title>Re: Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324739#M166607</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;*First n foremost, try to avoid using select * . give the  names of the fields instead in the select statement.&lt;/P&gt;&lt;P&gt;*Instead of select/endselect, use select into table..&lt;/P&gt;&lt;P&gt;Regards..&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 14:17:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324739#M166607</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T14:17:10Z</dc:date>
    </item>
    <item>
      <title>Re: Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324740#M166608</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Daniel,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Your main problem is the SELECT and ENDSELECT commands. Remove SELECT and ENDSELECT and use an array fetch which will bring data at one shot.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; The other main problem is your initial select is on MARC table. This will get duplicate entries of material in the internal table for which you are further using in your select statement. This means for the same material number the Select statement will be triggered twice.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; I can see a lot more options where it can definitely be improved. This is just a dead code as per me. There is a lot of scope for improvement.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Cheers&lt;/P&gt;&lt;P&gt; VJ&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 14:19:32 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324740#M166608</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T14:19:32Z</dc:date>
    </item>
    <item>
      <title>Re: Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324741#M166609</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI&lt;/P&gt;&lt;P&gt;GOOD&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I AM MENTIONING SOME OF THE POINTS HERE JUST USE THEM IN YOUR CODE.&lt;/P&gt;&lt;P&gt;1- DONT USE SELECT * IF YOU R ACCESSING SINGLE FIELD FORM THE DATABASE TABLE.&lt;/P&gt;&lt;P&gt;2-TRY TO USE CORRESPONDIG FIELDS OF STATEMENT IN YOUR SQL QUERY STATEMENT.&lt;/P&gt;&lt;P&gt;3-USE THE TCODE SCI(CODE INSPECTOR) TO FURTHER ANALYSE YOUR CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;THANKS&lt;/P&gt;&lt;P&gt;MRUTYUN&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 14:20:23 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324741#M166609</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T14:20:23Z</dc:date>
    </item>
    <item>
      <title>Re: Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324742#M166610</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I will suggest you to use &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select into table instead of select endselect. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and also use for all entries if required.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select endselect causing the performance.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;vijay&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 14:21:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324742#M166610</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T14:21:06Z</dc:date>
    </item>
    <item>
      <title>Re: Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324743#M166611</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Friends,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;Also I know I need to eliminate the nested selects and select * statement. Can anyone suggest me any other tips to improve the performance of this program. Will secondary indexes help me in this regard ?&lt;/P&gt;&lt;P&gt;&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Make a note of this in my query.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ben.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 14:21:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324743#M166611</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T14:21:49Z</dc:date>
    </item>
    <item>
      <title>Re: Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324744#M166612</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mr.Tripathy,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can you please explain me in detail how to use code inspector to analyse the code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ben.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: Daniel Ben&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 14:23:53 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324744#M166612</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T14:23:53Z</dc:date>
    </item>
    <item>
      <title>Re: Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324745#M166613</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ben,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1.Remove all nested Select statments.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Do not use " Select * "...alway specify field names eg. "Select MATNR ....."&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. Rather than selecting data separately from MARA, MARC &amp;amp; MAKT use joins which will be much faster.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4. Try to use key fields in "Where clause"&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;5. Select all data from MBEW into internal table for all entries in first internal table ( combination of MARA, MAKT, MARC) and then process data from internal table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;Nilesh&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: Nilesh Kshirsagar&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: Nilesh Kshirsagar&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 14:31:52 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324745#M166613</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T14:31:52Z</dc:date>
    </item>
    <item>
      <title>Re: Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324746#M166614</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Daniel,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; To answer your query. I would say that you would not need a secondary index for the tables on which you have the select statements. &lt;/P&gt;&lt;P&gt; Fetching data from MARA, MARC, MAKT and MBEW should not be a problem. We have data extract programs which picks millions of records in short time and i believe that this secondary index is really not required.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; As i have mentioned earlier.&lt;/P&gt;&lt;P&gt; 1). After ur select in MARC try to move unique material numbers to a seprate internal table.&lt;/P&gt;&lt;P&gt;    For example if your material is maintained in 10 plants then the subsequent select statements will fire 10 times to get the same information. So move the material numbers to another internal table, delete the duplicates and then use either joins or subqueries.&lt;/P&gt;&lt;P&gt; 2). Goto St05 and there is a button EXPLAIN SQL query. Enter your query and see the path it takes to fetch the data and also the cost of your select on the database. This will let you know where is the problem. Remember this tool requires some expertise to understand.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Hope this helps&lt;/P&gt;&lt;P&gt; Cheers&lt;/P&gt;&lt;P&gt; VJ&lt;/P&gt;&lt;P&gt; If you wish to know how to use subquery let me know.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 14:39:41 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324746#M166614</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T14:39:41Z</dc:date>
    </item>
    <item>
      <title>Re: Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324747#M166615</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Vijayendra Rao,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Would you please eloborate a little on subquery ? I went to st05 and clicked on &amp;lt;b&amp;gt;Explain one sql request&amp;lt;/b&amp;gt;.IN the editor I typed select * from mara. and clicked on explain . This shows me an popup box which says &amp;lt;b&amp;gt;An error in Explain SQL. Change UPDATE/DELETE to SELECT if possible.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can you please explain me how to use his one too.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Ben.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: Daniel Ben&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 14:42:57 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324747#M166615</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T14:42:57Z</dc:date>
    </item>
    <item>
      <title>Re: Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324748#M166616</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Daniel,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Here is how you write a subquery.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;  SELECT * FROM MSLB AS M INTO CORRESPONDING FIELDS OF TABLE I_MSLB
    WHERE WERKS IN S_WERKS
      AND LIFNR IN S_LIFNR
      AND LBLAB NE 0
      AND EXISTS ( SELECT MATNR FROM MARC WHERE LVORM = ' '
                          AND WERKS = M~WERKS
                          AND MATNR = M~MATNR )
      AND EXISTS ( SELECT LIFNR FROM LFA1 WHERE LOEVM = ' '
                        AND SPERR = ' ' AND SPERM = ' '
                        AND KTOKK IN S_KTOKK ).                    .
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Cheers&lt;/P&gt;&lt;P&gt; VJ&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 14:48:17 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324748#M166616</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T14:48:17Z</dc:date>
    </item>
    <item>
      <title>Re: Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324749#M166617</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Daniel,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Send me ur email id. I will send u a doc which would indicate how to use SDBE - Explain Sql transaction.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Cheers&lt;/P&gt;&lt;P&gt; VJ&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 14:51:43 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324749#M166617</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T14:51:43Z</dc:date>
    </item>
    <item>
      <title>Re: Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324750#M166618</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Vijayendra Rao,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is my mail Id : &amp;lt;b&amp;gt;daniel.ben@hotmail.com&amp;lt;/b&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;please send the doc to this Id. I am awarding full points to you and closing the post.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Ben.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 14:55:21 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324750#M166618</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T14:55:21Z</dc:date>
    </item>
    <item>
      <title>Re: Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324751#M166619</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Daniel,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;About Code Inspector :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. Goto SCI transaction and define a check variant which will examine your code for errors. In this variant you can specify the naming convention for your Local Variables, Global Variables etc. In the same variant you can define the Performance Checks like Loop within a loop, nested selects, security checks, programming conventions etc. Make the variant global so that everybody has access to it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Now you are ready to use this variant. Goto SCII --&amp;gt; Select Single --&amp;gt; Select an entry from the dropdown --&amp;gt; give the corresponding progam name/class name --&amp;gt; Give a variant name under Check Variant.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. Execute.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4. It will show all the discrepancies in your code from where you can double click and goto the respective line of code and correct the error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note that you can also use a STANDARD VARIANT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps.&lt;/P&gt;&lt;P&gt;Please reward points and close the thread.&lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Amit Mishra&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 14:58:59 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324751#M166619</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T14:58:59Z</dc:date>
    </item>
    <item>
      <title>Re: Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324752#M166620</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;&amp;#149;	Do not use select-exit-endselect logic.  Use select single or select up to 1 rows.  The trace shows this is more efficient.  &lt;/P&gt;&lt;P&gt;&amp;#149;	Avoid using select-endselect loop with logic in the middle.  This keeps unnecessary communication to DB2 open.  Instead, select the data you need into an internal table and loop at the internal table for your looping logic. &lt;/P&gt;&lt;P&gt;&amp;#149;	Order your WHERE clause exactly to the primary key or index, &lt;/P&gt;&lt;P&gt;&amp;#149;	Avoid using select * and Select individual fields instead where practical.  &lt;/P&gt;&lt;P&gt;&amp;#149;	In order to use the addition &amp;#145;FOR ALL ENTRIES IN &amp;lt;TABLE&amp;gt;&amp;#146;,  make sure the table is not empty or it will select all rows.  &lt;/P&gt;&lt;P&gt;&amp;#149;	Avoid using the addition &amp;#145;INTO CORRESPONDING FIELDS OF TABLE &amp;lt;TABLE&amp;gt;&amp;#146;, we have seen that it is very CPU intensive.  Order the fields in the internal table and the select statement the same and use &amp;#145;INTO TABLE &amp;lt;TABLE&amp;gt;&amp;#146;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;#149;	Be careful with the &amp;#145;OR&amp;#146;  and &amp;#145;IN&amp;#148; operators in the where clause of an SQL statement.  Their use can exclude the use of existing secondary indexes&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;#149;	Always use SQL trace (ST05) to examine the SQL statements in your code to determine whether statements are scanning tables or using the index of a table. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;#149;	Always use runtime analysis (SE30) to find out how well a program is running and where it is spending most of its time.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;hope this would be usefull..&lt;/P&gt;&lt;P&gt;If u need any further clarifications please get back&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Jhansi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 14:59:07 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324752#M166620</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T14:59:07Z</dc:date>
    </item>
    <item>
      <title>Re: Performance Issues</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324753#M166621</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Daniel,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Hope you have recieved all the docs.&lt;/P&gt;&lt;P&gt; Happy reading.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Good luck&lt;/P&gt;&lt;P&gt; Cheers&lt;/P&gt;&lt;P&gt; VJ&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 May 2006 15:07:03 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issues/m-p/1324753#M166621</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-05-09T15:07:03Z</dc:date>
    </item>
  </channel>
</rss>

