<?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/1136188#M113114</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;PRE&gt;&lt;CODE&gt;SELECT * FROM bkpf INTO TABLE it_bkpf
WHERE budat IN s_budat
AND monat = p_monat
AND gjahr = p_gjahr
AND blart = 'RE'
AND tcode = 'MIRO'.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--- Include key fields in your selection criteria..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;SELECT * FROM bseg INTO CORRESPONDING FIELDS
OF table it_lifnr FOR ALL ENTRIES IN it_bkpf
WHERE belnr = it_bkpf-belnr
AND gjahr = it_bkpf-gjahr
* AND AUGBL EQ ' '
AND koart = 'K'.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;--- Try to avoid INTO CORRESPONDING FIELDS... Use INTO TABLE instead.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And instead of using many conditions in the SELECT statement , use some base condition on the key field and fetch records on matching conditions and then filter your internal table fields applying the selection criteria on the internal table rows. This can improve the performance...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 20 Feb 2006 08:00:17 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-02-20T08:00:17Z</dc:date>
    <item>
      <title>PERFORMANCE ISSUE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1136187#M113113</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI,&lt;/P&gt;&lt;P&gt;I NEED HELP REGARDING THE IMPROOVEMENT OF THIS CODE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Report  ZFI_CREDITOR&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  zfi_creditor no standard page heading line-size 255.&lt;/P&gt;&lt;P&gt;TABLES: bkpf, bseg.&lt;/P&gt;&lt;P&gt;*************************************************&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_werks FOR bseg-werks,&lt;/P&gt;&lt;P&gt;                s_budat FOR bkpf-budat.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_monat LIKE bkpf-monat OBLIGATORY,&lt;/P&gt;&lt;P&gt;            p_gjahr LIKE bkpf-gjahr OBLIGATORY.&lt;/P&gt;&lt;P&gt;************************************************&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF it_bkpf OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bkpf.&lt;/P&gt;&lt;P&gt;DATA: END OF it_bkpf.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF it_bseg OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bseg.&lt;/P&gt;&lt;P&gt;DATA: END OF it_bseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF it2_bseg OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bseg.&lt;/P&gt;&lt;P&gt;DATA: END OF it2_bseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF it3_bseg OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bseg.&lt;/P&gt;&lt;P&gt;DATA: END OF it3_bseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF it_lifnr OCCURS 0,&lt;/P&gt;&lt;P&gt;      belnr LIKE bseg-belnr,&lt;/P&gt;&lt;P&gt;      gjahr LIKE bseg-gjahr,&lt;/P&gt;&lt;P&gt;      augbl LIKE bseg-augbl,&lt;/P&gt;&lt;P&gt;      lifnr LIKE bseg-lifnr,&lt;/P&gt;&lt;P&gt;      END OF it_lifnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF it_final_intr OCCURS 0,&lt;/P&gt;&lt;P&gt;      mtart TYPE mtart,&lt;/P&gt;&lt;P&gt;      lifnr TYPE lifnr,&lt;/P&gt;&lt;P&gt;      ebeln TYPE ebeln,&lt;/P&gt;&lt;P&gt;      matnr TYPE matnr,&lt;/P&gt;&lt;P&gt;      maktx TYPE maktx,&lt;/P&gt;&lt;P&gt;      dmbtr type dmbtr,&lt;/P&gt;&lt;P&gt;      hwbas TYPE hwbas,&lt;/P&gt;&lt;P&gt;      END OF it_final_intr.&lt;/P&gt;&lt;P&gt;**Addition by deepak&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF ty_final_intr ,&lt;/P&gt;&lt;P&gt;       mtart TYPE mtart,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      LIFNR TYPE LIFNR,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EBELN TYPE EBELN,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      MATNR TYPE MATNR,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      MAKTX TYPE MAKTX,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       dmbtr TYPE dmbtr,&lt;/P&gt;&lt;P&gt;       hwbas TYPE hwbas,&lt;/P&gt;&lt;P&gt;      END OF ty_final_intr.&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF it_temp OCCURS 0,&lt;/P&gt;&lt;P&gt;      belnr LIKE bseg-belnr,&lt;/P&gt;&lt;P&gt;      augbl LIKE bseg-augbl,&lt;/P&gt;&lt;P&gt;      dmbtr LIKE bseg-dmbtr,&lt;/P&gt;&lt;P&gt;      hwbas LIKE bseg-hwbas,&lt;/P&gt;&lt;P&gt;      END OF it_temp.&lt;/P&gt;&lt;P&gt;DATA: v_dmbtr LIKE bseg-dmbtr,&lt;/P&gt;&lt;P&gt;      v_hwbas LIKE bseg-hwbas,&lt;/P&gt;&lt;P&gt;      v_augbl LIKE bseg-augbl,&lt;/P&gt;&lt;P&gt;      v_belnr LIKE bseg-belnr,&lt;/P&gt;&lt;P&gt;      l_augbl LIKE bseg-augbl,&lt;/P&gt;&lt;P&gt;      v_amt(13) type c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: it_final_sum TYPE ty_final_intr,&lt;/P&gt;&lt;P&gt;      it_sumtab TYPE HASHED TABLE OF ty_final_intr&lt;/P&gt;&lt;P&gt;      WITH UNIQUE KEY mtart .&lt;/P&gt;&lt;P&gt;DATA : it_final TYPE STANDARD TABLE OF ty_final_intr WITH&lt;/P&gt;&lt;P&gt;         NON-UNIQUE DEFAULT KEY INITIAL SIZE 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;**Addition by deepak&lt;/P&gt;&lt;P&gt;DATA: g_lifnr TYPE lifnr,&lt;/P&gt;&lt;P&gt;      g_mtart TYPE mtart,&lt;/P&gt;&lt;P&gt;      g_dmbtr TYPE dmbtr,&lt;/P&gt;&lt;P&gt;      g_hwbas TYPE hwbas,&lt;/P&gt;&lt;P&gt;      g_maktx type maktx,&lt;/P&gt;&lt;P&gt;      g_finalpayable type dmbtr,&lt;/P&gt;&lt;P&gt;      g_payable type dmbtr,&lt;/P&gt;&lt;P&gt;      gtotal_dmbtr type dmbtr,&lt;/P&gt;&lt;P&gt;      gtotal_hwbas type hwbas,&lt;/P&gt;&lt;P&gt;      gtotal_payable type dmbtr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT * FROM bkpf INTO TABLE it_bkpf&lt;/P&gt;&lt;P&gt;                   WHERE budat IN s_budat&lt;/P&gt;&lt;P&gt;                   AND   monat = p_monat&lt;/P&gt;&lt;P&gt;                   AND   gjahr = p_gjahr&lt;/P&gt;&lt;P&gt;                   AND   blart = 'RE'&lt;/P&gt;&lt;P&gt;                   AND   tcode = 'MIRO'.&lt;/P&gt;&lt;P&gt;*append it_bkpf. "dg&lt;/P&gt;&lt;P&gt;SORT it_bkpf BY belnr.&lt;/P&gt;&lt;P&gt;IF NOT it_bkpf[] IS INITIAL. "DG&lt;/P&gt;&lt;P&gt;  SELECT * FROM bseg INTO CORRESPONDING FIELDS&lt;/P&gt;&lt;P&gt;     OF table it_lifnr 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   AUGBL EQ ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                     AND   koart = 'K'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   APPEND it_lifnr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ENDSELECT.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;IF NOT it_lifnr[] IS INITIAL.&lt;/P&gt;&lt;P&gt;  SELECT * FROM bseg INTO TABLE it2_bseg&lt;/P&gt;&lt;P&gt;  FOR ALL ENTRIES IN it_lifnr&lt;/P&gt;&lt;P&gt;                    WHERE  belnr = it_lifnr-belnr&lt;/P&gt;&lt;P&gt;                     AND   gjahr = it_lifnr-gjahr&lt;/P&gt;&lt;P&gt;                     AND   buzid = 'W'&lt;/P&gt;&lt;P&gt;                     AND   werks IN s_werks.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;IF NOT it2_bseg[] IS INITIAL.&lt;/P&gt;&lt;P&gt;  SELECT * FROM bseg INTO TABLE it3_bseg&lt;/P&gt;&lt;P&gt;           FOR ALL ENTRIES IN it2_bseg&lt;/P&gt;&lt;P&gt;             WHERE belnr = it2_bseg-belnr&lt;/P&gt;&lt;P&gt;             AND   gjahr = it2_bseg-gjahr&lt;/P&gt;&lt;P&gt;                     AND   buzid = 'T'.&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;&lt;/P&gt;&lt;P&gt;LOOP AT it2_bseg.&lt;/P&gt;&lt;P&gt;  READ TABLE it3_bseg INDEX sy-tabix  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE it_lifnr WITH KEY belnr = it2_bseg-belnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE mtart FROM mara INTO g_mtart&lt;/P&gt;&lt;P&gt;                WHERE matnr = it2_bseg-matnr.&lt;/P&gt;&lt;P&gt;  select single maktx from makt into g_maktx&lt;/P&gt;&lt;P&gt;                where matnr = it2_bseg-matnr.&lt;/P&gt;&lt;P&gt;  g_dmbtr = it2_bseg-dmbtr + it3_bseg-dmbtr.&lt;/P&gt;&lt;P&gt;  IF it_lifnr-augbl EQ space.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   g_hwbas = g_dmbtr.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     g_hwbas = 0.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    v_augbl = it_lifnr-augbl.&lt;/P&gt;&lt;P&gt;    AT NEW belnr.&lt;/P&gt;&lt;P&gt;      v_belnr = it2_bseg-belnr.&lt;/P&gt;&lt;P&gt;      WHILE  v_augbl &amp;lt;&amp;gt; v_belnr .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        SELECT SINGLE belnr augbl dmbtr hwbas INTO it_temp&lt;/P&gt;&lt;P&gt;            FROM bseg WHERE belnr = v_augbl AND&lt;/P&gt;&lt;P&gt;                         gjahr = p_gjahr AND&lt;/P&gt;&lt;P&gt;                         buzei = '001'.&lt;/P&gt;&lt;P&gt;        IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;          v_dmbtr = v_dmbtr + it_temp-dmbtr.&lt;/P&gt;&lt;P&gt;          v_hwbas = v_hwbas + it_temp-hwbas.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          SELECT SINGLE augbl INTO l_augbl&lt;/P&gt;&lt;P&gt;          FROM bseg WHERE belnr = v_augbl AND&lt;/P&gt;&lt;P&gt;                          gjahr = p_gjahr AND&lt;/P&gt;&lt;P&gt;                          buzei = '002'.&lt;/P&gt;&lt;P&gt;          IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;            IF ( l_augbl = v_augbl OR&lt;/P&gt;&lt;P&gt;                 l_augbl = space ).&lt;/P&gt;&lt;P&gt;              EXIT.&lt;/P&gt;&lt;P&gt;            ELSE.&lt;/P&gt;&lt;P&gt;              v_belnr = v_augbl.&lt;/P&gt;&lt;P&gt;              v_augbl = l_augbl.&lt;/P&gt;&lt;P&gt;            ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDWHILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      it_temp-augbl = it_lifnr-augbl.&lt;/P&gt;&lt;P&gt;      it_temp-dmbtr = v_dmbtr.&lt;/P&gt;&lt;P&gt;      it_temp-hwbas = v_hwbas.&lt;/P&gt;&lt;P&gt;      g_hwbas = v_dmbtr. " - g_dmbtr.&lt;/P&gt;&lt;P&gt;      APPEND it_temp.&lt;/P&gt;&lt;P&gt;      CLEAR: it_temp,v_dmbtr,v_hwbas.&lt;/P&gt;&lt;P&gt;    ENDAT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  MOVE G_MTART TO IT_FINAL_INTR-MTART.&lt;/P&gt;&lt;P&gt;  MOVE it_lifnr-lifnr TO it_final_intr-lifnr.&lt;/P&gt;&lt;P&gt;  MOVE it2_bseg-ebeln TO it_final_intr-ebeln.&lt;/P&gt;&lt;P&gt;  MOVE it2_bseg-matnr TO it_final_intr-matnr.&lt;/P&gt;&lt;P&gt;  MOVE G_maktx TO IT_FINAL_INTR-Maktx.&lt;/P&gt;&lt;P&gt;  MOVE g_dmbtr TO it_final_intr-dmbtr.&lt;/P&gt;&lt;P&gt;  if g_hwbas gt g_dmbtr.&lt;/P&gt;&lt;P&gt;  move g_dmbtr to it_final_intr-hwbas.&lt;/P&gt;&lt;P&gt;  else.&lt;/P&gt;&lt;P&gt;  MOVE g_hwbas TO it_final_intr-hwbas.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;  MOVE-CORRESPONDING it_final_intr TO it_final.&lt;/P&gt;&lt;P&gt;  COLLECT it_final INTO it_sumtab. "DG&lt;/P&gt;&lt;P&gt;  CLEAR: it_final.&lt;/P&gt;&lt;P&gt;*APPEND IT_FINAL.&lt;/P&gt;&lt;P&gt;  APPEND it_final_intr.&lt;/P&gt;&lt;P&gt;  CLEAR: it_final_intr.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;SORT it_final_intr BY mtart.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;skip.&lt;/P&gt;&lt;P&gt;uline at /01(67).&lt;/P&gt;&lt;P&gt;FORMAT COLOR = 5 intensified.&lt;/P&gt;&lt;P&gt;write: : /01 '|',&lt;/P&gt;&lt;P&gt;           03 'Merch. Category',&lt;/P&gt;&lt;P&gt;           19 '|',&lt;/P&gt;&lt;P&gt;           20 'Tot Amt',&lt;/P&gt;&lt;P&gt;           34 '|',&lt;/P&gt;&lt;P&gt;           35 'Amt Paid',&lt;/P&gt;&lt;P&gt;           50 '|',&lt;/P&gt;&lt;P&gt;           51 'Pending Payable',&lt;/P&gt;&lt;P&gt;           67 '|'.&lt;/P&gt;&lt;P&gt;uline at /01(67).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT it_sumtab INTO it_final_sum.&lt;/P&gt;&lt;P&gt;FORMAT COLOR = 4 intensified.&lt;/P&gt;&lt;P&gt;g_finalpayable = it_final_sum-dmbtr - it_final_sum-hwbas.&lt;/P&gt;&lt;P&gt;write: : /01 '|',&lt;/P&gt;&lt;P&gt;           03 it_final_sum-mtart,&lt;/P&gt;&lt;P&gt;           19 '|',&lt;/P&gt;&lt;P&gt;           20 it_final_sum-dmbtr left-justified ,&lt;/P&gt;&lt;P&gt;           34 '|',&lt;/P&gt;&lt;P&gt;           35 it_final_sum-hwbas left-JUSTIFIED,&lt;/P&gt;&lt;P&gt;           50 '|',&lt;/P&gt;&lt;P&gt;           51 g_finalpayable,&lt;/P&gt;&lt;P&gt;           67 '|'.&lt;/P&gt;&lt;P&gt;uline at /01(67).&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;DATA: V_VAR(68) TYPE C,&lt;/P&gt;&lt;P&gt;      v_mtart like mara-mtart.&lt;/P&gt;&lt;P&gt;AT LINE-SELECTION.&lt;/P&gt;&lt;P&gt;read line sy-lilli field value&lt;/P&gt;&lt;P&gt;it_final_sum-mtart into v_mtart.&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;skip.&lt;/P&gt;&lt;P&gt;uline at /01(147).&lt;/P&gt;&lt;P&gt;FORMAT COLOR = 5 intensified.&lt;/P&gt;&lt;P&gt;write: : /01 '|',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;           02 'Material type',&lt;/P&gt;&lt;P&gt;           19 '|',&lt;/P&gt;&lt;P&gt;           20 'Account Number ',&lt;/P&gt;&lt;P&gt;           34 '|',&lt;/P&gt;&lt;P&gt;           35 'Purchasing Document ',&lt;/P&gt;&lt;P&gt;           58'|',&lt;/P&gt;&lt;P&gt;           59 'Material Number',&lt;/P&gt;&lt;P&gt;           80 '|',&lt;/P&gt;&lt;P&gt;           81 'Material description',&lt;/P&gt;&lt;P&gt;           104 '|',&lt;/P&gt;&lt;P&gt;           105 'Amount',&lt;/P&gt;&lt;P&gt;           117 '|',&lt;/P&gt;&lt;P&gt;           118 'Amount Paid',&lt;/P&gt;&lt;P&gt;           130 '|',&lt;/P&gt;&lt;P&gt;           132 'Pending Payable',&lt;/P&gt;&lt;P&gt;           147 '|'.&lt;/P&gt;&lt;P&gt;uline at /01(147).&lt;/P&gt;&lt;P&gt;*sort it_final_intr by lifnr.&lt;/P&gt;&lt;P&gt;loop at it_final_intr where mtart = v_mtart.&lt;/P&gt;&lt;P&gt;FORMAT COLOR = 4 intensified.&lt;/P&gt;&lt;P&gt;g_payable  = it_final_intr-DMBTR - it_final_intr-HWBAS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write: : /01 '|',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;           02 it_final_intr-MTART,&lt;/P&gt;&lt;P&gt;           19 '|',&lt;/P&gt;&lt;P&gt;           20 it_final_intr-LIFNR,&lt;/P&gt;&lt;P&gt;           34 '|',&lt;/P&gt;&lt;P&gt;           35 it_final_intr-EBELN ,&lt;/P&gt;&lt;P&gt;           58'|',&lt;/P&gt;&lt;P&gt;           59 it_final_intr-MATNR,&lt;/P&gt;&lt;P&gt;           80 '|',&lt;/P&gt;&lt;P&gt;           81 it_final_intr-MAKTX,&lt;/P&gt;&lt;P&gt;           104 '|',&lt;/P&gt;&lt;P&gt;           105 it_final_intr-DMBTR left-justified,&lt;/P&gt;&lt;P&gt;           117 '|',&lt;/P&gt;&lt;P&gt;           118 it_final_intr-HWBAS left-justified,&lt;/P&gt;&lt;P&gt;           130 '|',&lt;/P&gt;&lt;P&gt;           132 g_payable left-justified,&lt;/P&gt;&lt;P&gt;           147 '|'.&lt;/P&gt;&lt;P&gt;gtotal_dmbtr = gtotal_dmbtr + it_final_intr-DMBTR.&lt;/P&gt;&lt;P&gt;gtotal_hwbas = gtotal_hwbas + it_final_intr-HWBAS.&lt;/P&gt;&lt;P&gt;gtotal_payable = gtotal_payable + g_payable.&lt;/P&gt;&lt;P&gt;uline at /01(147).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;at end of lifnr.&lt;/P&gt;&lt;P&gt;Format Color 3.&lt;/P&gt;&lt;P&gt;write:/01 '|',&lt;/P&gt;&lt;P&gt;       30 'Total Amout for vendor', it_final_intr-LIFNR,&lt;/P&gt;&lt;P&gt;       104'|',&lt;/P&gt;&lt;P&gt;       105 gtotal_dmbtr left-justified,&lt;/P&gt;&lt;P&gt;       117 '|',&lt;/P&gt;&lt;P&gt;       118 gtotal_hwbas left-justified,&lt;/P&gt;&lt;P&gt;       130 '|',&lt;/P&gt;&lt;P&gt;       132 gtotal_payable left-justified,&lt;/P&gt;&lt;P&gt;       147 '|'.&lt;/P&gt;&lt;P&gt;clear gtotal_dmbtr.&lt;/P&gt;&lt;P&gt;clear gtotal_hwbas.&lt;/P&gt;&lt;P&gt;clear gtotal_payable.&lt;/P&gt;&lt;P&gt;uline at /01(147).&lt;/P&gt;&lt;P&gt;ENDAT.&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;&lt;/P&gt;&lt;P&gt;HELP ME&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Feb 2006 07:36:45 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1136187#M113113</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-20T07:36:45Z</dc:date>
    </item>
    <item>
      <title>Re: PERFORMANCE ISSUE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1136188#M113114</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;PRE&gt;&lt;CODE&gt;SELECT * FROM bkpf INTO TABLE it_bkpf
