<?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: how to avoid nested loop in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929621#M940943</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;data :begin of itab3 occurs 0,&lt;/P&gt;&lt;P&gt;matnr type matnr,&lt;/P&gt;&lt;P&gt;werks type werks,&lt;/P&gt;&lt;P&gt;lgort type lgort_g,&lt;/P&gt;&lt;P&gt;qty type menge_d,&lt;/P&gt;&lt;P&gt;end of itab3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at itab_mard.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For all entries in itab_mchb where matnr = itab_mard-matnr and&lt;/P&gt;&lt;P&gt;werks = itab_mard-werks and&lt;/P&gt;&lt;P&gt;lgort = itab_mard-lgort.&lt;/P&gt;&lt;P&gt;lv_qty = lv_qty + itab_mchb-qty.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;itab3-matnr = itab_mard-matnr.&lt;/P&gt;&lt;P&gt;itab3-werks = itab_mard-werks.&lt;/P&gt;&lt;P&gt;itab3-lgort = itab_mard-lgort_g.&lt;/P&gt;&lt;P&gt;itab3-qty = lv_qty.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;append itab3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clear lv_qty.&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;Regards,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Jagadish&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 27 May 2008 11:14:38 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-05-27T11:14:38Z</dc:date>
    <item>
      <title>how to avoid nested loop</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929619#M940941</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;data :begin of itab3 occurs 0,&lt;/P&gt;&lt;P&gt;matnr type matnr,&lt;/P&gt;&lt;P&gt;werks type werks,&lt;/P&gt;&lt;P&gt;lgort type lgort_g,&lt;/P&gt;&lt;P&gt;qty type menge_d,&lt;/P&gt;&lt;P&gt;end of itab3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at itab_mard.&lt;/P&gt;&lt;P&gt;loop at itab_mchb where matnr = itab_mard-matnr and&lt;/P&gt;&lt;P&gt;werks = itab_mard-werks and&lt;/P&gt;&lt;P&gt;lgort = itab_mard-lgort.&lt;/P&gt;&lt;P&gt;lv_qty = lv_qty + itab_mchb-qty.&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;itab3-matnr = itab_mard-matnr.&lt;/P&gt;&lt;P&gt;itab3-werks = itab_mard-werks.&lt;/P&gt;&lt;P&gt;itab3-lgort = itab_mard-lgort_g.&lt;/P&gt;&lt;P&gt;itab3-qty = lv_qty.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;append itab3.&lt;/P&gt;&lt;P&gt;clear lv_qty.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the above code how can avoid nested loop.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 May 2008 11:04:29 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929619#M940941</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-27T11:04:29Z</dc:date>
    </item>
    <item>
      <title>Re: how to avoid nested loop</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929620#M940942</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Use for all entries&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 May 2008 11:11:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929620#M940942</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-27T11:11:31Z</dc:date>
    </item>
    <item>
      <title>Re: how to avoid nested loop</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929621#M940943</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;data :begin of itab3 occurs 0,&lt;/P&gt;&lt;P&gt;matnr type matnr,&lt;/P&gt;&lt;P&gt;werks type werks,&lt;/P&gt;&lt;P&gt;lgort type lgort_g,&lt;/P&gt;&lt;P&gt;qty type menge_d,&lt;/P&gt;&lt;P&gt;end of itab3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at itab_mard.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For all entries in itab_mchb where matnr = itab_mard-matnr and&lt;/P&gt;&lt;P&gt;werks = itab_mard-werks and&lt;/P&gt;&lt;P&gt;lgort = itab_mard-lgort.&lt;/P&gt;&lt;P&gt;lv_qty = lv_qty + itab_mchb-qty.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;itab3-matnr = itab_mard-matnr.&lt;/P&gt;&lt;P&gt;itab3-werks = itab_mard-werks.&lt;/P&gt;&lt;P&gt;itab3-lgort = itab_mard-lgort_g.&lt;/P&gt;&lt;P&gt;itab3-qty = lv_qty.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;append itab3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clear lv_qty.&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;Regards,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Jagadish&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 May 2008 11:14:38 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929621#M940943</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-27T11:14:38Z</dc:date>
    </item>
    <item>
      <title>Re: how to avoid nested loop</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929622#M940944</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;you can use for all entries as our friend said but be carefull while using it &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;either in the select clause you should have complete key or else in where clause you should have complete key or else you will get some unexpected results..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if u have still quiries u can contact me &lt;/P&gt;&lt;P&gt;for more details see my business card..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Sunil Kumar Mutyala....&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 May 2008 11:15:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929622#M940944</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-27T11:15:05Z</dc:date>
    </item>
    <item>
      <title>Re: how to avoid nested loop</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929623#M940945</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;sort itab_mard by matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at itab_mard.&lt;/P&gt;&lt;P&gt; move-corresponding itab_mard to itab3.&lt;/P&gt;&lt;P&gt; collect itab3.&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;since menge is the only quantity filed it will be added ...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;lavanya&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 May 2008 11:15:24 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929623#M940945</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-27T11:15:24Z</dc:date>
    </item>
    <item>
      <title>Re: how to avoid nested loop</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929624#M940946</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;try this:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;  BEGIN OF key_mard,&lt;/P&gt;&lt;P&gt;    matnr LIKE mard-matnr,&lt;/P&gt;&lt;P&gt;    werks LIKE mard-werks,&lt;/P&gt;&lt;P&gt;    lgort LIKE mard-lgort,&lt;/P&gt;&lt;P&gt;  END OF key_mard,&lt;/P&gt;&lt;P&gt;  BEGIN OF key_mchb,&lt;/P&gt;&lt;P&gt;    matnr LIKE mchb-matnr,&lt;/P&gt;&lt;P&gt;    werks LIKE mchb-werks,&lt;/P&gt;&lt;P&gt;    lgort LIKE mchb-lgort,&lt;/P&gt;&lt;P&gt;  END OF key_mchb,&lt;/P&gt;&lt;P&gt;  ind TYPE i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SORT itab_mard BY matnr werks lgort.&lt;/P&gt;&lt;P&gt;SORT itab_mchb BY matnr werks lgort.&lt;/P&gt;&lt;P&gt;CLEAR itab_mard.&lt;/P&gt;&lt;P&gt;LOOP AT itab_mchb.&lt;/P&gt;&lt;P&gt;  MOVE-CORRESPONDING itab_mchb TO key_mchb.&lt;/P&gt;&lt;P&gt;  MOVE-CORRESPONDING itab_mard TO key_mard.&lt;/P&gt;&lt;P&gt;  IF key_mard &amp;lt; key_mchb.&lt;/P&gt;&lt;P&gt;    IF NOT key_mard IS INITIAL.&lt;/P&gt;&lt;P&gt;      itab3-matnr = itab_mard-matnr.&lt;/P&gt;&lt;P&gt;      itab3-werks = itab_mard-werks.&lt;/P&gt;&lt;P&gt;      itab3-lgort = itab_mard-lgort_g.&lt;/P&gt;&lt;P&gt;      itab3-qty = lv_qty.&lt;/P&gt;&lt;P&gt;      append itab3.&lt;/P&gt;&lt;P&gt;      clear lv_qty.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    ind = ind + 1.&lt;/P&gt;&lt;P&gt;    READ TABLE itab_mard INDEX ind.&lt;/P&gt;&lt;P&gt;    CONTINUE.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  lv_qty = lv_qty + itab_mchb-qty.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF NOT key_mard IS INITIAL.&lt;/P&gt;&lt;P&gt;  itab3-matnr = itab_mard-matnr.&lt;/P&gt;&lt;P&gt;  itab3-werks = itab_mard-werks.&lt;/P&gt;&lt;P&gt;  itab3-lgort = itab_mard-lgort_g.&lt;/P&gt;&lt;P&gt;  itab3-qty = lv_qty.&lt;/P&gt;&lt;P&gt;  append itab3.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;Walter Habich&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: Walter Habich on May 27, 2008 1:34 PM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 May 2008 11:29:02 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929624#M940946</guid>
      <dc:creator>former_member435013</dc:creator>
      <dc:date>2008-05-27T11:29:02Z</dc:date>
    </item>
    <item>
      <title>Re: how to avoid nested loop</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929625#M940947</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;If u have &lt;STRONG&gt;Nested loops&lt;/STRONG&gt; then use &lt;STRONG&gt;PARALLEL CURSOR&lt;/STRONG&gt; method.  This is more efficient method.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please check this link for &lt;STRONG&gt;Parallel Cursor Method.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.saptechnical.com/Tutorials/ABAP/ParallelCursor.htm" target="test_blank"&gt;http://www.saptechnical.com/Tutorials/ABAP/ParallelCursor.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;raam&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 May 2008 11:32:14 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929625#M940947</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-27T11:32:14Z</dc:date>
    </item>
    <item>
      <title>Re: how to avoid nested loop</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929626#M940948</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Try something like &lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;SORT  itab_mchb BY matnr werks lgort.
