<?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 Math between multiple REDUCE in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/math-between-multiple-reduce/m-p/12056769#M1969090</link>
    <description>&lt;P&gt;Hi.&lt;/P&gt;
  &lt;P&gt;I want to count distinct value in 2 difference internal table then sum so I do as below:&lt;/P&gt;
  &lt;PRE&gt;&lt;CODE&gt;CNT_FINAL = ( REDUCE I( INIT CNT1 = 0
                        FOR GROUPS OF M1 IN GRP1 GROUP BY M1-ID
                        NEXT CNT1 = CNT1 + 1 ) ) +
            ( REDUCE I( INIT CNT2 = 0
                        FOR GROUPS OF M2 IN GRP2 GROUP BY M2-ID
                        NEXT CNT2 = CNT2 + 1 ) ).&lt;/CODE&gt;&lt;/PRE&gt;
  &lt;P&gt;but the result is not correct. if i change like this ( calculation in 2 steps ), it correct:&lt;/P&gt;
  &lt;PRE&gt;&lt;CODE&gt;CNT_FINAL = REDUCE I( INIT CNT1 = 0
                      FOR GROUPS OF M1 IN GRP1 GROUP BY M1-ID
                      NEXT CNT1 = CNT1 + 1 ).
CNT_FINAL = CNT_FINAL +
            REDUCE I( INIT CNT2 = 0
                      FOR GROUPS OF M2 IN GRP2 GROUP BY M2-ID
                      NEXT CNT2 = CNT2 + 1 ).&lt;/CODE&gt;&lt;/PRE&gt;
  &lt;P&gt;so I don't know is there any restrict to do the calculation between 2 REDUCE or not.&lt;/P&gt;
  &lt;P&gt;My pseudo code:&lt;/P&gt;
  &lt;PRE&gt;&lt;CODE&gt;DATA CNT_FINAL TYPE I.
TYPES: BEGIN OF TY_GRP,
         ID  TYPE C,
         DAT TYPE C,
       END OF TY_GRP.
DATA: GRP1 TYPE TABLE OF TY_GRP,
      GRP2 TYPE TABLE OF TY_GRP.
GRP1 = VALUE #( ( ID = 1 DAT = 'a' )
                ( ID = 1 DAT = 'x' )
                ( ID = 2 DAT = 'b' ) ).
GRP2 = VALUE #( ( ID = 3 DAT = 'a' )
                ( ID = 4 DAT = 'b' ) ).
" Correct
CNT_FINAL = REDUCE I( INIT CNT1 = 0
                      FOR GROUPS OF M1 IN GRP1 GROUP BY M1-ID
                      NEXT CNT1 = CNT1 + 1 ).
CNT_FINAL = CNT_FINAL +
            REDUCE I( INIT CNT2 = 0
                      FOR GROUPS OF M2 IN GRP2 GROUP BY M2-ID
                      NEXT CNT2 = CNT2 + 1 ).
BREAK-POINT.
" Not correct
CLEAR CNT_FINAL.
CNT_FINAL = ( REDUCE I( INIT CNT1 = 0
                        FOR GROUPS OF M1 IN GRP1 GROUP BY M1-ID
                        NEXT CNT1 = CNT1 + 1 ) ) +
            ( REDUCE I( INIT CNT2 = 0
                        FOR GROUPS OF M2 IN GRP2 GROUP BY M2-ID
                        NEXT CNT2 = CNT2 + 1 ) ).
BREAK-POINT.
&lt;/CODE&gt;&lt;/PRE&gt;</description>
    <pubDate>Wed, 04 Sep 2019 07:12:06 GMT</pubDate>
    <dc:creator>DoanManhQuynh</dc:creator>
    <dc:date>2019-09-04T07:12:06Z</dc:date>
    <item>
      <title>Math between multiple REDUCE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/math-between-multiple-reduce/m-p/12056769#M1969090</link>
      <description>&lt;P&gt;Hi.&lt;/P&gt;
  &lt;P&gt;I want to count distinct value in 2 difference internal table then sum so I do as below:&lt;/P&gt;
  &lt;PRE&gt;&lt;CODE&gt;CNT_FINAL = ( REDUCE I( INIT CNT1 = 0
                        FOR GROUPS OF M1 IN GRP1 GROUP BY M1-ID
                        NEXT CNT1 = CNT1 + 1 ) ) +
            ( REDUCE I( INIT CNT2 = 0
                        FOR GROUPS OF M2 IN GRP2 GROUP BY M2-ID
                        NEXT CNT2 = CNT2 + 1 ) ).&lt;/CODE&gt;&lt;/PRE&gt;
  &lt;P&gt;but the result is not correct. if i change like this ( calculation in 2 steps ), it correct:&lt;/P&gt;
  &lt;PRE&gt;&lt;CODE&gt;CNT_FINAL = REDUCE I( INIT CNT1 = 0
                      FOR GROUPS OF M1 IN GRP1 GROUP BY M1-ID
                      NEXT CNT1 = CNT1 + 1 ).
CNT_FINAL = CNT_FINAL +
            REDUCE I( INIT CNT2 = 0
                      FOR GROUPS OF M2 IN GRP2 GROUP BY M2-ID
                      NEXT CNT2 = CNT2 + 1 ).&lt;/CODE&gt;&lt;/PRE&gt;
  &lt;P&gt;so I don't know is there any restrict to do the calculation between 2 REDUCE or not.&lt;/P&gt;
  &lt;P&gt;My pseudo code:&lt;/P&gt;
  &lt;PRE&gt;&lt;CODE&gt;DATA CNT_FINAL TYPE I.
TYPES: BEGIN OF TY_GRP,
         ID  TYPE C,
         DAT TYPE C,
       END OF TY_GRP.
DATA: GRP1 TYPE TABLE OF TY_GRP,
      GRP2 TYPE TABLE OF TY_GRP.
GRP1 = VALUE #( ( ID = 1 DAT = 'a' )
                ( ID = 1 DAT = 'x' )
                ( ID = 2 DAT = 'b' ) ).
GRP2 = VALUE #( ( ID = 3 DAT = 'a' )
                ( ID = 4 DAT = 'b' ) ).
" Correct
CNT_FINAL = REDUCE I( INIT CNT1 = 0
                      FOR GROUPS OF M1 IN GRP1 GROUP BY M1-ID
                      NEXT CNT1 = CNT1 + 1 ).
CNT_FINAL = CNT_FINAL +
            REDUCE I( INIT CNT2 = 0
                      FOR GROUPS OF M2 IN GRP2 GROUP BY M2-ID
                      NEXT CNT2 = CNT2 + 1 ).
BREAK-POINT.
" Not correct
CLEAR CNT_FINAL.
CNT_FINAL = ( REDUCE I( INIT CNT1 = 0
                        FOR GROUPS OF M1 IN GRP1 GROUP BY M1-ID
                        NEXT CNT1 = CNT1 + 1 ) ) +
            ( REDUCE I( INIT CNT2 = 0
                        FOR GROUPS OF M2 IN GRP2 GROUP BY M2-ID
                        NEXT CNT2 = CNT2 + 1 ) ).
BREAK-POINT.
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 04 Sep 2019 07:12:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/math-between-multiple-reduce/m-p/12056769#M1969090</guid>
      <dc:creator>DoanManhQuynh</dc:creator>
      <dc:date>2019-09-04T07:12:06Z</dc:date>
    </item>
  </channel>
</rss>

