<?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: performance Issue in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485124#M226508</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Instead of using Inner Join try out using "For all Entries"&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This will optimise ur program&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For more info about how to use it check this &lt;A class="jive_macro jive_macro_thread" href="https://community.sap.com/" __jive_macro_name="thread" modifiedtitle="true" __default_attr="188545"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please reward points if found helpful&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 25 Aug 2006 16:51:10 GMT</pubDate>
    <dc:creator>rahulkavuri</dc:creator>
    <dc:date>2006-08-25T16:51:10Z</dc:date>
    <item>
      <title>performance Issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485122#M226506</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The following code takes long time to run. Any inputs on how it can be tuned.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT  vbak~vbeln vbap~posnr vbak~erdat vbak~erzet      &lt;/P&gt;&lt;P&gt;          vbak~auart vbak~waerk vbkd~kdgrp vbak~lifsk      &lt;/P&gt;&lt;P&gt;          vbak~vsbed vbak~bstnk vbak~rplnr vbak~bsark vbak~kunnr&lt;/P&gt;&lt;P&gt;          vbap~matnr vbap~arktx vbap~kzwi3 vbap~kzwi4 vbap~abgru&lt;/P&gt;&lt;P&gt;          vbap~netwr                                      &lt;/P&gt;&lt;P&gt;          vbap~kwmeng vbak~vkorg vbkd~bzirk vbkd~ihrez      &lt;/P&gt;&lt;P&gt;         vbkd~bsark vbkd~zterm vbkd~prsdt                   &lt;/P&gt;&lt;P&gt;         vbak~zzwebuname vbak~augru                        &lt;/P&gt;&lt;P&gt;         vbap~matkl vbap~prodh                            &lt;/P&gt;&lt;P&gt;         vbak~zzwebpid                                     &lt;/P&gt;&lt;P&gt;    INTO TABLE t_order&lt;/P&gt;&lt;P&gt;    FROM vbak INNER JOIN vbkd                               &lt;/P&gt;&lt;P&gt;    ON vbak~vbeln EQ vbkd~vbeln                             &lt;/P&gt;&lt;P&gt;             INNER JOIN vbap&lt;/P&gt;&lt;P&gt;    ON vbak~vbeln EQ vbap~vbeln&lt;/P&gt;&lt;P&gt;    WHERE vbak~vkorg IN s_vkorg&lt;/P&gt;&lt;P&gt;      AND vbak~erdat IN s_erdat&lt;/P&gt;&lt;P&gt;      AND vbak~auart IN s_auart&lt;/P&gt;&lt;P&gt;      AND vbkd~posnr EQ '000000'                            &lt;/P&gt;&lt;P&gt;      AND vbkd~kdgrp IN s_kdgrp                            &lt;/P&gt;&lt;P&gt;      AND vbkd~bzirk IN s_bzirk.                            &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT t_order BY vbeln posnr.&lt;/P&gt;&lt;P&gt;  CLEAR z_total_rec.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT t_order.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR t_outso.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ON CHANGE OF t_order-vbeln.&lt;/P&gt;&lt;P&gt;      CLEAR: fpltc, v_ccnum.&lt;/P&gt;&lt;P&gt;      CLEAR: v_cre_rev, v_frd_rev, v_frd_rvr,&lt;/P&gt;&lt;P&gt;             v_frd_rrr, v_crg_back.&lt;/P&gt;&lt;P&gt;      IF NOT t_order-rplnr IS INITIAL.                     &lt;/P&gt;&lt;P&gt;        SELECT fpltr ccins ccnum datbi rcavr ccold         &lt;/P&gt;&lt;P&gt;               audat autim aunum autra rcrsp cctyp                                    &lt;/P&gt;&lt;P&gt;               FROM fpltc UP TO 1 ROWS&lt;/P&gt;&lt;P&gt;               INTO (fpltc-fpltr, fpltc-ccins, fpltc-ccnum,&lt;/P&gt;&lt;P&gt;                        fpltc-datbi, fpltc-rcavr, fpltc-ccold,&lt;/P&gt;&lt;P&gt;                     fpltc-audat, fpltc-autim, fpltc-aunum, &lt;/P&gt;&lt;P&gt;                     fpltc-autra, fpltc-rcrsp, fpltc-cctyp) &lt;/P&gt;&lt;P&gt;               WHERE fplnr = t_order-rplnr&lt;/P&gt;&lt;P&gt;              ORDER BY fpltr DESCENDING.                   &lt;/P&gt;&lt;P&gt;        ENDSELECT.&lt;/P&gt;&lt;P&gt;      ENDIF.                                               &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE sy-mandt t_order-vbeln INTO v_tabkey.&lt;/P&gt;&lt;P&gt;      REFRESH cdpos_tab.&lt;/P&gt;&lt;P&gt;      CLEAR: cdpos_tab,z5_block,z5_block_released.&lt;/P&gt;&lt;P&gt;      SELECT  * FROM cdpos INTO TABLE cdpos_tab&lt;/P&gt;&lt;P&gt;      WHERE objectclas EQ 'VERKBELEG' AND&lt;/P&gt;&lt;P&gt;            objectid EQ t_order-vbeln AND&lt;/P&gt;&lt;P&gt;            tabname EQ 'VBAK' AND&lt;/P&gt;&lt;P&gt;            tabkey EQ v_tabkey AND&lt;/P&gt;&lt;P&gt;            fname EQ 'LIFSK'.&lt;/P&gt;&lt;P&gt;      IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;        LOOP AT cdpos_tab.&lt;/P&gt;&lt;P&gt;          IF cdpos_tab-value_new = 'Z5' OR cdpos_tab-value_old = 'Z5'.&lt;/P&gt;&lt;P&gt;            z5_block = 'Y'.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;          IF cdpos_tab-value_new = ' ' AND cdpos_tab-value_old = 'Z5'.&lt;/P&gt;&lt;P&gt;            z5_block_released = 'Y'.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;        ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF z5_block IS INITIAL.&lt;/P&gt;&lt;P&gt;        IF t_order-lifsk = 'Z5'.&lt;/P&gt;&lt;P&gt;          z5_block = 'Y'.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SELECT SINGLE cmgst INTO vbuk-cmgst&lt;/P&gt;&lt;P&gt;                          FROM vbuk&lt;/P&gt;&lt;P&gt;                          WHERE vbeln EQ t_order-vbeln.&lt;/P&gt;&lt;P&gt;      IF vbuk-cmgst EQ 'B'.                                 &lt;/P&gt;&lt;P&gt;         v_cre_rev = 'YES'.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        CLEAR cdpos.&lt;/P&gt;&lt;P&gt;        SELECT value_old FROM cdpos INTO cdpos-value_old&lt;/P&gt;&lt;P&gt;                         UP TO 1 ROWS&lt;/P&gt;&lt;P&gt;                         WHERE objectclas EQ c_verkbeleg&lt;/P&gt;&lt;P&gt;                           AND objectid   EQ t_order-vbeln&lt;/P&gt;&lt;P&gt;                           AND tabname    EQ c_vbuk&lt;/P&gt;&lt;P&gt;                           AND fname      EQ c_cmgst&lt;/P&gt;&lt;P&gt;                           AND value_old  EQ c_charb.&lt;/P&gt;&lt;P&gt;        ENDSELECT.&lt;/P&gt;&lt;P&gt;        IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;          v_cre_rev = 'YES'.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          v_cre_rev = 'NO'.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF NOT t_order-rplnr IS INITIAL.                     &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CLEAR: zcc_groupid, zcc_fraudres.&lt;/P&gt;&lt;P&gt;        SELECT SINGLE groupid FROM zcc_groupid&lt;/P&gt;&lt;P&gt;                              INTO zcc_groupid-groupid&lt;/P&gt;&lt;P&gt;                              WHERE vbeln EQ t_order-vbeln.&lt;/P&gt;&lt;P&gt;        CLEAR: w_oid,w_zcvm,w_zvbv,w_ex_resultcode,w_ex_resultmsg,&lt;/P&gt;&lt;P&gt;               w_audat, w_autim, w_zavr.&lt;/P&gt;&lt;P&gt;        CLEAR : w_rcrsp, w_score.                           &lt;/P&gt;&lt;P&gt;        SELECT    ex_resultcode ex_resultmsg audat autim&lt;/P&gt;&lt;P&gt;                   rcrsp score                              &lt;/P&gt;&lt;P&gt;                     FROM zcc_fraudres   UP TO 1 ROWS&lt;/P&gt;&lt;P&gt;                     INTO (w_ex_resultcode , w_ex_resultmsg, w_audat,&lt;/P&gt;&lt;P&gt;                           w_autim, w_rcrsp, w_score)       &lt;/P&gt;&lt;P&gt;                    WHERE groupid EQ zcc_groupid-groupid&lt;/P&gt;&lt;P&gt;                    ORDER BY audat  DESCENDING             &lt;/P&gt;&lt;P&gt;                             autim  DESCENDING.             &lt;/P&gt;&lt;P&gt;        ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CLEAR : t_zzoid, w_temp_zzoid, w_counter.&lt;/P&gt;&lt;P&gt;        REFRESH t_zzoid.&lt;/P&gt;&lt;P&gt;        SELECT * FROM zzoid INTO TABLE t_zzoid&lt;/P&gt;&lt;P&gt;                            WHERE z_groupid EQ zcc_groupid-groupid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        DELETE t_zzoid WHERE ccnum NE fpltc-ccnum.&lt;/P&gt;&lt;P&gt;        SORT t_zzoid BY audat ASCENDING autim ASCENDING.&lt;/P&gt;&lt;P&gt;        READ TABLE t_zzoid INDEX 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        MOVE  t_zzoid-zcvm          TO w_zcvm.&lt;/P&gt;&lt;P&gt;        MOVE  t_zzoid-zvbv          TO w_zvbv.&lt;/P&gt;&lt;P&gt;        MOVE  t_zzoid-oid           TO w_oid.&lt;/P&gt;&lt;P&gt;        MOVE  t_zzoid-audat         TO w_audat.&lt;/P&gt;&lt;P&gt;        MOVE  t_zzoid-autim         TO w_autim.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        SELECT zrsp INTO w_zrsp FROM zzoid UP TO 1 ROWS     &lt;/P&gt;&lt;P&gt;                    WHERE  audat  = fpltc-audat             &lt;/P&gt;&lt;P&gt;                    AND    autim  = fpltc-autim             &lt;/P&gt;&lt;P&gt;                    AND    aunum  = fpltc-aunum             &lt;/P&gt;&lt;P&gt;                    AND    ccnum  = fpltc-ccnum             &lt;/P&gt;&lt;P&gt;                    AND    autra  = fpltc-autra.            &lt;/P&gt;&lt;P&gt;        ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        SELECT oid FROM zcc_fraudres                        &lt;/P&gt;&lt;P&gt;                     INTO zcc_fraudres-oid UP TO 1 ROWS     &lt;/P&gt;&lt;P&gt;                       WHERE groupid EQ zcc_groupid-groupid&lt;/P&gt;&lt;P&gt;                         AND rcrsp   EQ '05'.&lt;/P&gt;&lt;P&gt;        ENDSELECT.&lt;/P&gt;&lt;P&gt;        IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;          v_frd_rev = 'YES'.&lt;/P&gt;&lt;P&gt;          SELECT message_num FROM zcc_fraudres&lt;/P&gt;&lt;P&gt;                       INTO zcc_fraudres-message_num&lt;/P&gt;&lt;P&gt;                        WHERE groupid EQ zcc_groupid-groupid&lt;/P&gt;&lt;P&gt;                          AND message_num NE ' '.&lt;/P&gt;&lt;P&gt;            IF v_frd_rvr IS INITIAL.&lt;/P&gt;&lt;P&gt;              v_frd_rvr = zcc_fraudres-message_num.&lt;/P&gt;&lt;P&gt;            ELSE.&lt;/P&gt;&lt;P&gt;              CONCATENATE v_frd_rvr zcc_fraudres-message_num&lt;/P&gt;&lt;P&gt;                          INTO v_frd_rvr SEPARATED BY ','.&lt;/P&gt;&lt;P&gt;            ENDIF.&lt;/P&gt;&lt;P&gt;          ENDSELECT.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          v_frd_rev = 'NO'.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CLEAR zcc_fraudres.&lt;/P&gt;&lt;P&gt;        SELECT res_code chargeback&lt;/P&gt;&lt;P&gt;                     FROM zcc_fraudres&lt;/P&gt;&lt;P&gt;                     INTO (zcc_fraudres-res_code,&lt;/P&gt;&lt;P&gt;                            zcc_fraudres-chargeback)&lt;/P&gt;&lt;P&gt;                     UP TO 1 ROWS&lt;/P&gt;&lt;P&gt;                     WHERE groupid EQ zcc_groupid-groupid&lt;/P&gt;&lt;P&gt;                      AND ( rcrsp   EQ '06' OR&lt;/P&gt;&lt;P&gt;                                rcrsp   EQ '07' ).&lt;/P&gt;&lt;P&gt;        ENDSELECT.&lt;/P&gt;&lt;P&gt;        IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;          v_frd_rrr = zcc_fraudres-res_code.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        IF zcc_fraudres-chargeback IS INITIAL.&lt;/P&gt;&lt;P&gt;          v_crg_back = 'NO'.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          v_crg_back = 'YES'.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CLEAR: v_zchk.&lt;/P&gt;&lt;P&gt;        SELECT COUNT(*) INTO v_zchk FROM zcc_fraudres&lt;/P&gt;&lt;P&gt;                        WHERE groupid     = zcc_groupid-groupid&lt;/P&gt;&lt;P&gt;                       AND message_num EQ space             &lt;/P&gt;&lt;P&gt;                          AND source      = 'ZCHK'.&lt;/P&gt;&lt;P&gt;        FREE t_fpltc.&lt;/P&gt;&lt;P&gt;        &lt;/P&gt;&lt;P&gt;      CLEAR: v_rtext,  v_rtext_0002.                       &lt;/P&gt;&lt;P&gt;      PERFORM get_header_text USING t_order-vbeln 'ZWBH'.   &lt;/P&gt;&lt;P&gt;      PERFORM get_header_text USING t_order-vbeln '0002'.   &lt;/P&gt;&lt;P&gt;    ENDON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    t_outso-vbeln = t_order-vbeln.&lt;/P&gt;&lt;P&gt;    t_outso-posnr = t_order-posnr.&lt;/P&gt;&lt;P&gt;    t_outso-erdat = t_order-erdat.&lt;/P&gt;&lt;P&gt;    t_outso-erzet = t_order-erzet.&lt;/P&gt;&lt;P&gt;    t_outso-auart = t_order-auart.                         &lt;/P&gt;&lt;P&gt;    t_outso-waerk = t_order-waerk.                          &lt;/P&gt;&lt;P&gt;    t_outso-kdgrp = t_order-kdgrp.                          &lt;/P&gt;&lt;P&gt;    t_outso-bstnk = t_order-bstnk.&lt;/P&gt;&lt;P&gt;    t_outso-matnr = t_order-matnr.                          &lt;/P&gt;&lt;P&gt;    t_outso-kunnr_sp = t_order-kunnr.                      &lt;/P&gt;&lt;P&gt;    t_outso-arktx = t_order-arktx.&lt;/P&gt;&lt;P&gt;    t_outso-bsark = t_order-bsark.                          &lt;/P&gt;&lt;P&gt;    t_outso-kwmeng = t_order-kwmeng.&lt;/P&gt;&lt;P&gt;    v_kzwi0       = t_order-kzwi3 + t_order-kzwi4.&lt;/P&gt;&lt;P&gt;    t_outso-zzwebuname = t_order-zzwebuname.&lt;/P&gt;&lt;P&gt;    t_outso-augru = t_order-augru.                          &lt;/P&gt;&lt;P&gt;    t_outso-matkl = t_order-matkl.&lt;/P&gt;&lt;P&gt;    t_outso-prodh = t_order-prodh.&lt;/P&gt;&lt;P&gt;    t_outso-zzwebpid = t_order-zzwebpid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Brain&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 25 Aug 2006 16:39:12 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485122#M226506</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-08-25T16:39:12Z</dc:date>
    </item>
    <item>
      <title>Re: performance Issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485123#M226507</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Brain,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Try removing SELECT ..... ENDSELECTS. Your code has too many SELECT ...ENDSELECTS. It will reducce ur performance.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Instead use array fetch and use READ with BINARY search.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; Check this link...it gives some good tips&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.thespot4sap.com/Articles/SAPABAPPerformanceTuning_Introduction.asp" target="test_blank"&gt;http://www.thespot4sap.com/Articles/SAPABAPPerformanceTuning_Introduction.asp&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Cheers&lt;/P&gt;&lt;P&gt; VJ&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: Vijayendra  Rao&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 25 Aug 2006 16:41:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485123#M226507</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-08-25T16:41:55Z</dc:date>
    </item>
    <item>
      <title>Re: performance Issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485124#M226508</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Instead of using Inner Join try out using "For all Entries"&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This will optimise ur program&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For more info about how to use it check this &lt;A class="jive_macro jive_macro_thread" href="https://community.sap.com/" __jive_macro_name="thread" modifiedtitle="true" __default_attr="188545"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please reward points if found helpful&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 25 Aug 2006 16:51:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485124#M226508</guid>
      <dc:creator>rahulkavuri</dc:creator>
      <dc:date>2006-08-25T16:51:10Z</dc:date>
    </item>
    <item>
      <title>Re: performance Issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485125#M226509</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;  Remove the SELECTs from the LOOP and use FOR ALL ENTRIES to get the data. Then use the READ STATEMENT OR LOOP AT..EXIT.ENDLOOP within the LOOP.&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;Naren&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 25 Aug 2006 16:54:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485125#M226509</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-08-25T16:54:31Z</dc:date>
    </item>
    <item>
      <title>Re: performance Issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485126#M226510</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Have you done a performance trace (ST05) to see where the bottleneck is?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If s_erdat is empty, that will cause problems.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rob&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 25 Aug 2006 18:36:21 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485126#M226510</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-08-25T18:36:21Z</dc:date>
    </item>
    <item>
      <title>Re: performance Issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485127#M226511</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I think there are two many database hits within the loop endloop. Try to get the data beforehand into internal tables and try and use the same.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Anurag&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 25 Aug 2006 18:41:03 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485127#M226511</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-08-25T18:41:03Z</dc:date>
    </item>
    <item>
      <title>Re: performance Issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485128#M226512</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have changed the code according to the suggestions. However there is no improvement in the performance. The updated code is below...Any suggestions...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT  vbak~vbeln vbak~vbeln vbap~posnr vbak~erdat vbak~erzet       &lt;/P&gt;&lt;P&gt;          vbak~auart vbak~waerk vbkd~kdgrp vbak~lifsk      &lt;/P&gt;&lt;P&gt;          vbak~vsbed vbak~bstnk vbak~rplnr vbak~bsark vbak~kunnr&lt;/P&gt;&lt;P&gt;          vbap~matnr vbap~arktx vbap~kzwi3 vbap~kzwi4 vbap~abgru&lt;/P&gt;&lt;P&gt;          vbap~netwr                                       &lt;/P&gt;&lt;P&gt;          vbap~kwmeng vbak~vkorg vbkd~bzirk vbkd~ihrez     &lt;/P&gt;&lt;P&gt;         vbkd~bsark vbkd~zterm vbkd~prsdt                  &lt;/P&gt;&lt;P&gt;         vbak~zzwebuname vbak~augru                        &lt;/P&gt;&lt;P&gt;         vbap~matkl vbap~prodh                            &lt;/P&gt;&lt;P&gt;         vbak~zzwebpid                                      &lt;/P&gt;&lt;P&gt;    INTO TABLE t_order&lt;/P&gt;&lt;P&gt;    FROM vbak INNER JOIN vbkd                               &lt;/P&gt;&lt;P&gt;    ON vbak~vbeln EQ vbkd~vbeln                            &lt;/P&gt;&lt;P&gt;             INNER JOIN vbap&lt;/P&gt;&lt;P&gt;    ON vbak~vbeln EQ vbap~vbeln&lt;/P&gt;&lt;P&gt;    WHERE vbak~vkorg IN s_vkorg&lt;/P&gt;&lt;P&gt;      AND vbak~erdat IN s_erdat&lt;/P&gt;&lt;P&gt;      AND vbak~auart IN s_auart&lt;/P&gt;&lt;P&gt;      AND vbkd~posnr EQ '000000'                          &lt;/P&gt;&lt;P&gt;      AND vbkd~kdgrp IN s_kdgrp                            &lt;/P&gt;&lt;P&gt;      AND vbkd~bzirk IN s_bzirk.                           &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    WRITE: /5 text-e01 COLOR COL_NEGATIVE.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  t_order1[] = t_order[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT t_order BY vbeln posnr.&lt;/P&gt;&lt;P&gt;  SORT t_order1 BY vbeln posnr.&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM t_order1 COMPARING vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR z_total_rec.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF t_order[] IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;  SELECT fplnr fpltr ccins ccnum datbi rcavr ccold&lt;/P&gt;&lt;P&gt;         audat autim aunum autra rcrsp cctyp autwr ccpre&lt;/P&gt;&lt;P&gt;  INTO TABLE t_ccdata&lt;/P&gt;&lt;P&gt;  FROM fpltc FOR ALL ENTRIES IN t_order1&lt;/P&gt;&lt;P&gt;  WHERE fplnr = t_order1-rplnr.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT t_ccdata BY fplnr fpltr DESCENDING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF t_order[] IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;  SELECT objectid value_new value_old&lt;/P&gt;&lt;P&gt;  INTO TABLE cdpos_tab&lt;/P&gt;&lt;P&gt;  FROM cdpos FOR ALL ENTRIES IN t_order1&lt;/P&gt;&lt;P&gt;  WHERE objectclas EQ 'VERKBELEG' AND&lt;/P&gt;&lt;P&gt;        objectid EQ t_order1-vbeln1 AND&lt;/P&gt;&lt;P&gt;        tabname EQ 'VBAK' AND&lt;/P&gt;&lt;P&gt;        fname EQ 'LIFSK'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT vbeln cmgst&lt;/P&gt;&lt;P&gt;  INTO TABLE t_vbuk&lt;/P&gt;&lt;P&gt;  FROM vbuk FOR ALL ENTRIES IN t_order1&lt;/P&gt;&lt;P&gt;  WHERE vbeln EQ t_order1-vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT vbeln groupid&lt;/P&gt;&lt;P&gt;  INTO TABLE t_zcc_groupid&lt;/P&gt;&lt;P&gt;  FROM zcc_groupid FOR ALL ENTRIES IN t_order1&lt;/P&gt;&lt;P&gt;  WHERE vbeln EQ t_order1-vbeln.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF t_zcc_groupid[] IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;  SELECT groupid ex_resultcode ex_resultmsg audat autim rcrsp&lt;/P&gt;&lt;P&gt;         score oid message_num res_code chargeback source&lt;/P&gt;&lt;P&gt;  INTO TABLE t_zcc_fraudres&lt;/P&gt;&lt;P&gt;  FROM zcc_fraudres FOR ALL ENTRIES IN t_zcc_groupid&lt;/P&gt;&lt;P&gt;  WHERE groupid EQ t_zcc_groupid-groupid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT *&lt;/P&gt;&lt;P&gt;  INTO TABLE t_zzoid&lt;/P&gt;&lt;P&gt;  FROM zzoid FOR ALL ENTRIES IN t_zcc_groupid&lt;/P&gt;&lt;P&gt;  WHERE z_groupid EQ t_zcc_groupid-groupid.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT t_order.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR t_outso.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ON CHANGE OF t_order-vbeln.&lt;/P&gt;&lt;P&gt;      CLEAR: v_ccnum.&lt;/P&gt;&lt;P&gt;      CLEAR: v_cre_rev, v_frd_rev, v_frd_rvr,&lt;/P&gt;&lt;P&gt;             v_frd_rrr, v_crg_back.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF NOT t_order-rplnr IS INITIAL.                      &lt;/P&gt;&lt;P&gt;        READ TABLE t_ccdata WITH KEY fplnr = t_order-rplnr BINARY SEARCH.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR v_email.&lt;/P&gt;&lt;P&gt;      PERFORM get_ip_or_email_address USING c_zeml.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR v_ipadr.&lt;/P&gt;&lt;P&gt;      PERFORM get_ip_or_email_address USING c_zwip.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM get_shipping_condition_desc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CLEAR: z5_block,z5_block_released.&lt;/P&gt;&lt;P&gt;        LOOP AT cdpos_tab WHERE objectid EQ t_order-vbeln1.&lt;/P&gt;&lt;P&gt;          IF cdpos_tab-value_new = 'Z5' OR cdpos_tab-value_old = 'Z5'.&lt;/P&gt;&lt;P&gt;            z5_block = 'Y'.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;          IF cdpos_tab-value_new = ' ' AND cdpos_tab-value_old = 'Z5'.&lt;/P&gt;&lt;P&gt;            z5_block_released = 'Y'.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;        ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF z5_block IS INITIAL.&lt;/P&gt;&lt;P&gt;        IF t_order-lifsk = 'Z5'.&lt;/P&gt;&lt;P&gt;          z5_block = 'Y'.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      READ TABLE t_vbuk WITH KEY vbeln = t_order-vbeln BINARY SEARCH.&lt;/P&gt;&lt;P&gt;      IF t_vbuk-cmgst EQ 'B'.                                 &lt;/P&gt;&lt;P&gt;        v_cre_rev = 'YES'.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        CLEAR cdpos.&lt;/P&gt;&lt;P&gt;        SELECT value_old FROM cdpos INTO cdpos-value_old&lt;/P&gt;&lt;P&gt;                         UP TO 1 ROWS&lt;/P&gt;&lt;P&gt;                         WHERE objectclas EQ c_verkbeleg&lt;/P&gt;&lt;P&gt;                           AND objectid   EQ t_order-vbeln&lt;/P&gt;&lt;P&gt;                           AND tabname    EQ c_vbuk&lt;/P&gt;&lt;P&gt;                           AND fname      EQ c_cmgst&lt;/P&gt;&lt;P&gt;                           AND value_old  EQ c_charb.&lt;/P&gt;&lt;P&gt;        ENDSELECT.&lt;/P&gt;&lt;P&gt;        IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;          v_cre_rev = 'YES'.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          v_cre_rev = 'NO'.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;  IF NOT t_order-rplnr IS INITIAL.                     &lt;/P&gt;&lt;P&gt;      READ TABLE t_zcc_groupid WITH KEY vbeln = t_order-vbeln BINARY SEARCH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       CLEAR: w_oid,w_zcvm,w_zvbv,&lt;/P&gt;&lt;P&gt;              w_audat, w_autim, w_zavr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      DELETE t_zzoid WHERE z_groupid EQ t_order-vbeln AND ccnum NE t_ccdata-ccnum.&lt;/P&gt;&lt;P&gt;      SORT t_zzoid BY audat ASCENDING autim ASCENDING.&lt;/P&gt;&lt;P&gt;      READ TABLE t_zzoid WITH KEY z_groupid = t_order-vbeln BINARY SEARCH.&lt;/P&gt;&lt;P&gt;      IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;        MOVE  t_zzoid-zcvm          TO w_zcvm.&lt;/P&gt;&lt;P&gt;        MOVE  t_zzoid-zvbv          TO w_zvbv.&lt;/P&gt;&lt;P&gt;        MOVE  t_zzoid-oid           TO w_oid.&lt;/P&gt;&lt;P&gt;        MOVE  t_zzoid-audat         TO w_audat.&lt;/P&gt;&lt;P&gt;        MOVE  t_zzoid-autim         TO w_autim.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        SELECT zrsp INTO w_zrsp FROM zzoid UP TO 1 ROWS     &lt;/P&gt;&lt;P&gt;                    WHERE  audat  = t_ccdata-audat        &lt;/P&gt;&lt;P&gt;                    AND    autim  = t_ccdata-autim         &lt;/P&gt;&lt;P&gt;                    AND    aunum  = t_ccdata-aunum          &lt;/P&gt;&lt;P&gt;                    AND    ccnum  = t_ccdata-ccnum          &lt;/P&gt;&lt;P&gt;                    AND    autra  = t_ccdata-autra.         &lt;/P&gt;&lt;P&gt;        ENDSELECT.&lt;/P&gt;&lt;P&gt;        CLEAR: v_zchk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         LOOP AT t_zcc_fraudres WHERE groupid = t_zcc_groupid-groupid.&lt;/P&gt;&lt;P&gt;           IF t_zcc_fraudres-rcrsp = '05'.&lt;/P&gt;&lt;P&gt;              v_frd_rev = 'YES'.&lt;/P&gt;&lt;P&gt;           ENDIF.&lt;/P&gt;&lt;P&gt;           IF ( t_zcc_fraudres-rcrsp = '06' OR t_zcc_fraudres-rcrsp = '07' ).&lt;/P&gt;&lt;P&gt;               v_frd_rrr = t_zcc_fraudres-res_code.&lt;/P&gt;&lt;P&gt;               IF t_zcc_fraudres-chargeback IS INITIAL.&lt;/P&gt;&lt;P&gt;                  v_crg_back = 'NO'.&lt;/P&gt;&lt;P&gt;               ELSE.&lt;/P&gt;&lt;P&gt;                  v_crg_back = 'YES'.&lt;/P&gt;&lt;P&gt;               ENDIF.&lt;/P&gt;&lt;P&gt;           ENDIF.&lt;/P&gt;&lt;P&gt;           IF t_zcc_fraudres-message_num NE ' '.&lt;/P&gt;&lt;P&gt;              IF v_frd_rvr IS INITIAL.&lt;/P&gt;&lt;P&gt;                 v_frd_rvr = t_zcc_fraudres-message_num.&lt;/P&gt;&lt;P&gt;              ELSE.&lt;/P&gt;&lt;P&gt;                 CONCATENATE v_frd_rvr t_zcc_fraudres-message_num&lt;/P&gt;&lt;P&gt;                          INTO v_frd_rvr SEPARATED BY ','.&lt;/P&gt;&lt;P&gt;              ENDIF.&lt;/P&gt;&lt;P&gt;           ENDIF.&lt;/P&gt;&lt;P&gt;           IF t_zcc_fraudres-message_num EQ space AND t_zcc_fraudres-source EQ 'ZCHK'.&lt;/P&gt;&lt;P&gt;              v_zchk = v_zchk + 1.&lt;/P&gt;&lt;P&gt;           ENDIF.&lt;/P&gt;&lt;P&gt;         ENDLOOP.&lt;/P&gt;&lt;P&gt;         IF v_frd_rev = ' '.&lt;/P&gt;&lt;P&gt;           v_frd_rev = 'NO'.&lt;/P&gt;&lt;P&gt;         ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       v_auth_1    = 'N'.&lt;/P&gt;&lt;P&gt;       v_decl_1    = 'N'.&lt;/P&gt;&lt;P&gt;       v_auth_full = 'N'.&lt;/P&gt;&lt;P&gt;       v_decl_full = 'N'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       LOOP AT t_ccdata WHERE fplnr = t_order-rplnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          IF t_ccdata-ccpre EQ 'X' AND&lt;/P&gt;&lt;P&gt;             ( t_ccdata-autwr EQ 0 OR&lt;/P&gt;&lt;P&gt;               t_ccdata-autwr EQ 1 ) AND&lt;/P&gt;&lt;P&gt;             t_ccdata-rcrsp EQ '02'.&lt;/P&gt;&lt;P&gt;            v_auth_1 = 'Y'.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          IF t_ccdata-ccpre EQ 'X' AND&lt;/P&gt;&lt;P&gt;             ( t_ccdata-autwr EQ 0 OR&lt;/P&gt;&lt;P&gt;               t_ccdata-autwr EQ 1 ) AND&lt;/P&gt;&lt;P&gt;             t_ccdata-rcrsp EQ '03'.&lt;/P&gt;&lt;P&gt;            v_decl_1 = 'Y'.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          IF t_ccdata-ccpre NE 'X' AND&lt;/P&gt;&lt;P&gt;             t_ccdata-autwr GT 1 AND&lt;/P&gt;&lt;P&gt;             t_ccdata-rcrsp EQ '02'.&lt;/P&gt;&lt;P&gt;            v_auth_full = 'Y'.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          IF t_ccdata-ccpre NE 'X' AND&lt;/P&gt;&lt;P&gt;             t_ccdata-autwr GT 1 AND&lt;/P&gt;&lt;P&gt;             t_ccdata-rcrsp EQ '03'.&lt;/P&gt;&lt;P&gt;            v_decl_full = 'Y'.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     ENDLOOP.&lt;/P&gt;&lt;P&gt;     ENDIF.&lt;/P&gt;&lt;P&gt;    ENDON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM get_name USING c_charre.&lt;/P&gt;&lt;P&gt;    PERFORM get_name USING c_charwe.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    t_outso-vbeln = t_order-vbeln.&lt;/P&gt;&lt;P&gt;    t_outso-posnr = t_order-posnr.&lt;/P&gt;&lt;P&gt;    t_outso-erdat = t_order-erdat.&lt;/P&gt;&lt;P&gt;    t_outso-erzet = t_order-erzet.&lt;/P&gt;&lt;P&gt;    t_outso-auart = t_order-auart.                          &lt;/P&gt;&lt;P&gt;    t_outso-waerk = t_order-waerk.                        &lt;/P&gt;&lt;P&gt;    t_outso-kdgrp = t_order-kdgrp.                          &lt;/P&gt;&lt;P&gt;    t_outso-bstnk = t_order-bstnk.&lt;/P&gt;&lt;P&gt;    t_outso-matnr = t_order-matnr.                         &lt;/P&gt;&lt;P&gt;    t_outso-kunnr_sp = t_order-kunnr.                      &lt;/P&gt;&lt;P&gt;    t_outso-arktx = t_order-arktx.&lt;/P&gt;&lt;P&gt;    t_outso-bsark = t_order-bsark.                         &lt;/P&gt;&lt;P&gt;    t_outso-kwmeng = t_order-kwmeng.&lt;/P&gt;&lt;P&gt;    v_kzwi0       = t_order-kzwi3 + t_order-kzwi4.&lt;/P&gt;&lt;P&gt;    t_outso-zzwebuname = t_order-zzwebuname.&lt;/P&gt;&lt;P&gt;    t_outso-augru = t_order-augru.                         &lt;/P&gt;&lt;P&gt;    t_outso-matkl = t_order-matkl.&lt;/P&gt;&lt;P&gt;    t_outso-prodh = t_order-prodh.&lt;/P&gt;&lt;P&gt;    t_outso-zzwebpid = t_order-zzwebpid.                    &lt;/P&gt;&lt;P&gt;    IF t_outso-prodh IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;      PERFORM get_prodh_desc.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    t_outso-kzwi0 = v_kzwi0.&lt;/P&gt;&lt;P&gt;    t_outso-ccins = t_ccdata-ccins.&lt;/P&gt;&lt;P&gt;    t_outso-ccnum = t_ccdata-ccnum.&lt;/P&gt;&lt;P&gt;    t_outso-datbi = t_ccdata-datbi.                          &lt;/P&gt;&lt;P&gt;    t_outso-rcavr = t_ccdata-rcavr.&lt;/P&gt;&lt;P&gt;    t_outso-ccold = t_ccdata-ccold.                            &lt;/P&gt;&lt;P&gt;    t_outso-vtext = tvsbt-vtext.&lt;/P&gt;&lt;P&gt;    t_outso-abgru = t_order-abgru.&lt;/P&gt;&lt;P&gt;    t_outso-z5_block = z5_block.                           &lt;/P&gt;&lt;P&gt;    t_outso-z5_block_released = z5_block_released.         &lt;/P&gt;&lt;P&gt;    t_outso-email = v_email.                               &lt;/P&gt;&lt;P&gt;    t_outso-ipadr = v_ipadr.                              &lt;/P&gt;&lt;P&gt;    t_outso-vkorg = t_order-vkorg.&lt;/P&gt;&lt;P&gt;    t_outso-bzirk = t_order-bzirk.&lt;/P&gt;&lt;P&gt;    IF t_order-lifsk EQ 'Z7'.&lt;/P&gt;&lt;P&gt;      t_outso-z7block = 'YES'.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      t_outso-z7block = 'NO'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    t_outso-cre_rev  = v_cre_rev.&lt;/P&gt;&lt;P&gt;    t_outso-frd_rev  = v_frd_rev.&lt;/P&gt;&lt;P&gt;    t_outso-frd_rvr  = v_frd_rvr.&lt;/P&gt;&lt;P&gt;    t_outso-frd_rrr  = v_frd_rrr.&lt;/P&gt;&lt;P&gt;    t_outso-crg_back = v_crg_back.&lt;/P&gt;&lt;P&gt;    t_outso-groupid  = t_zcc_groupid-groupid.&lt;/P&gt;&lt;P&gt;    t_outso-ihrez    = t_order-ihrez.&lt;/P&gt;&lt;P&gt;    t_outso-zchk     = v_zchk.&lt;/P&gt;&lt;P&gt;    t_outso-auth_1    = v_auth_1.&lt;/P&gt;&lt;P&gt;    t_outso-decl_1    = v_decl_1.&lt;/P&gt;&lt;P&gt;    t_outso-auth_full = v_auth_full.&lt;/P&gt;&lt;P&gt;    t_outso-decl_full = v_decl_full.&lt;/P&gt;&lt;P&gt;    t_outso-rtext = v_rtext.                               &lt;/P&gt;&lt;P&gt;    t_outso-rtext_0002 = v_rtext_0002.                      &lt;/P&gt;&lt;P&gt;    t_outso-bsark1 = t_order-bsark1.                        &lt;/P&gt;&lt;P&gt;    t_outso-zterm  = t_order-zterm.                         &lt;/P&gt;&lt;P&gt;    t_outso-zcvm = w_zcvm.                                  &lt;/P&gt;&lt;P&gt;    t_outso-zvbv = w_zvbv.                                &lt;/P&gt;&lt;P&gt;    t_outso-ex_resultcode = t_zcc_fraudres-ex_resultcode.                &lt;/P&gt;&lt;P&gt;    t_outso-ex_resultmsg  = t_zcc_fraudres-ex_resultmsg.                 &lt;/P&gt;&lt;P&gt;    t_outso-rcrsp  = t_ccdata-rcrsp.                           &lt;/P&gt;&lt;P&gt;    t_outso-score  = t_zcc_fraudres-score.                               &lt;/P&gt;&lt;P&gt;    t_outso-zrsp   = w_zrsp.                                &lt;/P&gt;&lt;P&gt;    t_outso-cctyp  = t_ccdata-cctyp.                           &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      APPEND t_outso.&lt;/P&gt;&lt;P&gt;      z_total_rec = z_total_rec + 1.&lt;/P&gt;&lt;P&gt;    ENDIF.&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;FORM get_name USING    l_parvw.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR vbpa.&lt;/P&gt;&lt;P&gt;  SELECT posnr adrnr FROM vbpa UP TO 1 ROWS&lt;/P&gt;&lt;P&gt;               INTO (vbpa-posnr, vbpa-adrnr)&lt;/P&gt;&lt;P&gt;               WHERE vbeln = t_order-vbeln&lt;/P&gt;&lt;P&gt;                 AND  ( posnr = t_order-posnr OR&lt;/P&gt;&lt;P&gt;                        posnr = c_posnr )&lt;/P&gt;&lt;P&gt;                 AND parvw = l_parvw&lt;/P&gt;&lt;P&gt;               ORDER BY posnr DESCENDING.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE name1 name2 street city1 region post_code1  &lt;/P&gt;&lt;P&gt;                country tel_number                          &lt;/P&gt;&lt;P&gt;                      FROM adrc&lt;/P&gt;&lt;P&gt;     INTO (adrc-name1, adrc-name2, adrc-street, adrc-city1, &lt;/P&gt;&lt;P&gt;adrc-region, adrc-post_code1, adrc-country, adrc-tel_number)&lt;/P&gt;&lt;P&gt;                      WHERE addrnumber = vbpa-adrnr&lt;/P&gt;&lt;P&gt;                        AND date_from  = c_date_from&lt;/P&gt;&lt;P&gt;                        AND nation     = ' '  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE l_parvw.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN c_charre.&lt;/P&gt;&lt;P&gt;      t_outso-name_bp   = adrc-name1.&lt;/P&gt;&lt;P&gt;      t_outso-name2_bp  = adrc-name2.                       &lt;/P&gt;&lt;P&gt;      t_outso-street_bp = adrc-street.&lt;/P&gt;&lt;P&gt;      t_outso-city_bp   = adrc-city1.&lt;/P&gt;&lt;P&gt;      t_outso-region_bp = adrc-region.&lt;/P&gt;&lt;P&gt;      t_outso-pcode_bp  = adrc-post_code1.&lt;/P&gt;&lt;P&gt;      t_outso-country_bp = adrc-country.                    &lt;/P&gt;&lt;P&gt;      t_outso-tel_bp     = adrc-tel_number.                 &lt;/P&gt;&lt;P&gt;    WHEN c_charwe.&lt;/P&gt;&lt;P&gt;      t_outso-name_sh = adrc-name1.&lt;/P&gt;&lt;P&gt;      t_outso-name2_sh  = adrc-name2.                       &lt;/P&gt;&lt;P&gt;      t_outso-street_sh = adrc-street.&lt;/P&gt;&lt;P&gt;      t_outso-city_sh   = adrc-city1.&lt;/P&gt;&lt;P&gt;      t_outso-region_sh = adrc-region.&lt;/P&gt;&lt;P&gt;      t_outso-pcode_sh  = adrc-post_code1.&lt;/P&gt;&lt;P&gt;      t_outso-country_sh = adrc-country.                    &lt;/P&gt;&lt;P&gt;      t_outso-tel_sh     = adrc-tel_number.                 &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 31 Aug 2006 21:31:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485128#M226512</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-08-31T21:31:10Z</dc:date>
    </item>
    <item>
      <title>Re: performance Issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485129#M226513</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Nested loops! Try:&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
