<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>new syntax &#8211; SAP EWM Help</title>
	<atom:link href="https://www.sapewmhelp.com/question-tag/new-syntax/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.sapewmhelp.com</link>
	<description>SAP EWM questions answered by experts — ABAP, S/4HANA, warehouse management</description>
	<lastBuildDate>Fri, 01 Aug 2025 18:57:51 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.2</generator>
	<item>
		<title>How can you extract specific fields from an internal table using FOR &#8230; WHERE inside a VALUE expression?</title>
		<link>https://www.sapewmhelp.com/question/how-can-you-extract-specific-fields-from-an-internal-table-using-for-where-inside-a-value-expression/</link>
					<comments>https://www.sapewmhelp.com/question/how-can-you-extract-specific-fields-from-an-internal-table-using-for-where-inside-a-value-expression/#respond</comments>
		
		<dc:creator><![CDATA[DPM125]]></dc:creator>
		<pubDate>Fri, 01 Aug 2025 18:57:51 +0000</pubDate>
				<guid isPermaLink="false">https://www.sapewmhelp.com/?question=how-can-you-extract-specific-fields-from-an-internal-table-using-for-where-inside-a-value-expression</guid>

					<description><![CDATA[You can build a new internal table with only selected entries and fields like this: *&#38;---------------------------------------------------------------------* *&#38; Report  ZREP_LCLCLASS *&#38;---------------------------------------------------------------------* *&#38; Demonstrates modern ABAP syntax: REDUCE, FILTER, FOR expressions *&#38;---------------------------------------------------------------------* REPORT zrep_lclclass. *---------------------------- * Example 1: REDUCE Operator *---------------------------- TYPES: BEGIN OF ty_order,          id     TYPE i,          amount TYPE i,        END OF ty_order. DATA: lt_orders TYPE STANDARD TABLE OF ty_order WITH EMPTY KEY,       lv_total  TYPE i. lt_orders = VALUE #(   ( id = 1 amount = 100 )   ( id = 2 amount = 250 )   ( id = 3 amount = 150 ) ). lv_total = REDUCE i( INIT sum = 0                      FOR order IN lt_orders                      NEXT sum = sum + order-amount ). WRITE: / '--- REDUCE Example ---',        / 'Total Amount:', lv_total. *---------------------------- * Example 2: FILTER Operator *---------------------------- TYPES: BEGIN OF ty_user,          name   TYPE string,          status TYPE string,        END OF ty_user. DATA: lt_users TYPE STANDARD TABLE OF ty_user WITH EMPTY KEY,       lt_active_users TYPE STANDARD TABLE OF ty_user WITH EMPTY KEY. lt_users = VALUE #(   ( name = 'Alice'   status = 'ACTIVE' )   ( name = 'Bob'     status = 'INACTIVE' )   ( name = 'Charlie' status = 'ACTIVE' ) ). lt_active_users = FILTER #( lt_users WHERE status = 'ACTIVE' ). [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>You can build a new internal table with only selected entries and fields like this:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code><!--StartFragment --><span><span>*&amp;---------------------------------------------------------------------*</span>
<span>*&amp; Report  ZREP_LCLCLASS</span>
<span>*&amp;---------------------------------------------------------------------*</span>
<span>*&amp; Demonstrates modern ABAP syntax: REDUCE, FILTER, FOR expressions</span>
<span>*&amp;---------------------------------------------------------------------*</span>

<span>REPORT </span>zrep_lclclass<span>.</span>

<span>*----------------------------</span>
<span>* Example 1: REDUCE Operator</span>
<span>*----------------------------</span>
<span>TYPES</span><span>: </span><span>BEGIN </span><span>OF </span>ty_order<span>,</span>
         <span>id     </span><span>TYPE </span><span>i</span><span>,</span>
         amount <span>TYPE </span><span>i</span><span>,</span>
       <span>END </span><span>OF </span>ty_order<span>.</span>

<span>DATA</span><span>: </span>lt_orders <span>TYPE </span><span>STANDARD </span><span>TABLE </span><span>OF </span>ty_order <span>WITH </span>EMPTY <span>KEY</span><span>,</span>
      lv_total  <span>TYPE </span><span>i</span><span>.</span>

lt_orders <span>= </span><span>VALUE </span>#<span>(</span>
  <span>( </span><span>id </span><span>= </span><span>1 </span>amount <span>= </span><span>100 </span><span>)</span>
  <span>( </span><span>id </span><span>= </span><span>2 </span>amount <span>= </span><span>250 </span><span>)</span>
  <span>( </span><span>id </span><span>= </span><span>3 </span>amount <span>= </span><span>150 </span><span>)</span>
<span>)</span><span>.</span>

lv_total <span>= </span>REDUCE <span>i</span><span>( </span>INIT <span>sum </span><span>= </span><span>0</span>
                     <span>FOR </span><span>order </span><span>IN </span>lt_orders
                     <span>NEXT </span><span>sum </span><span>= </span><span>sum </span>+ <span>order</span><span>-</span>amount <span>)</span><span>.</span>

<span>WRITE</span><span>: </span>/ '<span>-</span>-<span>- </span>REDUCE Example <span>-</span>-<span>-</span>'<span>,</span>
       / 'Total Amount<span>:</span>'<span>, </span>lv_total<span>.</span>

<span>*----------------------------</span>
<span>* Example 2: FILTER Operator</span>
<span>*----------------------------</span>
<span>TYPES</span><span>: </span><span>BEGIN </span><span>OF </span>ty_user<span>,</span>
         name   <span>TYPE </span>string<span>,</span>
         status <span>TYPE </span>string<span>,</span>
       <span>END </span><span>OF </span>ty_user<span>.</span>

<span>DATA</span><span>: </span>lt_users <span>TYPE </span><span>STANDARD </span><span>TABLE </span><span>OF </span>ty_user <span>WITH </span>EMPTY <span>KEY</span><span>,</span>
      lt_active_users <span>TYPE </span><span>STANDARD </span><span>TABLE </span><span>OF </span>ty_user <span>WITH </span>EMPTY <span>KEY</span><span>.</span>

lt_users <span>= </span><span>VALUE </span>#<span>(</span>
  <span>( </span>name <span>= </span>'Alice'   status <span>= </span>'ACTIVE' <span>)</span>
  <span>( </span>name <span>= </span>'Bob'     status <span>= </span>'INACTIVE' <span>)</span>
  <span>( </span>name <span>= </span>'Charlie' status <span>= </span>'ACTIVE' <span>)</span>
<span>)</span><span>.</span>

