<?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: issue with the select query in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532154#M849719</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;SELECT F1&lt;/P&gt;&lt;P&gt;         F2&lt;/P&gt;&lt;P&gt;         INTO TABLE itab&lt;/P&gt;&lt;P&gt;         FROM VBAP&lt;/P&gt;&lt;P&gt;	 FOR ALL ENTRIES IN IT_MATERIAL&lt;/P&gt;&lt;P&gt;         where MATNR EQ IT_MATERIAL-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT: i_itab BY matnr,&lt;/P&gt;&lt;P&gt;        IT_MATERIAL BY matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT IT_MATERIAL INTO wa_MATERIAL.&lt;/P&gt;&lt;P&gt;    v_tabix = sy-tabix.&lt;/P&gt;&lt;P&gt;    READ TABLE itab INTO wa_itab WITH KEY matnr = wa_itab-matnr&lt;/P&gt;&lt;P&gt;                                       TRANSPORTING NO FIELDS.&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      DELETE IT_MATERIAL INDEX v_tabix.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Try this , it may work..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks &amp;amp; regards,&lt;/P&gt;&lt;P&gt;Harsha&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 04 Mar 2008 14:11:48 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-03-04T14:11:48Z</dc:date>
    <item>
      <title>issue with the select query</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532146#M849711</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;PRE&gt;&lt;CODE&gt;
DATA: BEGIN OF IT_MATERIAL OCCURS 0,
      IDNRK  LIKE  STPO-IDNRK,
      MATNR  LIKE  MAST-MATNR,
      END OF IT_MATERIAL.

FORM CHECK_SALESDATA_EXISTENCE .
  IF NOT IT_MATERIAL[] IS INITIAL.
    LOOP AT IT_MATERIAL.
      CLEAR VBAP.
      SELECT SINGLE * FROM VBAP WHERE MATNR EQ IT_MATERIAL-MATNR.
      IF SY-SUBRC NE 0.
        DELETE IT_MATERIAL WHERE IDNRK EQ IT_MATERIAL-IDNRK
                             AND MATNR EQ IT_MATERIAL-MATNR.
      ENDIF.
      CLEAR IT_MATERIAL.
    ENDLOOP.
  ENDIF.
ENDFORM.                    " CHECK_SALESDATA_EXISTENCE
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The above is the subroutine in the program which check whether sales data exists for a material or not. But the problem is the select statement which is written in the loop is taking so much of time because of this the program is going into short dump "Time Exceed Limit".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please suggest how can i modifiy the above statemnt so that the performance of the program increases.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;lt;REMOVED BY MODERATOR&amp;gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: Alvaro Tejada Galindo on Mar 4, 2008 10:37 AM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Mar 2008 13:54:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532146#M849711</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-04T13:54:20Z</dc:date>
    </item>
    <item>
      <title>Re: issue with the select query</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532147#M849712</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;well key fields of VBAP are VBELN and POSNR.&lt;/P&gt;&lt;P&gt;your selection criteria is MATNR. means you make a total unqualified select on VBAP. no wonder it takes a hell of a lot of time.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;either create an index for MATNR, or try to make a more qualified select at least try to have a VBELN&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Mar 2008 14:01:38 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532147#M849712</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-04T14:01:38Z</dc:date>
    </item>
    <item>
      <title>Re: issue with the select query</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532148#M849713</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi Ramya,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT in LOOP is basically 'forbidden', i.e. not really suggested because of bad performance. You can use FOR ALL ENTRIES instead (if you want to make selection based on internal table):&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF NOT IT_MATERIAL[] IS INITIAL.&lt;/P&gt;&lt;P&gt;SELECT SINGLE * FROM VBAP &lt;/P&gt;&lt;P&gt;*INTO it_vbap&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN IT_MATERIAL*&lt;/P&gt;&lt;P&gt;WHERE MATNR EQ IT_MATERIAL-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and make your deletion here based on the selected entries...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;hope this helps&lt;/P&gt;&lt;P&gt;ec&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Mar 2008 14:02:39 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532148#M849713</guid>
      <dc:creator>JozsefSzikszai</dc:creator>
      <dc:date>2008-03-04T14:02:39Z</dc:date>
    </item>
    <item>
      <title>Re: issue with the select query</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532149#M849714</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;use for all entries instead of writing select inside loop.. endloop ..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM CHECK_SALESDATA_EXISTENCE .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF NOT IT_MATERIAL[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT * FROM VBAP into it_vbap&lt;/P&gt;&lt;P&gt;                for all entries in IT_MATERIAL&lt;/P&gt;&lt;P&gt;                WHERE MATNR EQ IT_MATERIAL-MATNR.&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;Loop at it_material.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  read table it_vbap with key matnr = IT_MATERIAL-MATNR.&lt;/P&gt;&lt;P&gt;  if sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;        DELETE IT_MATERIAL WHERE IDNRK &lt;/P&gt;&lt;P&gt;                     EQ IT_MATERIAL-IDNRK AND MATNR EQ &lt;/P&gt;&lt;P&gt;                     IT_MATERIAL-MATNR.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;   CLEAR IT_MATERIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Mar 2008 14:06:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532149#M849714</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-04T14:06:04Z</dc:date>
    </item>
    <item>
      <title>Re: issue with the select query</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532150#M849715</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hai,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;U can use this :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF NOT IT_MATERIAL[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT * &lt;/P&gt;&lt;P&gt;  FROM VBAP &lt;/P&gt;&lt;P&gt;  INTO it_vbap&lt;/P&gt;&lt;P&gt;  FOR ALL ENTRIES IN it_material&lt;/P&gt;&lt;P&gt;WHERE MATNR = IT_MATERIAL-MATNR&lt;/P&gt;&lt;P&gt;     AND  idnrk    &amp;lt;&amp;gt; IT_MATERIAL-idnrk.&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;Hope this helps..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Neeraj&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Mar 2008 14:07:01 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532150#M849715</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-04T14:07:01Z</dc:date>
    </item>
    <item>
      <title>Re: issue with the select query</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532151#M849716</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hai  Ramya,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;U can use the following code.&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;IF NOT IT_MATERIAL[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT * &lt;/P&gt;&lt;P&gt;  FROM VBAP &lt;/P&gt;&lt;P&gt;  INTO it_vbap&lt;/P&gt;&lt;P&gt;  FOR ALL ENTRIES IN it_material&lt;/P&gt;&lt;P&gt;WHERE MATNR &amp;lt;&amp;gt; IT_MATERIAL-MATNR&lt;/P&gt;&lt;P&gt;     AND  idnrk    &amp;lt;&amp;gt; IT_MATERIAL-idnrk.&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;Hope this helps..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Neeraj&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Mar 2008 14:08:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532151#M849716</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-04T14:08:08Z</dc:date>
    </item>
    <item>
      <title>Re: issue with the select query</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532152#M849717</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Florian - it's generally a bad idea to create an index on a standard SAP table - particularly to speed up a single SELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In this case, there is a secondary index table VAPMA which gives sales orders by material. That is what should be used in this case.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTs in loops are things to be avoided, but again, not the real problem.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rob&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Mar 2008 14:08:42 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532152#M849717</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-04T14:08:42Z</dc:date>
    </item>
    <item>
      <title>Re: issue with the select query</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532153#M849718</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;PRE&gt;&lt;CODE&gt;report YJJC_FB02
       no standard page heading line-size 255.

