<?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: Improve ABAP statement in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/improve-abap-statement/m-p/6415288#M1408470</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Try this way..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm just giving idea..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;it's not exact code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;read table istpo into zstpo with key stuff = istpo-stuff binary search.&lt;/P&gt;&lt;P&gt;if zstpo-soble EQ '50'.&lt;/P&gt;&lt;P&gt;continue.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;on change of stuff.&lt;/P&gt;&lt;P&gt; zidnrk = zstpo-idnrk + zidnrk.&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;Thanks,&lt;/P&gt;&lt;P&gt;Indra..&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 12 Dec 2009 17:17:53 GMT</pubDate>
    <dc:creator>former_member364077</dc:creator>
    <dc:date>2009-12-12T17:17:53Z</dc:date>
    <item>
      <title>Improve ABAP statement</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/improve-abap-statement/m-p/6415287#M1408469</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i use the function module CS_BOM_EXPL_MAT_V2 to read the BoM structure.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'
      EXPORTING
        capid                 = 'ZP01' "   " BOM application
        datuv                 = sy-datum   " date on which you want to explode the bom
        mehrs                 = 'X'
        mtnrv                 = v_matnr    " header material number
        werks                 = v_werks
        stpst                 = 2
      TABLES
        stb                   = istpo
      EXCEPTIONS
        alt_not_found         = 1
        call_invalid          = 2
        material_not_found    = 3
        missing_authorization = 4
        no_bom_found          = 5
        no_plant_data         = 6
        no_suitable_bom_found = 7
        conversion_error      = 8
        OTHERS                = 9.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I want now the sum over all material number "IDNRK"  to compare this afterwards with another value.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The internal table looks like&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;STUFE; IDNRK;SOBSL.........&lt;/P&gt;&lt;P&gt;1; 111; 50&lt;/P&gt;&lt;P&gt;2; 222; 0&lt;/P&gt;&lt;P&gt;2; 333; 0&lt;/P&gt;&lt;P&gt;1; 444; 0&lt;/P&gt;&lt;P&gt;2; 555; 0&lt;/P&gt;&lt;P&gt;2; 666; 0&lt;/P&gt;&lt;P&gt;1; 777; 0&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now i only to sum the field IDNRK if the field "STUFE" = 1 and only "STUFE" = 2 if the SOBSL form the line with "STUFE" = 1 before is 50.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;111 + 222 + 333 + 444 + 777&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For the moment i use a LOOP with many IF statement in it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
LOOP AT istpo into zstpo.
  IF zstpo-sobsl = '50'.
    zidnrk = zstpo-idnrk + zidnrk.
    zaehler = 0.
  ELSE.
    IF zaehler = 0 and zstpo-stufe = 2.
      zidnrk = zstpo-idnrk + zidnrk.
    ELSE.
      zaehler = 1.
      IF zstpo-stufe = 1.
        zidnrk = zstpo-idnrk + zidnrk.
      ENDIF.
    ENDIF.
   ENDIF.
ENDLOOP.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now i search for a better way to do this. I only use ABAP in query so it's very simple and restriced.&lt;/P&gt;&lt;P&gt;I hope someone can help and give me some hints how can i improve this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;kind regards,&lt;/P&gt;&lt;P&gt;Bernhard&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: Bernhard Schöberl on Dec 12, 2009 5:51 PM&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 12 Dec 2009 16:39:03 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/improve-abap-statement/m-p/6415287#M1408469</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-12-12T16:39:03Z</dc:date>
    </item>
    <item>
      <title>Re: Improve ABAP statement</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/improve-abap-statement/m-p/6415288#M1408470</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Try this way..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm just giving idea..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;it's not exact code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;read table istpo into zstpo with key stuff = istpo-stuff binary search.&lt;/P&gt;&lt;P&gt;if zstpo-soble EQ '50'.&lt;/P&gt;&lt;P&gt;continue.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;on change of stuff.&lt;/P&gt;&lt;P&gt; zidnrk = zstpo-idnrk + zidnrk.&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;Thanks,&lt;/P&gt;&lt;P&gt;Indra..&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 12 Dec 2009 17:17:53 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/improve-abap-statement/m-p/6415288#M1408470</guid>
      <dc:creator>former_member364077</dc:creator>
      <dc:date>2009-12-12T17:17:53Z</dc:date>
    </item>
    <item>
      <title>Re: Improve ABAP statement</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/improve-abap-statement/m-p/6415289#M1408471</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;the logic provided below might help you in some improvement in the performance.....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
LOOP AT istpo into zstpo.
  IF  zstpo-stufe = 1.
    zidnrk = zstpo-idnrk + zidnrk.
    IF zstpo-sobsl = '50'.
      zaehler = 0.
    ELSE.
      zaehler = 1.
    ENDIF.
    CONTINUE.
  ENDIF.

  IF zaehler = 0.
    zidnrk = zstpo-idnrk + zidnrk.
 ENDIF.
ENDLOOP.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Sid&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 12 Dec 2009 18:56:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/improve-abap-statement/m-p/6415289#M1408471</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-12-12T18:56:10Z</dc:date>
    </item>
    <item>
      <title>Re: Improve ABAP statement</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/improve-abap-statement/m-p/6415290#M1408472</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello, &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thank you to both of you.&lt;/P&gt;&lt;P&gt;This will help and i learned something new.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;kind regards,&lt;/P&gt;&lt;P&gt;Bernhard&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 12 Dec 2009 19:06:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/improve-abap-statement/m-p/6415290#M1408472</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-12-12T19:06:05Z</dc:date>
    </item>
  </channel>
</rss>