DATA: cd_index LIKE sy-tabix.

SORT t_order BY vbeln posnr,
     cdpos_tab by objectid.

LOOP AT t_order.

  READ TABLE cd_pos WITH KEY
    objectid = t_order-vbeln1.
  binary search.

  WHILE sy-subrc = 0.

    cd_index = sy-tabix + 1.

    IF cdpos_tab-value_new = 'Z5' OR cdpos_tab-value_old = 'Z5'.
      z5_block = 'Y'.
    ENDIF.
    IF cdpos_tab-value_new = ' ' AND cdpos_tab-value_old = 'Z5'.
      z5_block_released = 'Y'.
    ENDIF.

    READ TABLE cd_pos INDEX cd_index.

    IF sy-subrc = 0.
      IF cd_pos OBJECTID &amp;lt;&amp;gt; T_ORDER-VBELN1.
        sy-subrc = 9.
      ENDIF.
    ENDIF.

  ENDWHILE.
ENDLOOP.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;I wasn't able to test this, so you'll have to check it thoroughly.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rob&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Added ENDLOOP.&lt;/P&gt;&lt;P&gt;Message was edited by: Rob Burbank&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 31 Aug 2006 21:52:57 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485129#M226513</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-08-31T21:52:57Z</dc:date>
    </item>
    <item>
      <title>Re: performance Issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485130#M226514</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;thanks rob, will try it out and keep you posted.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Brain.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 31 Aug 2006 22:55:19 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485130#M226514</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-08-31T22:55:19Z</dc:date>
    </item>
    <item>
      <title>Re: performance Issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485131#M226515</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Brain, &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As the others have said, remove the select...endselect, use for all entries statement instead of joins, use binary search when reading internal tables, use INTO TABLE when inserting records in an internal table. And most important of all is CHECK your where clause. Try to use all the primary keys of that database table and if not possible, use secondary indexes to help speed up your select statement. That will give you a boost in performance. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;P.S. Please award points for useful answers.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 01 Sep 2006 02:41:28 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1485131#M226515</guid>
      <dc:creator>aris_hidalgo</dc:creator>
      <dc:date>2006-09-01T02:41:28Z</dc:date>
    </item>
  </channel>
</rss>