DATA: BEGIN OF IT_MATERIAL OCCURS 0,
IDNRK LIKE STPO-IDNRK,
MATNR LIKE MAST-MATNR,
END OF IT_MATERIAL.

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  CHECK_SALESDATA_EXISTENCE
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM CHECK_SALESDATA_EXISTENCE .
  IF NOT IT_MATERIAL[] IS INITIAL.

select * from VBAP into TABLE it_vbap FOR ALL ENTRIES IN IT_MATERIAL 
                                     WHERE matnr = IT_MATERIAL-MATNR

    LOOP AT IT_MATERIAL.
      READ TABLE it_vbap with KEY MATNR = IT_MATERIAL-matnr.
      IF sy-subrc &amp;lt;&amp;gt; 0.
        delete IT_MATERIAL INDEX sy-tabix.
      ENDIF.
    ENDLOOP.
  ENDIF.
ENDFORM. " CHECK_SALESDATA_EXISTENCE&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here goes the refined code for you.. this will improve the performance.. dont forget to delcare IT_VBAP TYPE TABLE OF VBAP WITH HEADER LINE.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Mar 2008 14:11:22 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532153#M849718</guid>
      <dc:creator>rahulkavuri</dc:creator>
      <dc:date>2008-03-04T14:11:22Z</dc:date>
    </item>
    <item>
      <title>Re: issue with the select query</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532154#M849719</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;SELECT F1&lt;/P&gt;&lt;P&gt;         F2&lt;/P&gt;&lt;P&gt;         INTO TABLE itab&lt;/P&gt;&lt;P&gt;         FROM VBAP&lt;/P&gt;&lt;P&gt;	 FOR ALL ENTRIES IN IT_MATERIAL&lt;/P&gt;&lt;P&gt;         where MATNR EQ IT_MATERIAL-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT: i_itab BY matnr,&lt;/P&gt;&lt;P&gt;        IT_MATERIAL BY matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT IT_MATERIAL INTO wa_MATERIAL.&lt;/P&gt;&lt;P&gt;    v_tabix = sy-tabix.&lt;/P&gt;&lt;P&gt;    READ TABLE itab INTO wa_itab WITH KEY matnr = wa_itab-matnr&lt;/P&gt;&lt;P&gt;                                       TRANSPORTING NO FIELDS.&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      DELETE IT_MATERIAL INDEX v_tabix.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Try this , it may work..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks &amp;amp; regards,&lt;/P&gt;&lt;P&gt;Harsha&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Mar 2008 14:11:48 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532154#M849719</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-04T14:11:48Z</dc:date>
    </item>
    <item>
      <title>Re: issue with the select query</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532155#M849720</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The program deletes multiple records inside a loop. This isn't good practice. The following should work:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;REPORT ztest LINE-SIZE 80 MESSAGE-ID 00.

TABLES: vapma.

DATA: BEGIN OF it_material OCCURS 0,
  matnr LIKE mast-matnr,
  idnrk LIKE stpo-idnrk,
END OF it_material.

PERFORM check_salesdata_existence.

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  CHECK_SALESDATA_EXISTENCE
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM check_salesdata_existence .

  DATA: delete.

  SORT it_material BY matnr.

  LOOP AT it_material.
    AT NEW matnr.
      SELECT SINGLE * FROM vapma
        WHERE matnr EQ it_material-matnr.
      IF sy-subrc &amp;lt;&amp;gt; 0.
        delete = 'X'.
      ELSE.
        CLEAR delete.
      ENDIF.
    ENDAT.
    IF delete = 'X'.
      DELETE it_material.
    ENDIF.
  ENDLOOP.

ENDFORM. " CHECK_SALESDATA_EXISTENCE&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note that I have changed the filed order in it_material so that AT NEW will work correctly.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rob&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Mar 2008 15:34:03 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/issue-with-the-select-query/m-p/3532155#M849720</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-04T15:34:03Z</dc:date>
    </item>
  </channel>
</rss>