lt_active_users <span>= </span>FILTER #<span>( </span>lt_users <span>WHERE </span>status <span>= </span>'ACTIVE' <span>)</span><span>.</span>

<span>WRITE</span><span>: </span>/ '<span>-</span>-<span>- </span>FILTER Example <span>-</span>-<span>-</span>'<span>.</span>

<span>LOOP </span><span>AT </span>lt_active_users <span>INTO </span><span>DATA</span><span>(</span>user<span>)</span><span>.</span>
  <span>WRITE</span><span>: </span>/ user<span>-</span>name<span>, </span>user<span>-</span>status<span>.</span>
<span>ENDLOOP</span><span>.</span>

<span>*------------------------------------------------------</span>
<span>* Example 3: FOR Expression - Extract Specific Fields</span>
<span>*------------------------------------------------------</span>
<span>DATA</span><span>: </span>lt_names <span>TYPE </span><span>STANDARD </span><span>TABLE </span><span>OF </span>string <span>WITH </span>EMPTY <span>KEY</span><span>.</span>

lt_names <span>= </span><span>VALUE </span>string_table<span>(</span>
  <span>FOR </span>user <span>IN </span>lt_users
  <span>WHERE </span><span>( </span>status <span>= </span>'ACTIVE' <span>)</span>
  <span>( </span>user<span>-</span>name <span>)</span>
<span>)</span><span>.</span>

<span>WRITE</span><span>: </span>/ '<span>-</span>-<span>- </span><span>FOR </span>Expression Example <span>-</span>-<span>-</span>'<span>.</span>

<span>LOOP </span><span>AT </span>lt_names <span>INTO </span><span>DATA</span><span>(</span>name<span>)</span><span>.</span>
  <span>WRITE</span><span>: </span>/ name<span>.</span>
