<?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: Need help from performance gurus! in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/need-help-from-performance-gurus/m-p/9730491#M1772249</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 try do SELECTs for internal tables (using FOR ALL ENTRIES or SELECTs FULLS) and use and READs using field symbols and binary search for create final register.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 17 Sep 2013 18:04:22 GMT</pubDate>
    <dc:creator>renatobertizini</dc:creator>
    <dc:date>2013-09-17T18:04:22Z</dc:date>
    <item>
      <title>Need help from performance gurus!</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/need-help-from-performance-gurus/m-p/9730486#M1772244</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Dear all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am face to a problem of performance and I don't know if the solution I took is good or not.&lt;/P&gt;&lt;P&gt;In a program we read a directory and we read each files. Files contain users ID maybe some maybe all table USR02 (ca. 300.000 users).&lt;/P&gt;&lt;P&gt;For each file I need to consult table USR01 / USR21 / ADRP / ADCP / ADR6.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;According to you is it better to do a FOR ALL ENTRIES at the begining of a loop (inside the loop for previous tables) or to use SELECT SINGLE on each table during the loop?&lt;/P&gt;&lt;P&gt;I took option of SELECT SINGLE but I do not know if SELECT FOR ALL ENTRIES (for 5 tables) within loop and using after hashed tables would be better or not?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am lost!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your help!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;David&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Sep 2013 14:19:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/need-help-from-performance-gurus/m-p/9730486#M1772244</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2013-09-17T14:19:44Z</dc:date>
    </item>
    <item>
      <title>Re: Need help from performance gurus!</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/need-help-from-performance-gurus/m-p/9730487#M1772245</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Quickest is to use an inner join, choosing only the fields you require, like so:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;select usr02&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;bname&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; adrp&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;title&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; adrp&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;name_first&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; adrp&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;name_last&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; adcp&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;department&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; usr02&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;accnt&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; usr21&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;kostl&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; adr6&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;smtp_addr&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; usr02&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;class&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; usr02&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;gltgv&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S52"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; usr02&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;ustyp&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;into &lt;/SPAN&gt;corresponding &lt;SPAN class="L0S52"&gt;fields &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;of &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;table &lt;/SPAN&gt;gt_list&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;from &lt;/SPAN&gt;usr02&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;join &lt;/SPAN&gt;usr21&amp;nbsp; &lt;SPAN class="L0S52"&gt;on &lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;( &lt;/SPAN&gt;usr21&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;bname&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;usr02&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;bname&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;)&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;left &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;join &lt;/SPAN&gt;adrp&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;on &lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;( &lt;/SPAN&gt;adrp&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;persnumber &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;usr21&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;persnumber &lt;SPAN class="L0S55"&gt;)&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;left &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;join &lt;/SPAN&gt;adcp&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;on &lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;( &lt;/SPAN&gt;adcp&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;addrnumber &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;usr21&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;addrnumber&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;and &lt;/SPAN&gt;adcp&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;persnumber &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;usr21&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;persnumber &lt;SPAN class="L0S55"&gt;)&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;left &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;join &lt;/SPAN&gt;adr6&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;on &lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;( &lt;/SPAN&gt;adr6&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;addrnumber &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;usr21&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;addrnumber&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;and &lt;/SPAN&gt;adr6&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;persnumber &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;usr21&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;persnumber &lt;SPAN class="L0S55"&gt;)&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;where &lt;/SPAN&gt;usr02&lt;SPAN class="L0S70"&gt;~&lt;/SPAN&gt;bname &lt;SPAN class="L0S52"&gt;in &lt;/SPAN&gt;r_user&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Sep 2013 14:34:03 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/need-help-from-performance-gurus/m-p/9730487#M1772245</guid>
      <dc:creator>former_member201275</dc:creator>
      <dc:date>2013-09-17T14:34:03Z</dc:date>
    </item>
    <item>
      <title>Re: Need help from performance gurus!</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/need-help-from-performance-gurus/m-p/9730488#M1772246</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello&lt;/P&gt;&lt;P&gt;1 - You can use select with pakage size:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; SELECT *&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FROM USR01&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTO TABLE internal_table&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PACKAGE SIZE 5000&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WHERE your condition.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LOOP AT internal_table INTO workarea.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; APPEND workarea&amp;nbsp; TO internal_table_aux.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; REFRESH internal_table[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;commit work (to clear memory).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at internal_table_aux&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;append to internal_table_aux2 &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if internal_table_aux2 with 5000 records.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select *&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FROM USR02&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; into ...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; your condition&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;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://wiki.scn.sap.com/wiki/pages/viewpage.action?pageId=72220789"&gt;http://wiki.scn.sap.com/wiki/pages/viewpage.action?pageId=72220789&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Sep 2013 14:51:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/need-help-from-performance-gurus/m-p/9730488#M1772246</guid>
      <dc:creator>ronaldo_aparecido</dc:creator>
      <dc:date>2013-09-17T14:51:20Z</dc:date>
    </item>
    <item>
      <title>Re: Need help from performance gurus!</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/need-help-from-performance-gurus/m-p/9730489#M1772247</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;AMEN.&amp;nbsp; SELECT SINGLE inside a loop will perform a database call for every entry in the internal table, separated by application logic.&amp;nbsp; FOR ALL ENTRIES is marginally better but it still performs the join on the application server, not in the database.&amp;nbsp; With FAE you will still have a variable number of database calls based on the entries in your internal table.&amp;nbsp; An inner join, like Glen Anthony suggested, will ensure your program has only one database call no matter the results.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Sep 2013 15:13:00 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/need-help-from-performance-gurus/m-p/9730489#M1772247</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2013-09-17T15:13:00Z</dc:date>
    </item>
    <item>
      <title>Re: Need help from performance gurus!</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/need-help-from-performance-gurus/m-p/9730490#M1772248</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I understand there can be anything between 1 and 300K single user ID values as selection criteria. In order to avoid short dumps due to maximum size of SQL statement being exceeded, it seems that FAE should be used here for the BNAME selection, in conjunction with the JOIN as suggested by Glen. Both JOIN and FAE can happily coexist in the same statement.&lt;/P&gt;&lt;P&gt;As always, the FAE driver table should be sorted and duplicates removed (and must not be empty &lt;SPAN __jive_emoticon_name="cry" __jive_macro_name="emoticon" class="jive_macro jive_macro_emoticon jive_emote" src="https://community.sap.com/1795/images/emoticons/cry.gif"&gt;&lt;/SPAN&gt;)&lt;SPAN style="font-size: 10pt;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thomas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Sep 2013 15:20:39 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/need-help-from-performance-gurus/m-p/9730490#M1772248</guid>
      <dc:creator>ThomasZloch</dc:creator>
      <dc:date>2013-09-17T15:20:39Z</dc:date>
    </item>
    <item>
      <title>Re: Need help from performance gurus!</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/need-help-from-performance-gurus/m-p/9730491#M1772249</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 try do SELECTs for internal tables (using FOR ALL ENTRIES or SELECTs FULLS) and use and READs using field symbols and binary search for create final register.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Sep 2013 18:04:22 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/need-help-from-performance-gurus/m-p/9730491#M1772249</guid>
      <dc:creator>renatobertizini</dc:creator>
      <dc:date>2013-09-17T18:04:22Z</dc:date>
    </item>
    <item>
      <title>Re: Need help from performance gurus!</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/need-help-from-performance-gurus/m-p/9730492#M1772250</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi David,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would use a join for the USR01/USR21 tables and then a for all entries on the ADR* tables using hash tables.&amp;nbsp; Select single inside a loop is very slow due to database traffic.&amp;nbsp; Read the hash tables assigning them to field symbols, as this is faster than a work area for large tables.&amp;nbsp; And be sure to make the for all entries table sorted with a unique key (as Thomas suggested).&amp;nbsp; The for all entries will translate to the database as : where value = '1'&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; or value = '2'&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; or value = '3'&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/P&gt;&lt;P&gt;splitting the for all entries table in sets of selects on the database with multiple or's.&amp;nbsp; If the table is not unique, then values will be requested multiple times and slow performance.&lt;/P&gt;&lt;P&gt;A join on all tables could turn out to be quite heavy due to the number of joins required.&amp;nbsp; You could easily do a benchmark though.&amp;nbsp; It's doesn't take long to write both programs &lt;SPAN __jive_emoticon_name="happy" __jive_macro_name="emoticon" class="jive_macro jive_emote" src="https://community.sap.com/1795/images/emoticons/happy.gif"&gt;&lt;/SPAN&gt;.&amp;nbsp; Then you can do a performance analysis.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Freek&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Sep 2013 20:24:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/need-help-from-performance-gurus/m-p/9730492#M1772250</guid>
      <dc:creator>freek_cavens2</dc:creator>
      <dc:date>2013-09-17T20:24:55Z</dc:date>
    </item>
  </channel>
</rss>

