<?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 performance issue in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/3716336#M894635</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;How to improve the performance of the following code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_data.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Extract Data from BKPF table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT bukrs budat gjahr belnr monat blart waers&lt;/P&gt;&lt;P&gt;  INTO TABLE it_bkpf&lt;/P&gt;&lt;P&gt;  FROM bkpf&lt;/P&gt;&lt;P&gt;                  WHERE  bukrs = p_bukrs&lt;/P&gt;&lt;P&gt;                  AND    blart IN s_blart&lt;/P&gt;&lt;P&gt;                  AND    budat IN s_budat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SORT it_bkpf by belnr ascending.&lt;/P&gt;&lt;P&gt;  IF NOT it_bkpf[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Extract Data from BSEG table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECT bukrs belnr werks hkont aufnr dmbtr sgtxt&lt;/P&gt;&lt;P&gt;    INTO TABLE it_bseg&lt;/P&gt;&lt;P&gt;    FROM bseg&lt;/P&gt;&lt;P&gt;    FOR ALL ENTRIES IN it_bkpf&lt;/P&gt;&lt;P&gt;    WHERE belnr = it_bkpf-belnr&lt;/P&gt;&lt;P&gt;    AND GJAHR =  it_bkpf-gjahr&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  AND valut = it_bkpf-budat&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    AND bukrs = p_bukrs&lt;/P&gt;&lt;P&gt;    AND werks = p_werks&lt;/P&gt;&lt;P&gt;    AND hkont IN  s_hkont&lt;/P&gt;&lt;P&gt;    AND aufnr IN  s_aufnr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   AND shkzg = 'H'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  SORT it_bseg by belnr ascending.&lt;/P&gt;&lt;P&gt;*DELETE ADJACENT DUPLICATES FROM it_bseg COMPARING BUKRS  AUFNR HKONT.&lt;/P&gt;&lt;P&gt;  LOOP AT it_bseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE it_bkpf WITH KEY&lt;/P&gt;&lt;P&gt;                                 belnr = it_bseg-belnr BINARY SEARCH.&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      it_detail-budat = it_bkpf-budat.&lt;/P&gt;&lt;P&gt;      it_detail-period = it_bkpf-budat+0(6).&lt;/P&gt;&lt;P&gt;      it_detail-hkont = it_bseg-hkont.&lt;/P&gt;&lt;P&gt;      it_detail-aufnr = it_bseg-aufnr.&lt;/P&gt;&lt;P&gt;      it_detail-sgtxt = it_bseg-sgtxt.&lt;/P&gt;&lt;P&gt;      it_detail-blart = it_bkpf-blart.&lt;/P&gt;&lt;P&gt;      it_detail-dmbtr = it_bseg-dmbtr.&lt;/P&gt;&lt;P&gt;      it_detail-waers = it_bkpf-waers.&lt;/P&gt;&lt;P&gt;      APPEND it_detail.&lt;/P&gt;&lt;P&gt;      CLEAR it_detail.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Currency Conversion.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT it_detail.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF p_waers IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'CONVERT_TO_FOREIGN_CURRENCY'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          date             = P_xdate&lt;/P&gt;&lt;P&gt;          foreign_currency = p_waers&lt;/P&gt;&lt;P&gt;          local_amount     = it_detail-dmbtr&lt;/P&gt;&lt;P&gt;          local_currency   = it_detail-waers&lt;/P&gt;&lt;P&gt;          type_of_rate     = p_kurst&lt;/P&gt;&lt;P&gt;        IMPORTING&lt;/P&gt;&lt;P&gt;          foreign_amount   = it_detail-dmbtr&lt;/P&gt;&lt;P&gt;        EXCEPTIONS&lt;/P&gt;&lt;P&gt;          no_rate_found    = 1&lt;/P&gt;&lt;P&gt;          overflow         = 2&lt;/P&gt;&lt;P&gt;          no_factors_found = 3&lt;/P&gt;&lt;P&gt;          OTHERS           = 4.&lt;/P&gt;&lt;P&gt;      IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;        CLEAR it_detail-waers.&lt;/P&gt;&lt;P&gt;        it_detail-waers = p_waers.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        MODIFY it_detail. " transporting dmbtr.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "get_data&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 07 May 2008 09:49:54 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-05-07T09:49:54Z</dc:date>
    <item>
      <title>performance issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/3716336#M894635</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;How to improve the performance of the following code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_data.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Extract Data from BKPF table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT bukrs budat gjahr belnr monat blart waers&lt;/P&gt;&lt;P&gt;  INTO TABLE it_bkpf&lt;/P&gt;&lt;P&gt;  FROM bkpf&lt;/P&gt;&lt;P&gt;                  WHERE  bukrs = p_bukrs&lt;/P&gt;&lt;P&gt;                  AND    blart IN s_blart&lt;/P&gt;&lt;P&gt;                  AND    budat IN s_budat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SORT it_bkpf by belnr ascending.&lt;/P&gt;&lt;P&gt;  IF NOT it_bkpf[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Extract Data from BSEG table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECT bukrs belnr werks hkont aufnr dmbtr sgtxt&lt;/P&gt;&lt;P&gt;    INTO TABLE it_bseg&lt;/P&gt;&lt;P&gt;    FROM bseg&lt;/P&gt;&lt;P&gt;    FOR ALL ENTRIES IN it_bkpf&lt;/P&gt;&lt;P&gt;    WHERE belnr = it_bkpf-belnr&lt;/P&gt;&lt;P&gt;    AND GJAHR =  it_bkpf-gjahr&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  AND valut = it_bkpf-budat&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    AND bukrs = p_bukrs&lt;/P&gt;&lt;P&gt;    AND werks = p_werks&lt;/P&gt;&lt;P&gt;    AND hkont IN  s_hkont&lt;/P&gt;&lt;P&gt;    AND aufnr IN  s_aufnr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   AND shkzg = 'H'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  SORT it_bseg by belnr ascending.&lt;/P&gt;&lt;P&gt;*DELETE ADJACENT DUPLICATES FROM it_bseg COMPARING BUKRS  AUFNR HKONT.&lt;/P&gt;&lt;P&gt;  LOOP AT it_bseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE it_bkpf WITH KEY&lt;/P&gt;&lt;P&gt;                                 belnr = it_bseg-belnr BINARY SEARCH.&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      it_detail-budat = it_bkpf-budat.&lt;/P&gt;&lt;P&gt;      it_detail-period = it_bkpf-budat+0(6).&lt;/P&gt;&lt;P&gt;      it_detail-hkont = it_bseg-hkont.&lt;/P&gt;&lt;P&gt;      it_detail-aufnr = it_bseg-aufnr.&lt;/P&gt;&lt;P&gt;      it_detail-sgtxt = it_bseg-sgtxt.&lt;/P&gt;&lt;P&gt;      it_detail-blart = it_bkpf-blart.&lt;/P&gt;&lt;P&gt;      it_detail-dmbtr = it_bseg-dmbtr.&lt;/P&gt;&lt;P&gt;      it_detail-waers = it_bkpf-waers.&lt;/P&gt;&lt;P&gt;      APPEND it_detail.&lt;/P&gt;&lt;P&gt;      CLEAR it_detail.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Currency Conversion.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT it_detail.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF p_waers IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'CONVERT_TO_FOREIGN_CURRENCY'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          date             = P_xdate&lt;/P&gt;&lt;P&gt;          foreign_currency = p_waers&lt;/P&gt;&lt;P&gt;          local_amount     = it_detail-dmbtr&lt;/P&gt;&lt;P&gt;          local_currency   = it_detail-waers&lt;/P&gt;&lt;P&gt;          type_of_rate     = p_kurst&lt;/P&gt;&lt;P&gt;        IMPORTING&lt;/P&gt;&lt;P&gt;          foreign_amount   = it_detail-dmbtr&lt;/P&gt;&lt;P&gt;        EXCEPTIONS&lt;/P&gt;&lt;P&gt;          no_rate_found    = 1&lt;/P&gt;&lt;P&gt;          overflow         = 2&lt;/P&gt;&lt;P&gt;          no_factors_found = 3&lt;/P&gt;&lt;P&gt;          OTHERS           = 4.&lt;/P&gt;&lt;P&gt;      IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;        CLEAR it_detail-waers.&lt;/P&gt;&lt;P&gt;        it_detail-waers = p_waers.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        MODIFY it_detail. " transporting dmbtr.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "get_data&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 May 2008 09:49:54 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/3716336#M894635</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-07T09:49:54Z</dc:date>
    </item>
    <item>
      <title>Re: performance issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/3716337#M894636</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Kumar,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Before fetching data from BKPF , use tables BSIK &amp;amp; BSAK appending the entries from both &amp;amp; based on these, fetch data from BKPF. It will improve the performance a lot.&lt;/P&gt;&lt;P&gt;I too faced the same problem.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps you too.&lt;/P&gt;&lt;P&gt;Reward if helpful.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Sipra&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 May 2008 09:56:54 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/3716337#M894636</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-07T09:56:54Z</dc:date>
    </item>
    <item>
      <title>Re: performance issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/3716338#M894637</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Kumar-&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Accessing cluster table gives poor perfomance instead use index tables for the requirement.&lt;/P&gt;&lt;P&gt;For ex:vendor use bsik and bsak&lt;/P&gt;&lt;P&gt;          customer bsid and bsad&lt;/P&gt;&lt;P&gt;         g/l            bsis and bsas.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;send me your id i will fwd table relations exe file which will be very helpful.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;~Srini....&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 May 2008 10:03:26 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/3716338#M894637</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-07T10:03:26Z</dc:date>
    </item>
    <item>
      <title>Re: performance issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/3716339#M894638</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Sipra&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can u pls give me the sample coding for this&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 May 2008 10:08:00 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/3716339#M894638</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-07T10:08:00Z</dc:date>
    </item>
    <item>
      <title>Re: performance issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/3716340#M894639</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Kumar,&lt;/P&gt;&lt;P&gt;First thing is select on cluster table will be slow. We can't help it. But find below Few tips to improve the performance of ur code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT bukrs budat gjahr belnr monat blart waers&lt;/P&gt;&lt;P&gt;INTO TABLE it_bkpf&lt;/P&gt;&lt;P&gt;FROM bkpf&lt;/P&gt;&lt;P&gt;WHERE bukrs = p_bukrs&lt;/P&gt;&lt;P&gt;AND blart IN s_blart&lt;/P&gt;&lt;P&gt;AND budat IN s_budat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;it_bkpf_temp[] = it_bkpf[].&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;SORT it_bkpf_temp BY belnr gjahr budat.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;DELETE ADJACENT DUPLICATES FROM it_bkpf_temp&lt;/STRONG&gt; &lt;STRONG&gt;COMPARING belnr gjahr budat.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;DEL&gt;SORT it_bkpf by belnr ascending.&lt;/DEL&gt;&lt;/P&gt;&lt;P&gt;IF NOT it_bkpf_temp[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Extract Data from BSEG table &lt;/P&gt;&lt;P&gt;SELECT bukrs belnr werks hkont aufnr dmbtr sgtxt&lt;/P&gt;&lt;P&gt;INTO TABLE it_bseg&lt;/P&gt;&lt;P&gt;FROM bseg&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN it_bkpf_temp&lt;/P&gt;&lt;P&gt;WHERE belnr = it_bkpf_temp-belnr&lt;/P&gt;&lt;P&gt;AND GJAHR = it_bkpf_temp-gjahr&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AND valut = it_bkpf_temp-budat &lt;/P&gt;&lt;P&gt;AND bukrs = p_bukrs&lt;/P&gt;&lt;P&gt;AND werks = p_werks&lt;/P&gt;&lt;P&gt;AND hkont IN s_hkont&lt;/P&gt;&lt;P&gt;AND aufnr IN s_aufnr.&lt;/P&gt;&lt;P&gt;AND shkzg = 'H'. &lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;SORT it_bkpf by belnr. "Ascending is by default.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Second thing is why do u need this extra table and loop(it_detail). Can't we loo at it_bseg and puth checks accordinly?&lt;/P&gt;&lt;P&gt;Also avoid header lines. These are slow compared to explicit work areas.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Vinod.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 May 2008 10:24:42 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/3716340#M894639</guid>
      <dc:creator>vinod_vemuru2</dc:creator>
      <dc:date>2008-05-07T10:24:42Z</dc:date>
    </item>
  </channel>
</rss>

