<?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 of the SQL in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-of-the-sql/m-p/4632919#M1090984</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi ABAP Experts,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;good day all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;iam working as BI consultant as per user requirement some of the fields are not there i enhanced to R/3 by using cmod . i have written some code every thing fien .but its very bad performance almost its taking more than 24 hrs taking . here i have written many SQL statement . can any one suggest me how to improve the performance of code.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Tables declaration for EMPLOYEE_ATTR&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TABLES: PA0185,HRP1001,PA0001,PA0588, PA0587, PA0021, PA0006, PA0009, PA0003.&lt;/P&gt;&lt;P&gt;TABLES: HRMS_BIW_IO_OCCUPANCY.&lt;/P&gt;&lt;P&gt;TABLES: BWCO_MD_CCTR.&lt;/P&gt;&lt;P&gt;TABLES: BIW_KNA1_S,KNB1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table - Types -- Declaration for COSTCENTER_ATTR&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF T_PERNR,&lt;/P&gt;&lt;P&gt;         PERNR TYPE PERSNO,&lt;/P&gt;&lt;P&gt;        END OF T_PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : IT_PERNR TYPE STANDARD TABLE OF T_PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : VL_COUNT TYPE I.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; data : s_area like pa0001-mstbr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Declarations for 0EMPLOYEE_ATTR&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : I_W_DATA LIKE HRMS_BIW_IO_OCCUPANCY,&lt;/P&gt;&lt;P&gt;       I_W_DATA_KOSTL LIKE BWCO_MD_CCTR,&lt;/P&gt;&lt;P&gt;       L_ICNUM TYPE PA0185-ICNUM,&lt;/P&gt;&lt;P&gt;       L_RMBEGDA TYPE PA0185-BEGDA,&lt;/P&gt;&lt;P&gt;       L_RMENDDA TYPE PA0185-ENDDA,&lt;/P&gt;&lt;P&gt;       L_PERNR TYPE PA0001-PERNR,&lt;/P&gt;&lt;P&gt;       L_PERNR1 TYPE PA0001-PERNR,&lt;/P&gt;&lt;P&gt;       L_PLANS TYPE SOBID,&lt;/P&gt;&lt;P&gt;       L_PLANS2 TYPE SOBID,&lt;/P&gt;&lt;P&gt;       L_SUBTY TYPE PA0185-SUBTY,&lt;/P&gt;&lt;P&gt;       L_NAME TYPE PA0001-ENAME,&lt;/P&gt;&lt;P&gt;       L_NAME1 TYPE PA0001-ENAME,&lt;/P&gt;&lt;P&gt;       L_AMOUNT TYPE BETRG,&lt;/P&gt;&lt;P&gt;       L_AMOUNT_OFF TYPE BETRG,&lt;/P&gt;&lt;P&gt;       L_ORGUNITSVP TYPE PA0001-ORGEH,&lt;/P&gt;&lt;P&gt;       L_ICNUM_RM TYPE PA0185-ICNUM,&lt;/P&gt;&lt;P&gt;       L_ICNUM_TIER2 TYPE PA0185-ICNUM,&lt;/P&gt;&lt;P&gt;       L_MSTBR TYPE PA0001-MSTBR,&lt;/P&gt;&lt;P&gt;       L_ICNUM_21 TYPE PA0185-ICNUM,&lt;/P&gt;&lt;P&gt;       L_ICNUM_20 TYPE PA0185-ICNUM,&lt;/P&gt;&lt;P&gt;       L_ICNUM_24 TYPE PA0185-ICNUM,&lt;/P&gt;&lt;P&gt;       L_ICNUM_18 TYPE PA0185-ICNUM,&lt;/P&gt;&lt;P&gt;       L_ISSPL TYPE PA0185-ISSPL,&lt;/P&gt;&lt;P&gt;       L_ESINO LIKE PA0588-ESINO,&lt;/P&gt;&lt;P&gt;       L_EEBAS LIKE PA0587-TSTID,&lt;/P&gt;&lt;P&gt;       I_W_DATA1 LIKE BIW_KNA1_S,&lt;/P&gt;&lt;P&gt;       L_TLFXS LIKE KNB1-TLFXS,&lt;/P&gt;&lt;P&gt;       L_NAME4 LIKE KNA1-NAME4,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;new fields added by pandu&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       L_GBDAT TYPE GBDAT,&lt;/P&gt;&lt;P&gt;       L_FAVOR TYPE PAD_VORNA,&lt;/P&gt;&lt;P&gt;       L_NAME2 TYPE PAD_CONAM,&lt;/P&gt;&lt;P&gt;       L_STRAS TYPE PAD_STRAS,&lt;/P&gt;&lt;P&gt;       L_PSTLZ TYPE PSTLZ_HR,&lt;/P&gt;&lt;P&gt;       L_ORT01 TYPE PAD_ORT01,&lt;/P&gt;&lt;P&gt;       L_USRID TYPE SYSID,&lt;/P&gt;&lt;P&gt;       L_XMETXT TYPE	REBDXRO,&lt;/P&gt;&lt;P&gt;       L_BANKL TYPE BANKK,&lt;/P&gt;&lt;P&gt;       L_BANKN TYPE BANKN,&lt;/P&gt;&lt;P&gt;       L_CNAME TYPE ZCNAME,&lt;/P&gt;&lt;P&gt;       L_USRID1 TYPE	SYSID,&lt;/P&gt;&lt;P&gt;       L_MGRID TYPE SOBID,&lt;/P&gt;&lt;P&gt;       L_INCDAT TYPE	BEGDA,&lt;/P&gt;&lt;P&gt;       L_LIFNR TYPE LIFNR,&lt;/P&gt;&lt;P&gt;       L_RDATE TYPE BEGDA,&lt;/P&gt;&lt;P&gt;       L_LWDAY TYPE BEGDA,&lt;/P&gt;&lt;P&gt;       L_REDAT TYPE BEGDA,&lt;/P&gt;&lt;P&gt;       L_SCHKZ TYPE SCHKN,&lt;/P&gt;&lt;P&gt;       L_PRDAT TYPE PRDAT,&lt;/P&gt;&lt;P&gt;       L_ABRDT TYPE LABRD,&lt;/P&gt;&lt;P&gt;       L_ABRSP TYPE ABRSP,&lt;/P&gt;&lt;P&gt;       L_BANKA TYPE BANKA,&lt;/P&gt;&lt;P&gt;       L_SMDAT TYPE BEGDA.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      l_ctc_amt type betrg.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*endchange&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF TP_RGDIR OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE PC261.&lt;/P&gt;&lt;P&gt;DATA: END OF TP_RGDIR.&lt;/P&gt;&lt;P&gt;***************************************&lt;/P&gt;&lt;P&gt;*Decleration for monthly salary&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : L_PA0008 LIKE PA0008.&lt;/P&gt;&lt;P&gt;DATA : V_AMOUNT TYPE PAD_AMT7S,&lt;/P&gt;&lt;P&gt;       FLDNAM(30),&lt;/P&gt;&lt;P&gt;       NUM(2) VALUE '01'.&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS: &amp;lt;FS&amp;gt; TYPE ANY.&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS: &amp;lt;FS1&amp;gt; TYPE ANY.&lt;/P&gt;&lt;P&gt;*****************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CASE I_DATASOURCE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting Customer branch in 0customer_attr&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN '0CUSTOMER_ATTR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT I_T_DATA.&lt;/P&gt;&lt;P&gt;        MOVE-CORRESPONDING I_T_DATA TO I_W_DATA1 .&lt;/P&gt;&lt;P&gt;*Getting Customer branch in 0customer_attr&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        SELECT SINGLE TLFXS INTO L_TLFXS FROM KNB1 WHERE KUNNR EQ I_W_DATA1-KUNNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting Customer Name4 in 0customer_attr from table KNA1&lt;/P&gt;&lt;P&gt;       SELECT SINGLE NAME4 INTO L_NAME4 FROM KNA1 WHERE KUNNR EQ I_W_DATA1-KUNNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        I_W_DATA1-ZZTLFXS = L_TLFXS.&lt;/P&gt;&lt;P&gt;        I_W_DATA1-ZZNAME4 = L_NAME4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        MODIFY I_T_DATA FROM I_W_DATA1.&lt;/P&gt;&lt;P&gt;         CLEAR L_TLFXS.&lt;/P&gt;&lt;P&gt;         CLEAR L_NAME4.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the RM for the employee and SVP using the ICNUM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  WHEN '0EMPLOYEE_ATTR'.&lt;/P&gt;&lt;P&gt;    LOOP AT I_T_DATA INTO I_W_DATA.&lt;/P&gt;&lt;P&gt;      SELECT SINGLE ICNUM INTO L_ICNUM FROM PA0185&lt;/P&gt;&lt;P&gt;             WHERE PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;             AND SUBTY = '23'&lt;/P&gt;&lt;P&gt;             AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the Joining date of RM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      SELECT SINGLE BEGDA INTO L_RMBEGDA FROM PA0000&lt;/P&gt;&lt;P&gt;              WHERE PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;              AND MASSN EQ '01'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the Resignation Date of RM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      SELECT SINGLE BEGDA INTO L_RMENDDA FROM PA0000&lt;/P&gt;&lt;P&gt;              WHERE PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;              AND MASSN EQ '14'.&lt;/P&gt;&lt;P&gt;*Getting the Tier II code and Name&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SELECT SINGLE SOBID INTO L_PLANS FROM HRP1001&lt;/P&gt;&lt;P&gt;              WHERE OTYPE EQ 'S'&lt;/P&gt;&lt;P&gt;              AND OBJID EQ I_W_DATA-PLANS&lt;/P&gt;&lt;P&gt;              AND RSIGN EQ 'A'&lt;/P&gt;&lt;P&gt;              AND RELAT EQ '002'&lt;/P&gt;&lt;P&gt;              AND ENDDA GE I_W_DATA-ENDDA&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             AND endda GE sy-datum&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;              AND SCLAS EQ 'S'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             AND sobid EQ i_w_data-plans.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;      SELECT SINGLE PERNR INTO L_PERNR FROM PA0001&lt;/P&gt;&lt;P&gt;              WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             WHERE endda GE i_w_data-endda&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;              AND PLANS EQ L_PLANS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SELECT SINGLE ENAME INTO L_NAME FROM PA0001&lt;/P&gt;&lt;P&gt;              WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;              AND PLANS EQ L_PLANS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the TIER II branch&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT SINGLE ICNUM INTO L_ICNUM_TIER2 FROM PA0185&lt;/P&gt;&lt;P&gt;                 WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;                 AND PERNR EQ L_PERNR&lt;/P&gt;&lt;P&gt;                 AND SUBTY = '05'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Supervisor/HOD for Employee----&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;P&gt;SELECT SINGLE MSTBR FROM PA0001 INTO L_MSTBR  WHERE PERNR =  I_W_DATA-PERNR AND&lt;/P&gt;&lt;P&gt;                                               ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Employee Product from infotype 185 styp 21.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE ICNUM INTO L_ICNUM_21 FROM PA0185&lt;/P&gt;&lt;P&gt;               WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;               AND PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;               AND SUBTY = '21'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Employee Branch Discription/Place of issue from infotype 185 styp 05.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE ISSPL INTO L_ISSPL FROM PA0185&lt;/P&gt;&lt;P&gt;               WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;               AND PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;               AND SUBTY = '05'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Employee Library no/business from infotype 185 styp 18.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE ICNUM INTO L_ICNUM_18 FROM PA0185&lt;/P&gt;&lt;P&gt;               WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;               AND PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;               AND SUBTY = '18'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Employee Department from infotype 185 styp 20.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE ICNUM INTO L_ICNUM_20 FROM PA0185&lt;/P&gt;&lt;P&gt;               WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;               AND PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;               AND SUBTY = '20'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Employee RBT Codefrom infotype 185 styp 24.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE ICNUM INTO L_ICNUM_24 FROM PA0185&lt;/P&gt;&lt;P&gt;               WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;               AND PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;               AND SUBTY = '24'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Employee ESI number from Infotype 588.&lt;/P&gt;&lt;P&gt;  SELECT SINGLE ESINO INTO L_ESINO FROM PA0588&lt;/P&gt;&lt;P&gt;             WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;             AND PERNR EQ I_W_DATA-PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Employee PF Eligibility no from Infotype 587.&lt;/P&gt;&lt;P&gt;  SELECT SINGLE TSTID INTO L_EEBAS FROM PA0587&lt;/P&gt;&lt;P&gt;             WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;             AND PERNR EQ I_W_DATA-PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Employee Basic salary amt from Infotype 0008.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    NUM = '01'.&lt;/P&gt;&lt;P&gt;    CLEAR V_AMOUNT.&lt;/P&gt;&lt;P&gt;    SELECT SINGLE * INTO L_PA0008 FROM PA0008 WHERE PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                              AND   ENDDA EQ '99991231'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DO 30 TIMES.&lt;/P&gt;&lt;P&gt;    IF STRLEN( NUM ) = 1.&lt;/P&gt;&lt;P&gt;      CONCATENATE '0' NUM INTO NUM.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    CONCATENATE 'L_PA0008-LGA' NUM INTO FLDNAM.&lt;/P&gt;&lt;P&gt;    ASSIGN (FLDNAM) TO &amp;lt;FS&amp;gt;.&lt;/P&gt;&lt;P&gt;    CONCATENATE 'L_PA0008-BET' NUM INTO FLDNAM.&lt;/P&gt;&lt;P&gt;    ASSIGN (FLDNAM) TO &amp;lt;FS1&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF &amp;lt;FS&amp;gt; = '1000'.&lt;/P&gt;&lt;P&gt;      V_AMOUNT = &amp;lt;FS1&amp;gt;.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    CLEAR :  &amp;lt;FS&amp;gt;, &amp;lt;FS1&amp;gt;.&lt;/P&gt;&lt;P&gt;    NUM = NUM + 1.&lt;/P&gt;&lt;P&gt;    ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_W_DATA-ZZBASPAY  = V_AMOUNT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   endif.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  HRMS_BIW_IO_OCCUPANCY-ZZMSTBR = s_area.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; select single mstbr into l_mstbr from pa0001&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                where endda GE sy-datum&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                and pernr eq l_pernr.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Bringing RM branch&lt;/P&gt;&lt;P&gt;   SELECT SINGLE ICNUM INTO L_ICNUM_RM FROM PA0185&lt;/P&gt;&lt;P&gt;                 WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;                 AND PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                 AND SUBTY = '05'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;new code for fields by pandu&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*bringing date-of-birth&lt;/P&gt;&lt;P&gt;  SELECT SINGLE GBDAT INTO L_GBDAT FROM PA0002 WHERE PERNR = I_W_DATA-PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing fathers name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT SINGLE FAVOR INTO L_FAVOR FROM PA0021 WHERE PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                 AND SUBTY = '2'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing address details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT SINGLE * FROM PA0006 WHERE PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                AND SUBTY = '2'&lt;/P&gt;&lt;P&gt;                                AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt; L_NAME2 = PA0006-NAME2.&lt;/P&gt;&lt;P&gt; L_STRAS = PA0006-STRAS.&lt;/P&gt;&lt;P&gt; L_ORT01 = PA0006-ORT01.&lt;/P&gt;&lt;P&gt; L_PSTLZ = PA0006-PSTLZ.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing communication dteails&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; SELECT SINGLE USRID INTO L_USRID FROM PA0105 WHERE PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                AND SUBTY = '0010'&lt;/P&gt;&lt;P&gt;                                                AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing location details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; SELECT SINGLE XMETXT INTO L_XMETXT FROM PA9005 WHERE PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                 AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing bank details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT SINGLE * FROM PA0009 WHERE  PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                      AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  L_BANKN = PA0009-BANKN.&lt;/P&gt;&lt;P&gt;  L_BANKL = PA0009-BANKL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; bringing the bankname&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT SINGLE BANKA INTO L_BANKA FROM BNKA WHERE BANKL = L_BANKL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing esop details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; SELECT SINGLE CNAME INTO L_CNAME FROM PA9008 WHERE  PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing vendor details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; SELECT SINGLE LIFNR INTO L_LIFNR FROM LFB1 WHERE PERNR = I_W_DATA-PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT SINGLE CTC_DATE  INTO L_INCDAT  FROM PB9007 WHERE REPORT = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                   AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt;*select single ctc_amt  into l_ctc_amt  from pb9007 where report = i_w_data-pernr&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                                  and endda ge sy-datum.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*l_incdat = pa9007-ctc_date.&lt;/P&gt;&lt;P&gt;*l_ctc_amt = pa9007-ctc_amt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing resignation date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT SINGLE BEGDA FROM PA0000 INTO L_RDATE WHERE PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                   AND ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;                                                   AND MASSN = '14'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;to get last working day&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;L_LWDAY = L_RDATE - 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;to get reentry date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT SINGLE BEGDA FROM PA0000 INTO L_REDAT WHERE PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                   AND ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;                                                   AND MASSN = '15'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing workschedule details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT SINGLE SCHKZ FROM PA0007 INTO L_SCHKZ WHERE PERNR =  I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                   AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing payroll status details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT SINGLE * FROM PA0003 WHERE PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                              AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;L_PRDAT = PA0003-PRDAT.&lt;/P&gt;&lt;P&gt;L_ABRDT = PA0003-ABRDT.&lt;/P&gt;&lt;P&gt;L_ABRSP = PA0003-ABRSP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing paydate&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT SINGLE BEGDA INTO L_SMDAT FROM PA0008 WHERE PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                   AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*endadd&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting wage type for the salaries calc&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZRMID = L_ICNUM.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZICNUM = L_ICNUM_RM.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZRMBEGDA = L_RMBEGDA.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZRMENDDA = L_RMENDDA.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZEVPID = L_PERNR.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZEVPNAME = L_NAME.&lt;/P&gt;&lt;P&gt;     I_W_DATA-ZZORGUTSVP = L_ICNUM_TIER2.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZMSTBR = L_MSTBR.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZICNUM_21 = L_ICNUM_21.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZICNUM_20 = L_ICNUM_20.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZICNUM_24 = L_ICNUM_24.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZICNUM_18 = L_ICNUM_18.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZESINO = L_ESINO.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZEEPF1 = L_EEBAS.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZISSPL = L_ISSPL.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;code added by pandu&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      I_W_DATA-ZZGBDAT = L_GBDAT.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZFAVOR = L_FAVOR.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZNAME2 = L_NAME2.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZORT01 = L_ORT01.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZSTRAS = L_STRAS.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZPSTLZ = L_PSTLZ.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZUSRID = L_USRID.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZXMETXT = L_XMETXT.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZBANKL = L_BANKL.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZBANKN = L_BANKN.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZCNAME = L_CNAME.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZLIFNR = L_LIFNR.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZINCDAT = L_INCDAT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     i_w_data-zzctc_amt = l_ctc_amt.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      I_W_DATA-ZZRDAT = L_RDATE.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZLWDAY = L_LWDAY.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZRDAT = L_REDAT.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZSCHKZ = L_SCHKZ.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZPRDAT = L_PRDAT.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZABRDT = L_ABRDT.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZABRSP = L_ABRSP.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZBANKA = L_BANKA.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZSMDAT = L_SMDAT.&lt;/P&gt;&lt;P&gt;*endchange&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting The details for EVP&lt;/P&gt;&lt;P&gt;      CLEAR L_PERNR.&lt;/P&gt;&lt;P&gt;      CLEAR L_NAME.&lt;/P&gt;&lt;P&gt;      CLEAR L_ICNUM_TIER2.&lt;/P&gt;&lt;P&gt;      CLEAR L_ICNUM_RM.&lt;/P&gt;&lt;P&gt;      CLEAR L_RMBEGDA.&lt;/P&gt;&lt;P&gt;      CLEAR L_RMENDDA.&lt;/P&gt;&lt;P&gt;      CLEAR L_ESINO.&lt;/P&gt;&lt;P&gt;      CLEAR L_EEBAS.&lt;/P&gt;&lt;P&gt;      CLEAR L_ICNUM_21.&lt;/P&gt;&lt;P&gt;      CLEAR L_ICNUM_20.&lt;/P&gt;&lt;P&gt;      CLEAR L_ICNUM_24.&lt;/P&gt;&lt;P&gt;      CLEAR L_ICNUM_18.&lt;/P&gt;&lt;P&gt;      CLEAR L_MSTBR.&lt;/P&gt;&lt;P&gt;      CLEAR L_ISSPL.&lt;/P&gt;&lt;P&gt;      CLEAR L_PLANS.&lt;/P&gt;&lt;P&gt;*code added by pandu&lt;/P&gt;&lt;P&gt;      CLEAR L_GBDAT.&lt;/P&gt;&lt;P&gt;      CLEAR L_FAVOR.&lt;/P&gt;&lt;P&gt;      CLEAR L_NAME2.&lt;/P&gt;&lt;P&gt;      CLEAR L_ORT01.&lt;/P&gt;&lt;P&gt;      CLEAR L_STRAS.&lt;/P&gt;&lt;P&gt;      CLEAR L_PSTLZ.&lt;/P&gt;&lt;P&gt;      CLEAR L_USRID.&lt;/P&gt;&lt;P&gt;      CLEAR L_XMETXT.&lt;/P&gt;&lt;P&gt;      CLEAR L_BANKN.&lt;/P&gt;&lt;P&gt;      CLEAR L_BANKL.&lt;/P&gt;&lt;P&gt;      CLEAR L_CNAME.&lt;/P&gt;&lt;P&gt;      CLEAR L_LIFNR.&lt;/P&gt;&lt;P&gt;      CLEAR L_RDATE.&lt;/P&gt;&lt;P&gt;      CLEAR L_LWDAY.&lt;/P&gt;&lt;P&gt;      CLEAR L_REDAT.&lt;/P&gt;&lt;P&gt;      CLEAR L_PRDAT.&lt;/P&gt;&lt;P&gt;      CLEAR L_SCHKZ.&lt;/P&gt;&lt;P&gt;      CLEAR L_ABRDT.&lt;/P&gt;&lt;P&gt;      CLEAR L_ABRSP.&lt;/P&gt;&lt;P&gt;      CLEAR L_BANKA.&lt;/P&gt;&lt;P&gt;      CLEAR L_SMDAT.&lt;/P&gt;&lt;P&gt;*endcode&lt;/P&gt;&lt;P&gt;      SELECT SINGLE SOBID INTO L_PLANS2 FROM HRP1001&lt;/P&gt;&lt;P&gt;              WHERE OTYPE EQ 'S'&lt;/P&gt;&lt;P&gt;              AND OBJID EQ L_PLANS&lt;/P&gt;&lt;P&gt;              AND RSIGN EQ 'A'&lt;/P&gt;&lt;P&gt;              AND RELAT EQ '002'&lt;/P&gt;&lt;P&gt;              AND ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;              AND SCLAS EQ 'S'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             AND sobid EQ l_plans.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SELECT SINGLE PERNR INTO L_PERNR1 FROM PA0001&lt;/P&gt;&lt;P&gt;              WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;              AND PLANS EQ L_PLANS2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SELECT SINGLE ENAME INTO L_NAME1 FROM PA0001&lt;/P&gt;&lt;P&gt;              WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;              AND PLANS EQ L_PLANS2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZSRRMEVP = L_PERNR1.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZSRRMEVPNAME = L_NAME1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***********************&lt;/P&gt;&lt;P&gt;*Monthly salary of Rm from PA0008&lt;/P&gt;&lt;P&gt;NUM = '01'.&lt;/P&gt;&lt;P&gt;IF I_W_DATA-ENDDA EQ '99991231'.&lt;/P&gt;&lt;P&gt;CLEAR V_AMOUNT.&lt;/P&gt;&lt;P&gt;SELECT SINGLE * INTO L_PA0008&lt;/P&gt;&lt;P&gt;FROM PA0008&lt;/P&gt;&lt;P&gt;WHERE PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;AND   ENDDA EQ '99991231'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DO 30 TIMES.&lt;/P&gt;&lt;P&gt;IF STRLEN( NUM ) = 1.&lt;/P&gt;&lt;P&gt;CONCATENATE '0' NUM INTO NUM.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;CONCATENATE 'L_PA0008-BET' NUM INTO FLDNAM.&lt;/P&gt;&lt;P&gt;ASSIGN (FLDNAM) TO &amp;lt;FS&amp;gt;.&lt;/P&gt;&lt;P&gt;V_AMOUNT = V_AMOUNT + &amp;lt;FS&amp;gt;.&lt;/P&gt;&lt;P&gt;CLEAR &amp;lt;FS&amp;gt;.&lt;/P&gt;&lt;P&gt;NUM = NUM + 1.&lt;/P&gt;&lt;P&gt;ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I_W_DATA-ZZMONSAL     = V_AMOUNT.&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;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting salary monthly information&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CLEAR : L_AMOUNT, L_AMOUNT_OFF,L_NAME1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*CALL FUNCTION 'ZIBHR_EMP_INCENTIVE'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   S_PERNR             = i_w_data-pernr&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  INCENTIVE           = l_amount&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  INCENTIVE_OFF       = l_amount_off&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     i_w_data-zzmonsal_off = l_amount_off.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MODIFY I_T_DATA FROM I_W_DATA.&lt;/P&gt;&lt;P&gt;      CLEAR L_ICNUM.&lt;/P&gt;&lt;P&gt;      CLEAR L_PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;COst Center Enhancement for data source&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the employee count for a COST CENTER&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WHEN '0COSTCENTER_ATTR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR : VL_COUNT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT I_T_DATA INTO I_W_DATA_KOSTL.&lt;/P&gt;&lt;P&gt;      SELECT PERNR INTO TABLE IT_PERNR  FROM PA0185&lt;/P&gt;&lt;P&gt;             WHERE ICNUM EQ I_W_DATA_KOSTL-KOSTL&lt;/P&gt;&lt;P&gt;             AND SUBTY = '05'&lt;/P&gt;&lt;P&gt;             AND ENDDA EQ '99991231'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      DESCRIBE TABLE IT_PERNR LINES VL_COUNT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MOVE : VL_COUNT TO I_W_DATA_KOSTL-ZZHEADCOUNT.&lt;/P&gt;&lt;P&gt;      MODIFY I_T_DATA FROM I_W_DATA_KOSTL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      REFRESH : IT_PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 13 Oct 2008 05:10:01 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-10-13T05:10:01Z</dc:date>
    <item>
      <title>performance of the SQL</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-of-the-sql/m-p/4632919#M1090984</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi ABAP Experts,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;good day all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;iam working as BI consultant as per user requirement some of the fields are not there i enhanced to R/3 by using cmod . i have written some code every thing fien .but its very bad performance almost its taking more than 24 hrs taking . here i have written many SQL statement . can any one suggest me how to improve the performance of code.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Tables declaration for EMPLOYEE_ATTR&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TABLES: PA0185,HRP1001,PA0001,PA0588, PA0587, PA0021, PA0006, PA0009, PA0003.&lt;/P&gt;&lt;P&gt;TABLES: HRMS_BIW_IO_OCCUPANCY.&lt;/P&gt;&lt;P&gt;TABLES: BWCO_MD_CCTR.&lt;/P&gt;&lt;P&gt;TABLES: BIW_KNA1_S,KNB1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table - Types -- Declaration for COSTCENTER_ATTR&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF T_PERNR,&lt;/P&gt;&lt;P&gt;         PERNR TYPE PERSNO,&lt;/P&gt;&lt;P&gt;        END OF T_PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : IT_PERNR TYPE STANDARD TABLE OF T_PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : VL_COUNT TYPE I.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; data : s_area like pa0001-mstbr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Declarations for 0EMPLOYEE_ATTR&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : I_W_DATA LIKE HRMS_BIW_IO_OCCUPANCY,&lt;/P&gt;&lt;P&gt;       I_W_DATA_KOSTL LIKE BWCO_MD_CCTR,&lt;/P&gt;&lt;P&gt;       L_ICNUM TYPE PA0185-ICNUM,&lt;/P&gt;&lt;P&gt;       L_RMBEGDA TYPE PA0185-BEGDA,&lt;/P&gt;&lt;P&gt;       L_RMENDDA TYPE PA0185-ENDDA,&lt;/P&gt;&lt;P&gt;       L_PERNR TYPE PA0001-PERNR,&lt;/P&gt;&lt;P&gt;       L_PERNR1 TYPE PA0001-PERNR,&lt;/P&gt;&lt;P&gt;       L_PLANS TYPE SOBID,&lt;/P&gt;&lt;P&gt;       L_PLANS2 TYPE SOBID,&lt;/P&gt;&lt;P&gt;       L_SUBTY TYPE PA0185-SUBTY,&lt;/P&gt;&lt;P&gt;       L_NAME TYPE PA0001-ENAME,&lt;/P&gt;&lt;P&gt;       L_NAME1 TYPE PA0001-ENAME,&lt;/P&gt;&lt;P&gt;       L_AMOUNT TYPE BETRG,&lt;/P&gt;&lt;P&gt;       L_AMOUNT_OFF TYPE BETRG,&lt;/P&gt;&lt;P&gt;       L_ORGUNITSVP TYPE PA0001-ORGEH,&lt;/P&gt;&lt;P&gt;       L_ICNUM_RM TYPE PA0185-ICNUM,&lt;/P&gt;&lt;P&gt;       L_ICNUM_TIER2 TYPE PA0185-ICNUM,&lt;/P&gt;&lt;P&gt;       L_MSTBR TYPE PA0001-MSTBR,&lt;/P&gt;&lt;P&gt;       L_ICNUM_21 TYPE PA0185-ICNUM,&lt;/P&gt;&lt;P&gt;       L_ICNUM_20 TYPE PA0185-ICNUM,&lt;/P&gt;&lt;P&gt;       L_ICNUM_24 TYPE PA0185-ICNUM,&lt;/P&gt;&lt;P&gt;       L_ICNUM_18 TYPE PA0185-ICNUM,&lt;/P&gt;&lt;P&gt;       L_ISSPL TYPE PA0185-ISSPL,&lt;/P&gt;&lt;P&gt;       L_ESINO LIKE PA0588-ESINO,&lt;/P&gt;&lt;P&gt;       L_EEBAS LIKE PA0587-TSTID,&lt;/P&gt;&lt;P&gt;       I_W_DATA1 LIKE BIW_KNA1_S,&lt;/P&gt;&lt;P&gt;       L_TLFXS LIKE KNB1-TLFXS,&lt;/P&gt;&lt;P&gt;       L_NAME4 LIKE KNA1-NAME4,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;new fields added by pandu&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       L_GBDAT TYPE GBDAT,&lt;/P&gt;&lt;P&gt;       L_FAVOR TYPE PAD_VORNA,&lt;/P&gt;&lt;P&gt;       L_NAME2 TYPE PAD_CONAM,&lt;/P&gt;&lt;P&gt;       L_STRAS TYPE PAD_STRAS,&lt;/P&gt;&lt;P&gt;       L_PSTLZ TYPE PSTLZ_HR,&lt;/P&gt;&lt;P&gt;       L_ORT01 TYPE PAD_ORT01,&lt;/P&gt;&lt;P&gt;       L_USRID TYPE SYSID,&lt;/P&gt;&lt;P&gt;       L_XMETXT TYPE	REBDXRO,&lt;/P&gt;&lt;P&gt;       L_BANKL TYPE BANKK,&lt;/P&gt;&lt;P&gt;       L_BANKN TYPE BANKN,&lt;/P&gt;&lt;P&gt;       L_CNAME TYPE ZCNAME,&lt;/P&gt;&lt;P&gt;       L_USRID1 TYPE	SYSID,&lt;/P&gt;&lt;P&gt;       L_MGRID TYPE SOBID,&lt;/P&gt;&lt;P&gt;       L_INCDAT TYPE	BEGDA,&lt;/P&gt;&lt;P&gt;       L_LIFNR TYPE LIFNR,&lt;/P&gt;&lt;P&gt;       L_RDATE TYPE BEGDA,&lt;/P&gt;&lt;P&gt;       L_LWDAY TYPE BEGDA,&lt;/P&gt;&lt;P&gt;       L_REDAT TYPE BEGDA,&lt;/P&gt;&lt;P&gt;       L_SCHKZ TYPE SCHKN,&lt;/P&gt;&lt;P&gt;       L_PRDAT TYPE PRDAT,&lt;/P&gt;&lt;P&gt;       L_ABRDT TYPE LABRD,&lt;/P&gt;&lt;P&gt;       L_ABRSP TYPE ABRSP,&lt;/P&gt;&lt;P&gt;       L_BANKA TYPE BANKA,&lt;/P&gt;&lt;P&gt;       L_SMDAT TYPE BEGDA.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      l_ctc_amt type betrg.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*endchange&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF TP_RGDIR OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE PC261.&lt;/P&gt;&lt;P&gt;DATA: END OF TP_RGDIR.&lt;/P&gt;&lt;P&gt;***************************************&lt;/P&gt;&lt;P&gt;*Decleration for monthly salary&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : L_PA0008 LIKE PA0008.&lt;/P&gt;&lt;P&gt;DATA : V_AMOUNT TYPE PAD_AMT7S,&lt;/P&gt;&lt;P&gt;       FLDNAM(30),&lt;/P&gt;&lt;P&gt;       NUM(2) VALUE '01'.&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS: &amp;lt;FS&amp;gt; TYPE ANY.&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS: &amp;lt;FS1&amp;gt; TYPE ANY.&lt;/P&gt;&lt;P&gt;*****************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CASE I_DATASOURCE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting Customer branch in 0customer_attr&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN '0CUSTOMER_ATTR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT I_T_DATA.&lt;/P&gt;&lt;P&gt;        MOVE-CORRESPONDING I_T_DATA TO I_W_DATA1 .&lt;/P&gt;&lt;P&gt;*Getting Customer branch in 0customer_attr&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        SELECT SINGLE TLFXS INTO L_TLFXS FROM KNB1 WHERE KUNNR EQ I_W_DATA1-KUNNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting Customer Name4 in 0customer_attr from table KNA1&lt;/P&gt;&lt;P&gt;       SELECT SINGLE NAME4 INTO L_NAME4 FROM KNA1 WHERE KUNNR EQ I_W_DATA1-KUNNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        I_W_DATA1-ZZTLFXS = L_TLFXS.&lt;/P&gt;&lt;P&gt;        I_W_DATA1-ZZNAME4 = L_NAME4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        MODIFY I_T_DATA FROM I_W_DATA1.&lt;/P&gt;&lt;P&gt;         CLEAR L_TLFXS.&lt;/P&gt;&lt;P&gt;         CLEAR L_NAME4.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the RM for the employee and SVP using the ICNUM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  WHEN '0EMPLOYEE_ATTR'.&lt;/P&gt;&lt;P&gt;    LOOP AT I_T_DATA INTO I_W_DATA.&lt;/P&gt;&lt;P&gt;      SELECT SINGLE ICNUM INTO L_ICNUM FROM PA0185&lt;/P&gt;&lt;P&gt;             WHERE PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;             AND SUBTY = '23'&lt;/P&gt;&lt;P&gt;             AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the Joining date of RM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      SELECT SINGLE BEGDA INTO L_RMBEGDA FROM PA0000&lt;/P&gt;&lt;P&gt;              WHERE PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;              AND MASSN EQ '01'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the Resignation Date of RM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      SELECT SINGLE BEGDA INTO L_RMENDDA FROM PA0000&lt;/P&gt;&lt;P&gt;              WHERE PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;              AND MASSN EQ '14'.&lt;/P&gt;&lt;P&gt;*Getting the Tier II code and Name&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SELECT SINGLE SOBID INTO L_PLANS FROM HRP1001&lt;/P&gt;&lt;P&gt;              WHERE OTYPE EQ 'S'&lt;/P&gt;&lt;P&gt;              AND OBJID EQ I_W_DATA-PLANS&lt;/P&gt;&lt;P&gt;              AND RSIGN EQ 'A'&lt;/P&gt;&lt;P&gt;              AND RELAT EQ '002'&lt;/P&gt;&lt;P&gt;              AND ENDDA GE I_W_DATA-ENDDA&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             AND endda GE sy-datum&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;              AND SCLAS EQ 'S'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             AND sobid EQ i_w_data-plans.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;      SELECT SINGLE PERNR INTO L_PERNR FROM PA0001&lt;/P&gt;&lt;P&gt;              WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             WHERE endda GE i_w_data-endda&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;              AND PLANS EQ L_PLANS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SELECT SINGLE ENAME INTO L_NAME FROM PA0001&lt;/P&gt;&lt;P&gt;              WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;              AND PLANS EQ L_PLANS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the TIER II branch&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT SINGLE ICNUM INTO L_ICNUM_TIER2 FROM PA0185&lt;/P&gt;&lt;P&gt;                 WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;                 AND PERNR EQ L_PERNR&lt;/P&gt;&lt;P&gt;                 AND SUBTY = '05'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Supervisor/HOD for Employee----&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;P&gt;SELECT SINGLE MSTBR FROM PA0001 INTO L_MSTBR  WHERE PERNR =  I_W_DATA-PERNR AND&lt;/P&gt;&lt;P&gt;                                               ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Employee Product from infotype 185 styp 21.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE ICNUM INTO L_ICNUM_21 FROM PA0185&lt;/P&gt;&lt;P&gt;               WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;               AND PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;               AND SUBTY = '21'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Employee Branch Discription/Place of issue from infotype 185 styp 05.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE ISSPL INTO L_ISSPL FROM PA0185&lt;/P&gt;&lt;P&gt;               WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;               AND PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;               AND SUBTY = '05'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Employee Library no/business from infotype 185 styp 18.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE ICNUM INTO L_ICNUM_18 FROM PA0185&lt;/P&gt;&lt;P&gt;               WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;               AND PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;               AND SUBTY = '18'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Employee Department from infotype 185 styp 20.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE ICNUM INTO L_ICNUM_20 FROM PA0185&lt;/P&gt;&lt;P&gt;               WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;               AND PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;               AND SUBTY = '20'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Employee RBT Codefrom infotype 185 styp 24.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE ICNUM INTO L_ICNUM_24 FROM PA0185&lt;/P&gt;&lt;P&gt;               WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;               AND PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;               AND SUBTY = '24'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Employee ESI number from Infotype 588.&lt;/P&gt;&lt;P&gt;  SELECT SINGLE ESINO INTO L_ESINO FROM PA0588&lt;/P&gt;&lt;P&gt;             WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;             AND PERNR EQ I_W_DATA-PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Employee PF Eligibility no from Infotype 587.&lt;/P&gt;&lt;P&gt;  SELECT SINGLE TSTID INTO L_EEBAS FROM PA0587&lt;/P&gt;&lt;P&gt;             WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;             AND PERNR EQ I_W_DATA-PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting the Employee Basic salary amt from Infotype 0008.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    NUM = '01'.&lt;/P&gt;&lt;P&gt;    CLEAR V_AMOUNT.&lt;/P&gt;&lt;P&gt;    SELECT SINGLE * INTO L_PA0008 FROM PA0008 WHERE PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                              AND   ENDDA EQ '99991231'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DO 30 TIMES.&lt;/P&gt;&lt;P&gt;    IF STRLEN( NUM ) = 1.&lt;/P&gt;&lt;P&gt;      CONCATENATE '0' NUM INTO NUM.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    CONCATENATE 'L_PA0008-LGA' NUM INTO FLDNAM.&lt;/P&gt;&lt;P&gt;    ASSIGN (FLDNAM) TO &amp;lt;FS&amp;gt;.&lt;/P&gt;&lt;P&gt;    CONCATENATE 'L_PA0008-BET' NUM INTO FLDNAM.&lt;/P&gt;&lt;P&gt;    ASSIGN (FLDNAM) TO &amp;lt;FS1&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF &amp;lt;FS&amp;gt; = '1000'.&lt;/P&gt;&lt;P&gt;      V_AMOUNT = &amp;lt;FS1&amp;gt;.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    CLEAR :  &amp;lt;FS&amp;gt;, &amp;lt;FS1&amp;gt;.&lt;/P&gt;&lt;P&gt;    NUM = NUM + 1.&lt;/P&gt;&lt;P&gt;    ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_W_DATA-ZZBASPAY  = V_AMOUNT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   endif.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  HRMS_BIW_IO_OCCUPANCY-ZZMSTBR = s_area.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; select single mstbr into l_mstbr from pa0001&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                where endda GE sy-datum&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                and pernr eq l_pernr.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Bringing RM branch&lt;/P&gt;&lt;P&gt;   SELECT SINGLE ICNUM INTO L_ICNUM_RM FROM PA0185&lt;/P&gt;&lt;P&gt;                 WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;                 AND PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                 AND SUBTY = '05'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;new code for fields by pandu&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*bringing date-of-birth&lt;/P&gt;&lt;P&gt;  SELECT SINGLE GBDAT INTO L_GBDAT FROM PA0002 WHERE PERNR = I_W_DATA-PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing fathers name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT SINGLE FAVOR INTO L_FAVOR FROM PA0021 WHERE PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                 AND SUBTY = '2'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing address details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT SINGLE * FROM PA0006 WHERE PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                AND SUBTY = '2'&lt;/P&gt;&lt;P&gt;                                AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt; L_NAME2 = PA0006-NAME2.&lt;/P&gt;&lt;P&gt; L_STRAS = PA0006-STRAS.&lt;/P&gt;&lt;P&gt; L_ORT01 = PA0006-ORT01.&lt;/P&gt;&lt;P&gt; L_PSTLZ = PA0006-PSTLZ.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing communication dteails&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; SELECT SINGLE USRID INTO L_USRID FROM PA0105 WHERE PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                AND SUBTY = '0010'&lt;/P&gt;&lt;P&gt;                                                AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing location details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; SELECT SINGLE XMETXT INTO L_XMETXT FROM PA9005 WHERE PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                 AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing bank details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT SINGLE * FROM PA0009 WHERE  PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                      AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  L_BANKN = PA0009-BANKN.&lt;/P&gt;&lt;P&gt;  L_BANKL = PA0009-BANKL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; bringing the bankname&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT SINGLE BANKA INTO L_BANKA FROM BNKA WHERE BANKL = L_BANKL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing esop details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; SELECT SINGLE CNAME INTO L_CNAME FROM PA9008 WHERE  PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing vendor details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; SELECT SINGLE LIFNR INTO L_LIFNR FROM LFB1 WHERE PERNR = I_W_DATA-PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT SINGLE CTC_DATE  INTO L_INCDAT  FROM PB9007 WHERE REPORT = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                   AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt;*select single ctc_amt  into l_ctc_amt  from pb9007 where report = i_w_data-pernr&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                                  and endda ge sy-datum.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*l_incdat = pa9007-ctc_date.&lt;/P&gt;&lt;P&gt;*l_ctc_amt = pa9007-ctc_amt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing resignation date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT SINGLE BEGDA FROM PA0000 INTO L_RDATE WHERE PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                   AND ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;                                                   AND MASSN = '14'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;to get last working day&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;L_LWDAY = L_RDATE - 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;to get reentry date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT SINGLE BEGDA FROM PA0000 INTO L_REDAT WHERE PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                   AND ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;                                                   AND MASSN = '15'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing workschedule details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT SINGLE SCHKZ FROM PA0007 INTO L_SCHKZ WHERE PERNR =  I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                   AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing payroll status details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT SINGLE * FROM PA0003 WHERE PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                              AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;L_PRDAT = PA0003-PRDAT.&lt;/P&gt;&lt;P&gt;L_ABRDT = PA0003-ABRDT.&lt;/P&gt;&lt;P&gt;L_ABRSP = PA0003-ABRSP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bringing paydate&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT SINGLE BEGDA INTO L_SMDAT FROM PA0008 WHERE PERNR = I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;                                                   AND ENDDA GE SY-DATUM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*endadd&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting wage type for the salaries calc&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZRMID = L_ICNUM.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZICNUM = L_ICNUM_RM.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZRMBEGDA = L_RMBEGDA.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZRMENDDA = L_RMENDDA.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZEVPID = L_PERNR.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZEVPNAME = L_NAME.&lt;/P&gt;&lt;P&gt;     I_W_DATA-ZZORGUTSVP = L_ICNUM_TIER2.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZMSTBR = L_MSTBR.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZICNUM_21 = L_ICNUM_21.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZICNUM_20 = L_ICNUM_20.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZICNUM_24 = L_ICNUM_24.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZICNUM_18 = L_ICNUM_18.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZESINO = L_ESINO.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZEEPF1 = L_EEBAS.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZISSPL = L_ISSPL.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;code added by pandu&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      I_W_DATA-ZZGBDAT = L_GBDAT.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZFAVOR = L_FAVOR.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZNAME2 = L_NAME2.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZORT01 = L_ORT01.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZSTRAS = L_STRAS.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZPSTLZ = L_PSTLZ.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZUSRID = L_USRID.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZXMETXT = L_XMETXT.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZBANKL = L_BANKL.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZBANKN = L_BANKN.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZCNAME = L_CNAME.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZLIFNR = L_LIFNR.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZINCDAT = L_INCDAT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     i_w_data-zzctc_amt = l_ctc_amt.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      I_W_DATA-ZZRDAT = L_RDATE.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZLWDAY = L_LWDAY.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZRDAT = L_REDAT.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZSCHKZ = L_SCHKZ.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZPRDAT = L_PRDAT.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZABRDT = L_ABRDT.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZABRSP = L_ABRSP.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZBANKA = L_BANKA.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZSMDAT = L_SMDAT.&lt;/P&gt;&lt;P&gt;*endchange&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting The details for EVP&lt;/P&gt;&lt;P&gt;      CLEAR L_PERNR.&lt;/P&gt;&lt;P&gt;      CLEAR L_NAME.&lt;/P&gt;&lt;P&gt;      CLEAR L_ICNUM_TIER2.&lt;/P&gt;&lt;P&gt;      CLEAR L_ICNUM_RM.&lt;/P&gt;&lt;P&gt;      CLEAR L_RMBEGDA.&lt;/P&gt;&lt;P&gt;      CLEAR L_RMENDDA.&lt;/P&gt;&lt;P&gt;      CLEAR L_ESINO.&lt;/P&gt;&lt;P&gt;      CLEAR L_EEBAS.&lt;/P&gt;&lt;P&gt;      CLEAR L_ICNUM_21.&lt;/P&gt;&lt;P&gt;      CLEAR L_ICNUM_20.&lt;/P&gt;&lt;P&gt;      CLEAR L_ICNUM_24.&lt;/P&gt;&lt;P&gt;      CLEAR L_ICNUM_18.&lt;/P&gt;&lt;P&gt;      CLEAR L_MSTBR.&lt;/P&gt;&lt;P&gt;      CLEAR L_ISSPL.&lt;/P&gt;&lt;P&gt;      CLEAR L_PLANS.&lt;/P&gt;&lt;P&gt;*code added by pandu&lt;/P&gt;&lt;P&gt;      CLEAR L_GBDAT.&lt;/P&gt;&lt;P&gt;      CLEAR L_FAVOR.&lt;/P&gt;&lt;P&gt;      CLEAR L_NAME2.&lt;/P&gt;&lt;P&gt;      CLEAR L_ORT01.&lt;/P&gt;&lt;P&gt;      CLEAR L_STRAS.&lt;/P&gt;&lt;P&gt;      CLEAR L_PSTLZ.&lt;/P&gt;&lt;P&gt;      CLEAR L_USRID.&lt;/P&gt;&lt;P&gt;      CLEAR L_XMETXT.&lt;/P&gt;&lt;P&gt;      CLEAR L_BANKN.&lt;/P&gt;&lt;P&gt;      CLEAR L_BANKL.&lt;/P&gt;&lt;P&gt;      CLEAR L_CNAME.&lt;/P&gt;&lt;P&gt;      CLEAR L_LIFNR.&lt;/P&gt;&lt;P&gt;      CLEAR L_RDATE.&lt;/P&gt;&lt;P&gt;      CLEAR L_LWDAY.&lt;/P&gt;&lt;P&gt;      CLEAR L_REDAT.&lt;/P&gt;&lt;P&gt;      CLEAR L_PRDAT.&lt;/P&gt;&lt;P&gt;      CLEAR L_SCHKZ.&lt;/P&gt;&lt;P&gt;      CLEAR L_ABRDT.&lt;/P&gt;&lt;P&gt;      CLEAR L_ABRSP.&lt;/P&gt;&lt;P&gt;      CLEAR L_BANKA.&lt;/P&gt;&lt;P&gt;      CLEAR L_SMDAT.&lt;/P&gt;&lt;P&gt;*endcode&lt;/P&gt;&lt;P&gt;      SELECT SINGLE SOBID INTO L_PLANS2 FROM HRP1001&lt;/P&gt;&lt;P&gt;              WHERE OTYPE EQ 'S'&lt;/P&gt;&lt;P&gt;              AND OBJID EQ L_PLANS&lt;/P&gt;&lt;P&gt;              AND RSIGN EQ 'A'&lt;/P&gt;&lt;P&gt;              AND RELAT EQ '002'&lt;/P&gt;&lt;P&gt;              AND ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;              AND SCLAS EQ 'S'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             AND sobid EQ l_plans.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SELECT SINGLE PERNR INTO L_PERNR1 FROM PA0001&lt;/P&gt;&lt;P&gt;              WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;              AND PLANS EQ L_PLANS2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SELECT SINGLE ENAME INTO L_NAME1 FROM PA0001&lt;/P&gt;&lt;P&gt;              WHERE ENDDA GE SY-DATUM&lt;/P&gt;&lt;P&gt;              AND PLANS EQ L_PLANS2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZSRRMEVP = L_PERNR1.&lt;/P&gt;&lt;P&gt;      I_W_DATA-ZZSRRMEVPNAME = L_NAME1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***********************&lt;/P&gt;&lt;P&gt;*Monthly salary of Rm from PA0008&lt;/P&gt;&lt;P&gt;NUM = '01'.&lt;/P&gt;&lt;P&gt;IF I_W_DATA-ENDDA EQ '99991231'.&lt;/P&gt;&lt;P&gt;CLEAR V_AMOUNT.&lt;/P&gt;&lt;P&gt;SELECT SINGLE * INTO L_PA0008&lt;/P&gt;&lt;P&gt;FROM PA0008&lt;/P&gt;&lt;P&gt;WHERE PERNR EQ I_W_DATA-PERNR&lt;/P&gt;&lt;P&gt;AND   ENDDA EQ '99991231'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DO 30 TIMES.&lt;/P&gt;&lt;P&gt;IF STRLEN( NUM ) = 1.&lt;/P&gt;&lt;P&gt;CONCATENATE '0' NUM INTO NUM.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;CONCATENATE 'L_PA0008-BET' NUM INTO FLDNAM.&lt;/P&gt;&lt;P&gt;ASSIGN (FLDNAM) TO &amp;lt;FS&amp;gt;.&lt;/P&gt;&lt;P&gt;V_AMOUNT = V_AMOUNT + &amp;lt;FS&amp;gt;.&lt;/P&gt;&lt;P&gt;CLEAR &amp;lt;FS&amp;gt;.&lt;/P&gt;&lt;P&gt;NUM = NUM + 1.&lt;/P&gt;&lt;P&gt;ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I_W_DATA-ZZMONSAL     = V_AMOUNT.&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;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting salary monthly information&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CLEAR : L_AMOUNT, L_AMOUNT_OFF,L_NAME1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*CALL FUNCTION 'ZIBHR_EMP_INCENTIVE'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   S_PERNR             = i_w_data-pernr&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  INCENTIVE           = l_amount&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  INCENTIVE_OFF       = l_amount_off&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     i_w_data-zzmonsal_off = l_amount_off.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MODIFY I_T_DATA FROM I_W_DATA.&lt;/P&gt;&lt;P&gt;      CLEAR L_ICNUM.&lt;/P&gt;&lt;P&gt;      CLEAR L_PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;COst Center Enhancement for data source&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the employee count for a COST CENTER&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WHEN '0COSTCENTER_ATTR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR : VL_COUNT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT I_T_DATA INTO I_W_DATA_KOSTL.&lt;/P&gt;&lt;P&gt;      SELECT PERNR INTO TABLE IT_PERNR  FROM PA0185&lt;/P&gt;&lt;P&gt;             WHERE ICNUM EQ I_W_DATA_KOSTL-KOSTL&lt;/P&gt;&lt;P&gt;             AND SUBTY = '05'&lt;/P&gt;&lt;P&gt;             AND ENDDA EQ '99991231'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      DESCRIBE TABLE IT_PERNR LINES VL_COUNT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MOVE : VL_COUNT TO I_W_DATA_KOSTL-ZZHEADCOUNT.&lt;/P&gt;&lt;P&gt;      MODIFY I_T_DATA FROM I_W_DATA_KOSTL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      REFRESH : IT_PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Oct 2008 05:10:01 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-of-the-sql/m-p/4632919#M1090984</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-10-13T05:10:01Z</dc:date>
    </item>
    <item>
      <title>Re: performance of the SQL</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-of-the-sql/m-p/4632920#M1090985</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;if you encounter such a long runtime it's worth to check the complete source with SE30 (runtime analyzer) to identify the long running statements / parts of your code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you identify SQL statements as the cause of the performance issue use ST05 to get execution plans &lt;/P&gt;&lt;P&gt;for the SQL in question to check if indexes are used properly (if you have frequent SELECT's insided LOOP's and NO index support the slow performance will kill you )&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;A quick glance on your code:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Remove the LOOP's  and define  the SELECT 's in a way that you don't need them &lt;/P&gt;&lt;P&gt;(looping in a list with many items kills you also in terms of performance).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Bye&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;yk&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Oct 2008 07:02:17 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-of-the-sql/m-p/4632920#M1090985</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-10-13T07:02:17Z</dc:date>
    </item>
    <item>
      <title>Re: performance of the SQL</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-of-the-sql/m-p/4632921#M1090986</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;Thank you very much for fast reply .iam totally new to ABAP ,can you please guide me further any thing i need to do .&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Rk&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Oct 2008 07:29:00 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-of-the-sql/m-p/4632921#M1090986</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-10-13T07:29:00Z</dc:date>
    </item>
    <item>
      <title>Re: performance of the SQL</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-of-the-sql/m-p/4632922#M1090987</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Rama,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1st: improve the know-how for understanding whats going on in your source&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2nd: know the slowest parts of your source (identify the "lowest hanging fruits" ) and start tune these &lt;/P&gt;&lt;P&gt;parts.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Tools:&lt;/P&gt;&lt;P&gt;Check this blog for using SE30 and ST05:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_blogpost" href="https://community.sap.com/" __jive_macro_name="blogpost" modifiedtitle="true" __default_attr="45105"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Unfortunatley, I'm not able to give you an advice in terms of code - up to now we are only guessing what may slow you down.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It may be good to have a senior ABAPer on your side to help you with the tools mentioned above.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Bye&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;yk&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Oct 2008 07:54:46 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-of-the-sql/m-p/4632922#M1090987</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-10-13T07:54:46Z</dc:date>
    </item>
    <item>
      <title>Re: performance of the SQL</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-of-the-sql/m-p/4632923#M1090988</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;thank you very much and very gretaful to you providing good blog.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;RK&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Oct 2008 08:54:56 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-of-the-sql/m-p/4632923#M1090988</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-10-13T08:54:56Z</dc:date>
    </item>
    <item>
      <title>Re: performance of the SQL</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-of-the-sql/m-p/4632924#M1090989</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I find it quite useless to post many coding lines, you must test the program and&lt;/P&gt;&lt;P&gt;post coding which is responsible for long runtimes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have provided two blogs on the mayor traces:&lt;/P&gt;&lt;P&gt;SQL trace:&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_blogpost" href="https://community.sap.com/" __jive_macro_name="blogpost" modifiedtitle="true" __default_attr="44587"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SE30&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_blogpost" href="https://community.sap.com/" __jive_macro_name="blogpost" modifiedtitle="true" __default_attr="45105"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And a blog on internal tables processing&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Tell us total runtime and top three in hitlist.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Siegfried&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Oct 2008 10:37:35 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-of-the-sql/m-p/4632924#M1090989</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-10-13T10:37:35Z</dc:date>
    </item>
    <item>
      <title>Re: performance of the SQL</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/performance-of-the-sql/m-p/4632925#M1090990</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;i think you are not using index while read the entries from db. Try to use index always. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i suggest, there is a FM for read infoset in HR. use that FM. it will be better&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 14 Oct 2008 07:15:00 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/performance-of-the-sql/m-p/4632925#M1090990</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-10-14T07:15:00Z</dc:date>
    </item>
  </channel>
</rss>