SORT  itab_mard BY matnr werks lgort.
LOOP AT itab_mchb.
  AT NEW lgort.
    CLEAR itab3.
    READ TABLE itab_mard
      WITH KEY matnr = itab_mchb-matnr
               werks = itab_mchb-werks
               lgort = itab_mchb-lgort
      BINARY SEARCH.
    itab3-matnr = itab_mard-matnr.
    itab3-werks = itab_mard-werks.
    itab3-lgort = itab_mard-lgort.
  ENDAT.
  ADD itab_mchb-qty TO itab3-qty.
  AT END OF lgort.
    APPEND itab3.
  ENDAT.
ENDLOOP.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 May 2008 11:35:51 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929626#M940948</guid>
      <dc:creator>RaymondGiuseppi</dc:creator>
      <dc:date>2008-05-27T11:35:51Z</dc:date>
    </item>
    <item>
      <title>Re: how to avoid nested loop</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929627#M940949</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;You can use this -&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;create an internal table lt_itabqty and lt_totqty with struct&lt;/P&gt;&lt;P&gt;matnr.&lt;/P&gt;&lt;P&gt;werks.&lt;/P&gt;&lt;P&gt; lgort&lt;/P&gt;&lt;P&gt;qty&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;move itab_mard[] to lt_itabqty[]. (if matnr werks lgort qty are the 1st  4 fields) else you'll have to use move-corresponding.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at lt_itabqty.&lt;/P&gt;&lt;P&gt; collect lt_itabqty into lt_totqty.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------------------------------" /&gt;&lt;P&gt;loop at itab_mard.&lt;/P&gt;&lt;P&gt;  read table lt_itabqty with key matnr = itab_mard-matnr &lt;/P&gt;&lt;P&gt;                                             werks = itab_mard-werks &lt;/P&gt;&lt;P&gt;                                             lgort = itab_mard-lgort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; itab3-matnr = itab_mard-matnr.&lt;/P&gt;&lt;P&gt; itab3-werks = itab_mard-werks.&lt;/P&gt;&lt;P&gt; itab3-lgort = itab_mard-lgort_g.&lt;/P&gt;&lt;P&gt; itab3-qty = lt_itabqty-qty.&lt;/P&gt;&lt;P&gt; append itab3.&lt;/P&gt;&lt;P&gt; clear lv_qty.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------------------------------" /&gt;&lt;P&gt;This way you can eliminate 1 loop completely.&lt;/P&gt;&lt;P&gt;Reward points if found useful&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Megha&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 May 2008 12:00:43 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929627#M940949</guid>
      <dc:creator>megha_h</dc:creator>
      <dc:date>2008-05-27T12:00:43Z</dc:date>
    </item>
    <item>
      <title>Re: how to avoid nested loop</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929628#M940950</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 use parallel cursor method.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Conventional Code for nested loops&lt;/P&gt;&lt;P&gt;Conventional Method&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------------------------" /&gt;&lt;P&gt;loop at lt_vbpa into wa_vbpa.&lt;/P&gt;&lt;P&gt;  loop at lt_kna1 into wa_kna1 where kunnr = wa_vbpa-kunnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="6" type="ul"&gt;&lt;P&gt;Your Actual logic within inner loop ******&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endloop.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Code sample: Parallel Cursor method&lt;/P&gt;&lt;P&gt;Preferred Method&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;sort: lt_vbpa by kunnr,  "Sorting by key is very important&lt;/P&gt;&lt;P&gt;      lt_kna1 by kunnr.  "Same key which is used for where condition is used here&lt;/P&gt;&lt;P&gt;loop at lt_vbpa into wa_vbpa.&lt;/P&gt;&lt;P&gt;  read lt_kna1 into wa_kna1     " This sets the sy-tabix&lt;/P&gt;&lt;P&gt;       with key kunnr = wa_vbpa-kunnr&lt;/P&gt;&lt;P&gt;       binary search.&lt;/P&gt;&lt;P&gt;  if sy-subrc = 0.              "Does not enter the inner loop&lt;/P&gt;&lt;P&gt;    v_kna1_index = sy-tabix.&lt;/P&gt;&lt;P&gt;    loop at lt_kna1 into wa_kna1 from v_kna1_index. "Avoiding Where clause&lt;/P&gt;&lt;P&gt;      if wa_kna1-kunnr &amp;lt;&amp;gt; wa_vbpa-kunnr.  "This checks whether to exit out of loop&lt;/P&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;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="6" type="ul"&gt;&lt;P&gt;Your Actual logic within inner loop ******&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   endloop. "KNA1 Loop&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;endloop.  " VBPA Loop&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 May 2008 12:07:09 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929628#M940950</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-27T12:07:09Z</dc:date>
    </item>
    <item>
      <title>Re: how to avoid nested loop</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929629#M940951</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Conventional Code for nested loops&lt;/P&gt;&lt;P&gt;Conventional Method&lt;/P&gt;&lt;P&gt;loop at lt_vbpa into wa_vbpa.&lt;/P&gt;&lt;P&gt;  loop at lt_kna1 into wa_kna1 where kunnr = wa_vbpa-kunnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="6" type="ul"&gt;&lt;P&gt;Your Actual logic within inner loop ******&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endloop.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;Code sample: Parallel Cursor method&lt;/P&gt;&lt;P&gt;Preferred Method&lt;/P&gt;&lt;P&gt;sort: lt_vbpa by kunnr,  "Sorting by key is very important&lt;/P&gt;&lt;P&gt;      lt_kna1 by kunnr.  "Same key which is used for where condition is used here&lt;/P&gt;&lt;P&gt;loop at lt_vbpa into wa_vbpa.&lt;/P&gt;&lt;P&gt;  read lt_kna1 into wa_kna1     " This sets the sy-tabix&lt;/P&gt;&lt;P&gt;       with key kunnr = wa_vbpa-kunnr&lt;/P&gt;&lt;P&gt;       binary search.&lt;/P&gt;&lt;P&gt;  if sy-subrc = 0.              "Does not enter the inner loop&lt;/P&gt;&lt;P&gt;    v_kna1_index = sy-tabix.&lt;/P&gt;&lt;P&gt;    loop at lt_kna1 into wa_kna1 from v_kna1_index. "Avoiding Where clause&lt;/P&gt;&lt;P&gt;      if wa_kna1-kunnr &amp;lt;&amp;gt; wa_vbpa-kunnr.  "This checks whether to exit out of loop&lt;/P&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;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="6" type="ul"&gt;&lt;P&gt;Your Actual logic within inner loop ******&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   endloop. "KNA1 Loop&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;endloop.  " VBPA Loop&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 May 2008 12:07:43 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-avoid-nested-loop/m-p/3929629#M940951</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-27T12:07:43Z</dc:date>
    </item>
  </channel>
</rss>