<span>ENDLOOP</span><span>.</span>
</span> </code></pre>
<p>This creates a new string table containing only the names of users whose <code>status = 'ACTIVE'</code>—short, clean, and readable.</p>
<p>Output:</p>
<p>&#8212; REDUCE Example &#8212;<br />
Total Amount: 500</p>
<p>&#8212; FILTER Example &#8212;<br />
Alice ACTIVE<br />
Charlie ACTIVE</p>
<p>&#8212; FOR Expression Example &#8212;<br />
Alice<br />
Charlie</p>
</div>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.sapewmhelp.com/question/how-can-you-extract-specific-fields-from-an-internal-table-using-for-where-inside-a-value-expression/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>How do you use the REDUCE operator to sum values in an internal table in modern ABAP?</title>
		<link>https://www.sapewmhelp.com/question/how-do-you-use-the-reduce-operator-to-sum-values-in-an-internal-table-in-modern-abap/</link>
					<comments>https://www.sapewmhelp.com/question/how-do-you-use-the-reduce-operator-to-sum-values-in-an-internal-table-in-modern-abap/#respond</comments>
		
		<dc:creator><![CDATA[DPM125]]></dc:creator>
		<pubDate>Fri, 01 Aug 2025 18:51:08 +0000</pubDate>
				<guid isPermaLink="false">https://www.sapewmhelp.com/?question=how-do-you-use-the-reduce-operator-to-sum-values-in-an-internal-table-in-modern-abap</guid>

					<description><![CDATA[REDUCE is used to aggregate values like totals, counts, etc., in a clean, functional style. *&#38;---------------------------------------------------------------------* *&#38; Report  ZREP_LCLCLASS *&#38; *&#38;---------------------------------------------------------------------* *&#38; *&#38; *&#38;---------------------------------------------------------------------* REPORT zrep_lclclass. TYPES: BEGIN OF ty_order,          id     TYPE i,          amount TYPE i,        END OF ty_order. DATA: lt_orders TYPE STANDARD TABLE OF ty_order WITH EMPTY KEY,       lv_total  TYPE i. lt_orders = VALUE #(   ( id = 1 amount = 100 )   ( id = 2 amount = 250 )   ( id = 3 amount = 150 ) ). lv_total = REDUCE i( INIT sum = 0                      FOR order IN lt_orders                      NEXT sum = sum + order-amount ). WRITE: / 'Total Amount:', lv_total. Output: Total Amount: 500]]></description>
										<content:encoded><![CDATA[<p><code>REDUCE</code> is used to aggregate values like totals, counts, etc., in a clean, functional style.</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code><!--StartFragment --><span><span>*&amp;---------------------------------------------------------------------*</span>
<span>*&amp; Report  ZREP_LCLCLASS</span>
<span>*&amp;</span>
<span>*&amp;---------------------------------------------------------------------*</span>
<span>*&amp;</span>
<span>*&amp;</span>
<span>*&amp;---------------------------------------------------------------------*</span>

<span>REPORT </span>zrep_lclclass<span>.</span>

<span>TYPES</span><span>: </span><span>BEGIN </span><span>OF </span>ty_order<span>,</span>
         <span>id     </span><span>TYPE </span><span>i</span><span>,</span>
         amount <span>TYPE </span><span>i</span><span>,</span>
       <span>END </span><span>OF </span>ty_order<span>.</span>

<span>DATA</span><span>: </span>lt_orders <span>TYPE </span><span>STANDARD </span><span>TABLE </span><span>OF </span>ty_order <span>WITH </span>EMPTY <span>KEY</span><span>,</span>
      lv_total  <span>TYPE </span><span>i</span><span>.</span>

lt_orders <span>= </span><span>VALUE </span>#<span>(</span>
  <span>( </span><span>id </span><span>= </span><span>1 </span>amount <span>= </span><span>100 </span><span>)</span>
  <span>( </span><span>id </span><span>= </span><span>2 </span>amount <span>= </span><span>250 </span><span>)</span>
  <span>( </span><span>id </span><span>= </span><span>3 </span>amount <span>= </span><span>150 </span><span>)</span>
<span>)</span><span>.</span>

lv_total <span>= </span>REDUCE <span>i</span><span>( </span>INIT <span>sum </span><span>= </span><span>0</span>
                     <span>FOR </span><span>order </span><span>IN </span>lt_orders
                     <span>NEXT </span><span>sum </span><span>= </span><span>sum </span>+ <span>order</span><span>-</span>amount <span>)</span><span>.</span>

<span>WRITE</span><span>: </span>/ 'Total Amount<span>:</span>'<span>, </span>lv_total<span>.</span></span> </code></pre>
<p>Output:</p>
<p>Total Amount: 500</p>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://www.sapewmhelp.com/question/how-do-you-use-the-reduce-operator-to-sum-values-in-an-internal-table-in-modern-abap/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