WHERE budat IN s_budat
AND monat = p_monat
AND gjahr = p_gjahr
AND blart = 'RE'
AND tcode = 'MIRO'.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--- Include key fields in your selection criteria..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;SELECT * FROM bseg INTO CORRESPONDING FIELDS
OF table it_lifnr FOR ALL ENTRIES IN it_bkpf
WHERE belnr = it_bkpf-belnr
AND gjahr = it_bkpf-gjahr
* AND AUGBL EQ ' '
AND koart = 'K'.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;--- Try to avoid INTO CORRESPONDING FIELDS... Use INTO TABLE instead.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And instead of using many conditions in the SELECT statement , use some base condition on the key field and fetch records on matching conditions and then filter your internal table fields applying the selection criteria on the internal table rows. This can improve the performance...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Feb 2006 08:00:17 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1136188#M113114</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-20T08:00:17Z</dc:date>
    </item>
    <item>
      <title>Re: PERFORMANCE ISSUE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1136189#M113115</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;as  u know   bseg  is   a cluster table   u  can  use &lt;/P&gt;&lt;P&gt;bsis(open item_ ,bsik(closed item) inplace  of  bseg ...&lt;/P&gt;&lt;P&gt;and  avoid   to use  select* .. select only  those fields  which  are required .....&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Feb 2006 08:07:42 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1136189#M113115</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-20T08:07:42Z</dc:date>
    </item>
    <item>
      <title>Re: PERFORMANCE ISSUE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1136190#M113116</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;dear munish....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;do one thing use logical databases ..this can increase ur performance by 50%.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards ..]&lt;/P&gt;&lt;P&gt;Madan Gopal Sharma...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Feb 2006 11:17:29 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1136190#M113116</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-20T11:17:29Z</dc:date>
    </item>
    <item>
      <title>Re: PERFORMANCE ISSUE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1136191#M113117</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Manish,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;inspect your code using code inspector .(tran-sci)&lt;/P&gt;&lt;P&gt;program-&amp;gt;check-&amp;gt;code inspector&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for performance improvement&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Kavitha&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Feb 2006 11:21:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1136191#M113117</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-20T11:21:05Z</dc:date>
    </item>
    <item>
      <title>Re: PERFORMANCE ISSUE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1136192#M113118</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;dear munish....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;do one thing use logical databases ..this can increase ur performance by 50%.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards ..]&lt;/P&gt;&lt;P&gt;Madan Gopal Sharma...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Feb 2006 11:24:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1136192#M113118</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-20T11:24: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/1136193#M113119</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Manish,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) Do only one time data base select for &amp;lt;b&amp;gt;BSEG&amp;lt;/b&amp;gt; &amp;lt;b&amp;gt;instead of 3 times&amp;lt;/b&amp;gt; , combine all in one and use only internal table to manupulate other details .&lt;/P&gt;&lt;P&gt;Again it has been looped 2 times in BSEG table with SINGLE SELECT instead use the internal table which was populated intially --&amp;gt; this part is going to be more costly.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2)Dont use single select like  mara &amp;amp; MAKT when there are many time  checking inside a loop instead extract once into internal table and read that from internal table .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3) After doing the changes check with SE30 for performance it will point out the costly area .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this will help&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;R. Ramvelu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Feb 2006 12:56:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-issue/m-p/1136193#M113119</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-20T12:56:25Z</dc:date>
    </item>
  </channel>
</rss>

