<?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: SAP ABAP: Internal table query in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/sap-abap-internal-table-query/m-p/619865#M25810</link>
    <description>&lt;P&gt;Better use LOOP AT GROUP BY.&lt;/P&gt;</description>
    <pubDate>Fri, 01 Jun 2018 16:14:47 GMT</pubDate>
    <dc:creator>retired_member</dc:creator>
    <dc:date>2018-06-01T16:14:47Z</dc:date>
    <item>
      <title>SAP ABAP: Internal table query</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sap-abap-internal-table-query/m-p/619860#M25805</link>
      <description>&lt;P&gt;Hello experts,&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt;I am new to SAP ABAP. Could you please help me with the below issue.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt;I have an internal table with non-unique values as shown below.&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;IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/attachments/storage/7/attachments/155601-it.png" /&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;I need to calculate the minimum price and percentage change for each material and populate the next 2 columns, which should look as below.&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;IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/attachments/storage/7/attachments/155602-it-updated.png" /&gt;&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt;I tried implementing this with a select query, but it did not work. Is there any other way to modify an internal table to accommodate the changes.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt;Thanks in advance.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt;Thank you,&lt;BR /&gt;Abhishek&lt;/P&gt;</description>
      <pubDate>Fri, 01 Jun 2018 11:39:46 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sap-abap-internal-table-query/m-p/619860#M25805</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2018-06-01T11:39:46Z</dc:date>
    </item>
    <item>
      <title>Re: SAP ABAP: Internal table query</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sap-abap-internal-table-query/m-p/619861#M25806</link>
      <description>&lt;P&gt;&lt;A href="https://help.sap.com/http.svc/rc/abapdocu_752_index_htm/7.52/en-US/index.htm?file=abenitab.htm" target="test_blank"&gt;https://help.sap.com/http.svc/rc/abapdocu_752_index_htm/7.52/en-US/index.htm?file=abenitab.htm&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 01 Jun 2018 12:35:29 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sap-abap-internal-table-query/m-p/619861#M25806</guid>
      <dc:creator>retired_member</dc:creator>
      <dc:date>2018-06-01T12:35:29Z</dc:date>
    </item>
    <item>
      <title>Re: SAP ABAP: Internal table query</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sap-abap-internal-table-query/m-p/619862#M25807</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; first of all you need to calculate the minimum for each material in your itab. To do this you need to create a temp itab which you will collect each material with the minimum price. Sample code below&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt;types: begin of t_min,&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; matnr type matnr,&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; min type netpr,&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; end of t_min.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt;data: lt_min type table of t_min.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt;data: ls-min type t_min.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt;data: w_index type i.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt;loop at itab into ls_itab. "itab is you internal table.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; read table lt_min into ls_min with key matnr = ls_itab-matnr.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; w_index = sy-tabix&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; if sy-subrc &amp;lt;&amp;gt; 0. " first time&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; ls_min-matnr = ls_itab-matnr.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; ls_min-min = ls_min-netpr.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; append ls_min to lt_min.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; else.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; if ls_itab-netpr &amp;lt; ls_min-netpr.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; ls_min-netpr = ls_itab-netpr.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; modify lt_min from ls_min index w_index.&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; endif.&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;/P&gt;
  &lt;P&gt;After you have calculate the min for all materials just loop once more to update you original table&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt;loop at itab into ls_itab.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; w_index = sy-tabix.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; read table lt_min into ls_min with key matnr = ls_itab-matnr.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; ls_itab-min_price = ls_min-min.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt;*Now calculate persentage&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; ls_itab-perc = (( ls_itab-netpr - ls_itab-min_price) * 100 ) / ls_itab-min_price.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; modify itab from ls_itab index w_index.&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; &lt;/P&gt;
  &lt;P&gt;I hope this helps.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt;S.Socratous&lt;/P&gt;</description>
      <pubDate>Fri, 01 Jun 2018 12:36:36 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sap-abap-internal-table-query/m-p/619862#M25807</guid>
      <dc:creator>socrates_socratous2</dc:creator>
      <dc:date>2018-06-01T12:36:36Z</dc:date>
    </item>
    <item>
      <title>Re: SAP ABAP: Internal table query</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sap-abap-internal-table-query/m-p/619863#M25808</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
  &lt;P&gt;Use control level statements like this reference : &lt;A href="https://wiki.scn.sap.com/wiki/display/ABAP/Control+Level+Statements+in+ABAP" target="test_blank"&gt;https://wiki.scn.sap.com/wiki/display/ABAP/Control+Level+Statements+in+ABAP&lt;/A&gt;&lt;/P&gt;
  &lt;P&gt;1. Sort itab comparing matnr netpr (descending)&lt;/P&gt;
  &lt;P&gt;2. Loop itab.&lt;/P&gt;
  &lt;P&gt;at end of matnr.&lt;/P&gt;
  &lt;P&gt;--&amp;gt; this line minimum of netpr&lt;/P&gt;
  &lt;P&gt;endat.&lt;/P&gt;
  &lt;P&gt;endloop.&lt;/P&gt;</description>
      <pubDate>Fri, 01 Jun 2018 13:36:21 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sap-abap-internal-table-query/m-p/619863#M25808</guid>
      <dc:creator>omer_sakar</dc:creator>
      <dc:date>2018-06-01T13:36:21Z</dc:date>
    </item>
    <item>
      <title>Re: SAP ABAP: Internal table query</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sap-abap-internal-table-query/m-p/619864#M25809</link>
      <description>&lt;P&gt;It would be simpler and more effective with LOOP AT ASSIGNING instead of MODIFY.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt;It would be contemporary with expressions.&lt;/P&gt;
  &lt;P&gt; &lt;/P&gt;
  &lt;P&gt;It would be more readable if you formatted your code example.&lt;/P&gt;</description>
      <pubDate>Fri, 01 Jun 2018 16:13:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sap-abap-internal-table-query/m-p/619864#M25809</guid>
      <dc:creator>retired_member</dc:creator>
      <dc:date>2018-06-01T16:13:40Z</dc:date>
    </item>
    <item>
      <title>Re: SAP ABAP: Internal table query</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sap-abap-internal-table-query/m-p/619865#M25810</link>
      <description>&lt;P&gt;Better use LOOP AT GROUP BY.&lt;/P&gt;</description>
      <pubDate>Fri, 01 Jun 2018 16:14:47 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sap-abap-internal-table-query/m-p/619865#M25810</guid>
      <dc:creator>retired_member</dc:creator>
      <dc:date>2018-06-01T16:14:47Z</dc:date>
    </item>
  </channel>
</rss>

