<?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: Read statement in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601930#M270256</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;REPORT  ZSD_AUDITLOG.&lt;/P&gt;&lt;P&gt;Tables: CATSDB, PA0001, VBAK, CSKS, T554T.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Type pools that we use for ALV are defined below.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TYPE-POOLS SLIS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_VBAK Occurs 0,&lt;/P&gt;&lt;P&gt;        vbeln type vbak-vbeln,&lt;/P&gt;&lt;P&gt;        raufnr type catsdb-raufnr,&lt;/P&gt;&lt;P&gt;        vkorg type vbak-vkorg,&lt;/P&gt;&lt;P&gt;        VKGRP type VBAK-VKGRP,&lt;/P&gt;&lt;P&gt;        knumv type vbak-knumv,&lt;/P&gt;&lt;P&gt;End of I_VBAK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_CATSDB_30 Occurs 0,&lt;/P&gt;&lt;P&gt;        WORKDATE Type CATSDATE,&lt;/P&gt;&lt;P&gt;        PERNR LIKE CATSDB-PERNR,&lt;/P&gt;&lt;P&gt;        RAUFNR Type EAUFNR,&lt;/P&gt;&lt;P&gt;        RKOSTL Type EKOSTL,&lt;/P&gt;&lt;P&gt;        AWART Type AWART,&lt;/P&gt;&lt;P&gt;        STATUS Type CATSSTATUS,&lt;/P&gt;&lt;P&gt;        COUNTER Type CATSREFCOU,&lt;/P&gt;&lt;P&gt;        REFCOUNTER tYPE CATSREFCOU,&lt;/P&gt;&lt;P&gt;        CATSHOURS type CATSHOURS,&lt;/P&gt;&lt;P&gt;        ZZDESCRIPTION Type ZZDESCRIPTION,&lt;/P&gt;&lt;P&gt;        ERSDA Type CATS_ERSDA,&lt;/P&gt;&lt;P&gt;        ERSTM Type CATS_CPUTM,&lt;/P&gt;&lt;P&gt;        ERNAM Type CATS_ERNAM,&lt;/P&gt;&lt;P&gt;        LAEDA Type CATS_LAEDA,&lt;/P&gt;&lt;P&gt;        LAETM Type CATS_LAETM,&lt;/P&gt;&lt;P&gt;        AENAM Type AENAM,&lt;/P&gt;&lt;P&gt;      End of I_CATSDB_30.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: I_CATSDB Like I_CATSDB_30 Occurs 0 with header line,&lt;/P&gt;&lt;P&gt;      I_CATSDB_TMP like I_CATSDB_30 Occurs 0 with header line.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data : Begin of I_REGION occurs 0,&lt;/P&gt;&lt;P&gt;           vkgrp like vbak-vkgrp,&lt;/P&gt;&lt;P&gt;           bezei like tvgrt-bezei,&lt;/P&gt;&lt;P&gt;       End of I_REGION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_OUTPUT Occurs 0,&lt;/P&gt;&lt;P&gt;        BEZEI LIKE TVGRT-BEZEI,&lt;/P&gt;&lt;P&gt;        PROJCC Type EAUFNR,&lt;/P&gt;&lt;P&gt;        ATEXT Type ABWTXT ,&lt;/P&gt;&lt;P&gt;        WORKDATE Type CATSDATE,&lt;/P&gt;&lt;P&gt;        PERNR Type PERNR_D,&lt;/P&gt;&lt;P&gt;        ENAME Type EMNAM,&lt;/P&gt;&lt;P&gt;        INITHRS TYPE CATSHOURS,&lt;/P&gt;&lt;P&gt;        FINHRS TYPE CATSHOURS,&lt;/P&gt;&lt;P&gt;        DELTA TYPE CATSHOURS,&lt;/P&gt;&lt;P&gt;        RATE TYPE NETWR_AP,&lt;/P&gt;&lt;P&gt;        AMOUNT TYPE P DECIMALS 2,&lt;/P&gt;&lt;P&gt;      End of I_OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_PERNR Occurs 0,&lt;/P&gt;&lt;P&gt;        PERNR Type PERNR_D,&lt;/P&gt;&lt;P&gt;      End of I_PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_RAUFNR Occurs 0,&lt;/P&gt;&lt;P&gt;        RAUFNR LIKE VBAK-VBELN,&lt;/P&gt;&lt;P&gt;      End of I_RAUFNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_VBAP Occurs 0,&lt;/P&gt;&lt;P&gt;        VBELN like VBAP-VBELN,&lt;/P&gt;&lt;P&gt;        RAUFNR like CATSDB-RAUFNR,&lt;/P&gt;&lt;P&gt;        POSNR like vbap-posnr,&lt;/P&gt;&lt;P&gt;        MATNR like vbap-matnr,&lt;/P&gt;&lt;P&gt;        PERNR LIKE pa0001-pernr,&lt;/P&gt;&lt;P&gt;        end of i_vbap.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_a901 occurs 0,&lt;/P&gt;&lt;P&gt;        raufnr like catsdb-raufnr,&lt;/P&gt;&lt;P&gt;        pernr like catsdb-pernr,&lt;/P&gt;&lt;P&gt;        kunnr like a901-kunnr,&lt;/P&gt;&lt;P&gt;        matnr like a901-matnr,&lt;/P&gt;&lt;P&gt;        knumh like a901-knumh,&lt;/P&gt;&lt;P&gt;      end of i_a901.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_KONP occurs 0,&lt;/P&gt;&lt;P&gt;        knumh like KONP-knumh,&lt;/P&gt;&lt;P&gt;        kbetr like konp-kbetr,&lt;/P&gt;&lt;P&gt;      end of i_KONP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_EMPNAME Occurs 0,&lt;/P&gt;&lt;P&gt;        PERNR Type PERNR_D,&lt;/P&gt;&lt;P&gt;        ENAME Type EMNAM,&lt;/P&gt;&lt;P&gt;      End of I_EMPNAME.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_ACTIVITY Occurs 0,&lt;/P&gt;&lt;P&gt;        AWART LIKE T554T-AWART,&lt;/P&gt;&lt;P&gt;        ATEXT LIKE T554T-ATEXT,&lt;/P&gt;&lt;P&gt;      End of I_ACTIVITY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: ITAB_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      I_LAYOUT TYPE SLIS_LAYOUT_ALV,&lt;/P&gt;&lt;P&gt;      I_SORT TYPE SLIS_T_SORTINFO_ALV WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      I_EVENTS TYPE SLIS_T_EVENT WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      ITAB_HEADING TYPE SLIS_T_LISTHEADER WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      ITAB_FORMNAME TYPE SLIS_FORMNAME VALUE 'TOP_OF_PAGE',&lt;/P&gt;&lt;P&gt;      SYREPID LIKE SY-REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Selection screen declaration.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK A1 WITH FRAME TITLE TEXT-001.&lt;/P&gt;&lt;P&gt;PARAMETERS: P_WERKS LIKE CATSDB-WERKS OBLIGATORY.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS :S_TSDATE FOR CATSDB-WORKDATE OBLIGATORY,&lt;/P&gt;&lt;P&gt;                S_REGIO FOR VBAK-VKGRP,&lt;/P&gt;&lt;P&gt;                S_EMPNO FOR PA0001-PERNR,&lt;/P&gt;&lt;P&gt;                S_PCODE FOR VBAK-VBELN MATCHCODE OBJECT VMVA,&lt;/P&gt;&lt;P&gt;                S_COCENT FOR CSKS-KOSTL,&lt;/P&gt;&lt;P&gt;                S_ACTYP FOR T554T-AWART.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK A1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE.&lt;/P&gt;&lt;P&gt;  PERFORM TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  Perform Get_Region_Proj.&lt;/P&gt;&lt;P&gt;  Perform Get_Timesheet_30.&lt;/P&gt;&lt;P&gt;  Perform Get_Timesheet.&lt;/P&gt;&lt;P&gt;  Perform Get_Ename_and_Rate.&lt;/P&gt;&lt;P&gt;  Perform Build_Output.&lt;/P&gt;&lt;P&gt;  Perform Build_Alv.&lt;/P&gt;&lt;P&gt;  Perform Display_Output.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Get_Timesheet_30 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  loop at i_vbak.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        INPUT  = i_vbak-vbeln&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        OUTPUT = i_vbak-raufnr.&lt;/P&gt;&lt;P&gt;    modify i_vbak.&lt;/P&gt;&lt;P&gt;    clear i_vbak.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the active records for a particular employee, based on the&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;reference counter which does not indicates that its the active record&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;with and initial record.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Select WORKDATE PERNR RAUFNR RKOSTL AWART STATUS COUNTER REFCOUNTER&lt;/P&gt;&lt;P&gt;  CATSHOURS ZZDESCRIPTION ERSDA ERSTM ERNAM LAEDA LAETM AENAM&lt;/P&gt;&lt;P&gt;           Into Table I_CATSDB_30&lt;/P&gt;&lt;P&gt;           From CATSDB&lt;/P&gt;&lt;P&gt;           For all entries in I_VBAK&lt;/P&gt;&lt;P&gt;           Where WORKDATE IN S_TSDATE&lt;/P&gt;&lt;P&gt;          AND RAUFNR EQ I_VBAK-raufnr&lt;/P&gt;&lt;P&gt;          AND PERNR IN S_EMPNO&lt;/P&gt;&lt;P&gt;          AND RKOSTL IN S_COCENT&lt;/P&gt;&lt;P&gt;          AND AWART IN S_ACTYP&lt;/P&gt;&lt;P&gt;          AND STATUS = '30'&lt;/P&gt;&lt;P&gt;          AND REFCOUNTER IS NOT NULL&lt;/P&gt;&lt;P&gt;          AND WERKS = P_WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT I_CATSDB_30.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Get_Timesheet_60&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;      Form  Get_Timesheet&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Get_Timesheet .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting all records for the active records in I_CATSDB_30.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  If I_CATSDB_30[] IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    Select WORKDATE PERNR RAUFNR RKOSTL AWART&lt;/P&gt;&lt;P&gt;           STATUS COUNTER REFCOUNTER CATSHOURS ZZDESCRIPTION&lt;/P&gt;&lt;P&gt;           ERSDA ERSTM ERNAM LAEDA LAETM AENAM&lt;/P&gt;&lt;P&gt;             Into Table I_CATSDB&lt;/P&gt;&lt;P&gt;             From CATSDB&lt;/P&gt;&lt;P&gt;             FOR ALL ENTRIES IN I_CATSDB_30&lt;/P&gt;&lt;P&gt;             Where WORKDATE = I_CATSDB_30-WORKDATE&lt;/P&gt;&lt;P&gt;             AND PERNR = I_CATSDB_30-PERNR&lt;/P&gt;&lt;P&gt;             AND RAUFNR = I_CATSDB_30-RAUFNR&lt;/P&gt;&lt;P&gt;             AND RKOSTL = I_CATSDB_30-RKOSTL&lt;/P&gt;&lt;P&gt;             AND WERKS = P_WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    Sort I_CATSDB ASCENDING BY WORKDATE PERNR RAUFNR RKOSTL&lt;/P&gt;&lt;P&gt;                  DESCENDING ERSDA ERSTM.&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;ENDFORM.                    " Get_Timesheet&lt;/P&gt;&lt;P&gt;&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;      Form  TOP_OF_PAGE&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      IT_LIST_COMMENTARY = ITAB_HEADING[]&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      OTHERS             = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " TOP_OF_PAGE&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;      Form  Display_Output&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Display_Output .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;/P&gt;&lt;P&gt;     EXPORTING&lt;/P&gt;&lt;P&gt;       I_CALLBACK_PROGRAM = SYREPID&lt;/P&gt;&lt;P&gt;       IS_LAYOUT          = I_LAYOUT&lt;/P&gt;&lt;P&gt;       IT_FIELDCAT        = ITAB_FIELDCAT[]&lt;/P&gt;&lt;P&gt;      IT_SORT                = I_SORT[]&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     I_CALLBACK_TOP_OF_PAGE  = 'TOP_OF_PAGE'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       I_SAVE             = 'A'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     IT_EVENTS           = I_EVENTS[]&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     TABLES&lt;/P&gt;&lt;P&gt;       T_OUTTAB           = I_OUTPUT&lt;/P&gt;&lt;P&gt;     EXCEPTIONS&lt;/P&gt;&lt;P&gt;       PROGRAM_ERROR      = 1&lt;/P&gt;&lt;P&gt;       OTHERS             = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Display_Output&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;      Form  Get_Emp_Name&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Get_Ename_and_Rate .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the individual employee and projects so that&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;we can get the names of the employees and the rates for the projects&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;For every IF &amp;amp; IN project we get the respective intercompany project&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;as well.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : LEN TYPE i.&lt;/P&gt;&lt;P&gt;  Loop at I_CATSDB.&lt;/P&gt;&lt;P&gt;    At New PERNR.&lt;/P&gt;&lt;P&gt;      Move I_CATSDB-PERNR to I_PERNR-PERNR.&lt;/P&gt;&lt;P&gt;      Append I_PERNR.&lt;/P&gt;&lt;P&gt;      Clear I_PERNR.&lt;/P&gt;&lt;P&gt;    EndAt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    At New Raufnr.&lt;/P&gt;&lt;P&gt;      LEN = STRLEN( I_CATSDB-RAUFNR ).&lt;/P&gt;&lt;P&gt;      if len eq 8.&lt;/P&gt;&lt;P&gt;        Move I_CATSDB-RAUFNR(6) to I_RAUFNR-RAUFNR.&lt;/P&gt;&lt;P&gt;        Append I_RAUFNR.&lt;/P&gt;&lt;P&gt;        Clear I_Raufnr.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      Move I_CATSDB-RAUFNR to I_RAUFNR-RAUFNR.&lt;/P&gt;&lt;P&gt;      Append I_RAUFNR.&lt;/P&gt;&lt;P&gt;      Clear I_Raufnr.&lt;/P&gt;&lt;P&gt;    EndAt.&lt;/P&gt;&lt;P&gt;    Clear I_Raufnr.&lt;/P&gt;&lt;P&gt;  EndLoop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Sort : I_PERNR, I_RAUFNR.&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM I_PERNR.&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM I_RAUFNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Select PERNR ENAME&lt;/P&gt;&lt;P&gt;         into table I_EMPNAME&lt;/P&gt;&lt;P&gt;         From PA0001&lt;/P&gt;&lt;P&gt;         For all entries in I_PERNR&lt;/P&gt;&lt;P&gt;         Where PERNR = I_PERNR-PERNR&lt;/P&gt;&lt;P&gt;         And BEGDA &amp;lt;= Sy-Datum&lt;/P&gt;&lt;P&gt;         And ENDDA &amp;gt;= Sy-Datum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT AWART ATEXT FROM T554T&lt;/P&gt;&lt;P&gt;  INTO TABLE I_ACTIVITY&lt;/P&gt;&lt;P&gt;  WHERE SPRSL = 'EN'&lt;/P&gt;&lt;P&gt;  AND MOABW = '40'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT KUNNR MATNR KNUMH FROM A901&lt;/P&gt;&lt;P&gt;  INTO CORRESPONDING FIELDS OF TABLE I_A901&lt;/P&gt;&lt;P&gt;  FOR ALL ENTRIES IN I_RAUFNR&lt;/P&gt;&lt;P&gt;  WHERE KUNNR = I_RAUFNR-RAUFNR&lt;/P&gt;&lt;P&gt;  AND DATBI GE S_TSDATE-HIGH&lt;/P&gt;&lt;P&gt;  AND DATAB LE S_TSDATE-LOW.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT KNUMH KBETR FROM KONP INTO TABLE I_KONP&lt;/P&gt;&lt;P&gt;  FOR ALL ENTRIES IN I_A901&lt;/P&gt;&lt;P&gt;  WHERE KNUMH = I_A901-KNUMH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT I_A901.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        INPUT  = i_a901-matnr&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        OUTPUT = i_a901-pernr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        INPUT  = i_a901-kunnr&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        OUTPUT = i_a901-raufnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    modify i_a901.clear i_a901.&lt;/P&gt;&lt;P&gt;&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;sort i_a901 by raufnr pernr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Get_Emp_Name&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;      Form  Build_Output&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Build_Output .&lt;/P&gt;&lt;P&gt;  I_CATSDB_TMP[] = I_CATSDB[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Loop at I_CATSDB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    If I_CATSDB-STATUS = '30'.&lt;/P&gt;&lt;P&gt;      Read table I_VBAK with key raufnr = i_catsdb-raufnr.&lt;/P&gt;&lt;P&gt;      if sy-subrc eq 0.&lt;/P&gt;&lt;P&gt;        Read table I_Region with key vkgrp = i_vbak-vkgrp.&lt;/P&gt;&lt;P&gt;        if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;          I_output-Bezei = I_Region-Bezei.&lt;/P&gt;&lt;P&gt;        endif.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      i_output-projcc = i_catsdb-raufnr.&lt;/P&gt;&lt;P&gt;      Read table I_ACTIVITY with key awart = I_CATSDB-Awart.&lt;/P&gt;&lt;P&gt;      if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;        i_output-atext = i_activity-atext.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      i_output-workdate = i_catsdb-workdate.&lt;/P&gt;&lt;P&gt;      i_output-pernr = i_catsdb-pernr.&lt;/P&gt;&lt;P&gt;      Read table I_EMPNAME with key pernr = I_CATSDB-pernr.&lt;/P&gt;&lt;P&gt;      if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;        i_output-pernr = i_empname-pernr.&lt;/P&gt;&lt;P&gt;        i_output-ename = i_empname-ename.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      data : tmp_refc like catsdb-refcounter.&lt;/P&gt;&lt;P&gt;      tmp_refc = i_catsdb-refcounter.&lt;/P&gt;&lt;P&gt;      while not tmp_refc is initial .&lt;/P&gt;&lt;P&gt;        read table i_catsdb_tmp with key counter = tmp_refc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;          tmp_refc = i_catsdb_tmp-refcounter.&lt;/P&gt;&lt;P&gt;        endif.&lt;/P&gt;&lt;P&gt;      endwhile.&lt;/P&gt;&lt;P&gt;      i_output-inithrs = i_catsdb_tmp-catshours.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     read table i_catsdb_tmp with key pernr = i_catsdb-pernr&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                      awart = i_catsdb-awart&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                      workdate = i_catsdb-workdate&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                      raufnr = i_catsdb-raufnr&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                      rkostl = i_catsdb-rkostl&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                      refcounter = ''.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     if sy-subrc = 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       i_output-inithrs = i_catsdb_tmp-catshours.&lt;/P&gt;&lt;/LI&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;      i_output-finhrs = i_catsdb-catshours.&lt;/P&gt;&lt;P&gt;      i_output-delta = i_output-finhrs - i_output-inithrs.&lt;/P&gt;&lt;P&gt;      Read table i_vbak with key raufnr = i_catsdb-raufnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If the sales org is 0030, then we take the rate from the respective&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;intercompany project.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      If sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        if i_vbak-vkorg = '0030'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          Read table i_a901 with key pernr = i_catsdb-pernr&lt;/P&gt;&lt;P&gt;                                     raufnr = i_catsdb-raufnr(6).&lt;/P&gt;&lt;P&gt;          if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;            Read table i_konp with key knumh = i_a901-knumh.&lt;/P&gt;&lt;P&gt;            if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;              i_output-rate = i_konp-kbetr.&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;          else.&lt;/P&gt;&lt;P&gt;            Read table i_a901 with key pernr = i_catsdb-pernr&lt;/P&gt;&lt;P&gt;                              raufnr = i_catsdb-raufnr.&lt;/P&gt;&lt;P&gt;            if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;              Read table i_konp with key knumh = i_a901-knumh.&lt;/P&gt;&lt;P&gt;              if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;                i_output-rate = i_konp-kbetr.&lt;/P&gt;&lt;P&gt;              endif.&lt;/P&gt;&lt;P&gt;            endif.&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;          i_output-amount = i_output-rate * i_output-delta.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          append i_output.&lt;/P&gt;&lt;P&gt;          clear : i_output, i_vbap, i_catsdb_tmp, i_empname,&lt;/P&gt;&lt;P&gt;                  i_activity, i_vbak, i_catsdb, i_a901,i_konp.&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;      sort i_output by bezei atext projcc  workdate pernr.&lt;/P&gt;&lt;P&gt;    ENDFORM.                    " Build_Output&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;      Form  Fill_FieldCat&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Fill_FieldCat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'BEZEI'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 1.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 20.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-JUST = 'C'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_M = 'REGION'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'ATEXT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 2.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 25.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_M = 'ACTIVITY TYPE'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'PROJCC'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 3.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 10.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_M = 'PROJECT'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'WORKDATE'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 4.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 16.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_L = 'TIME SHEET DATE'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'ENAME'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 5.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 25.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_L = 'EMPLOYEE'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'INITHRS'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 6.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 12.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_L = 'INITIAL HRS'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'FINHRS'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 7.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 12.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_M = 'FINAL HRS'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'DELTA'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 8.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 10.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_M = 'VARIANCE'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'RATE'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 9.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 10.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_M = 'RATE'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'AMOUNT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 10.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 10.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_M = 'Amount'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Fill_FieldCat&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;      Form  Fill_Layout&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Fill_Layout .&lt;/P&gt;&lt;P&gt;  I_LAYOUT-ZEBRA = 'X'.&lt;/P&gt;&lt;P&gt;  I_LAYOUT-WINDOW_TITLEBAR = TEXT-001.&lt;/P&gt;&lt;P&gt;  I_LAYOUT-TOTALS_TEXT = 'Grand Total'.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Fill_Layout&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;      Form  Get_Region_Proj&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Get_Region_Proj .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the Sales Org &amp;amp; Region for a project.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Select VBELN VKORG VKGRP KNUMV from VBAK&lt;/P&gt;&lt;P&gt;  into corresponding fields of table I_VBAK&lt;/P&gt;&lt;P&gt;  where vkgrp in S_REGIO and&lt;/P&gt;&lt;P&gt;        vbeln in S_PCODE and&lt;/P&gt;&lt;P&gt;        vbtyp eq 'G'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the Region &amp;amp; its resp. Description.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Select vkgrp bezei from tvgrt&lt;/P&gt;&lt;P&gt;  into table i_region&lt;/P&gt;&lt;P&gt;  where spras = 'EN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Get_Region_Proj&lt;/P&gt;&lt;P&gt;&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;      Form  Build_Sort&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Build_Sort .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  I_SORT-SPOS = 1.&lt;/P&gt;&lt;P&gt;  I_SORT-TABNAME = 'I_output'.&lt;/P&gt;&lt;P&gt;  I_SORT-FIELDNAME = 'BEZEI'.&lt;/P&gt;&lt;P&gt;  I_SORT-UP = 'X'.&lt;/P&gt;&lt;P&gt;  I_SORT-SUBTOT = 'X'.&lt;/P&gt;&lt;P&gt;  I_SORT-GROUP = 'UL'.&lt;/P&gt;&lt;P&gt;  APPEND I_SORT. CLEAR I_SORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  I_SORT-SPOS = 2.&lt;/P&gt;&lt;P&gt;  I_SORT-TABNAME = 'I_output'.&lt;/P&gt;&lt;P&gt;  I_SORT-FIELDNAME = 'ATEXT'.&lt;/P&gt;&lt;P&gt;  I_SORT-UP = 'X'.&lt;/P&gt;&lt;P&gt;  I_SORT-SUBTOT = 'X'.&lt;/P&gt;&lt;P&gt;  I_SORT-GROUP = 'UL'.&lt;/P&gt;&lt;P&gt;  APPEND I_SORT. CLEAR I_SORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  I_SORT-SPOS = 3.&lt;/P&gt;&lt;P&gt;  I_SORT-TABNAME = 'I_output'.&lt;/P&gt;&lt;P&gt;  I_SORT-FIELDNAME = 'PROJCC'.&lt;/P&gt;&lt;P&gt;  I_SORT-UP = 'X'.&lt;/P&gt;&lt;P&gt;  I_SORT-SUBTOT = 'X'.&lt;/P&gt;&lt;P&gt;  I_SORT-GROUP = 'UL'.&lt;/P&gt;&lt;P&gt;  APPEND I_SORT. CLEAR I_SORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Build_Sort&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;      Form  Build_Alv&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Build_Alv .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Perform Fill_FieldCat.&lt;/P&gt;&lt;P&gt;  Perform Build_Sort.&lt;/P&gt;&lt;P&gt;  Perform Fill_Layout.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Build_Alv&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 27 Sep 2006 02:46:05 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-09-27T02:46:05Z</dc:date>
    <item>
      <title>Read statement</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601927#M270253</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The read statement is giving return code 4(sy-subrc) although the data is there. The data elements used are the same as well.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_a901 occurs 0,&lt;/P&gt;&lt;P&gt;        raufnr like catsdb-raufnr,&lt;/P&gt;&lt;P&gt;        pernr like catsdb-pernr,&lt;/P&gt;&lt;P&gt;        kunnr like a901-kunnr,&lt;/P&gt;&lt;P&gt;        matnr like a901-matnr,&lt;/P&gt;&lt;P&gt;        knumh like a901-knumh,&lt;/P&gt;&lt;P&gt;      end of i_a901.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_CATSDB_30 Occurs 0,&lt;/P&gt;&lt;P&gt;        WORKDATE Type CATSDATE,&lt;/P&gt;&lt;P&gt;        PERNR LIKE CATSDB-PERNR,&lt;/P&gt;&lt;P&gt;        RAUFNR Type EAUFNR,&lt;/P&gt;&lt;P&gt;        RKOSTL Type EKOSTL,&lt;/P&gt;&lt;P&gt;        AWART Type AWART,&lt;/P&gt;&lt;P&gt;        STATUS Type CATSSTATUS,&lt;/P&gt;&lt;P&gt;        COUNTER Type CATSREFCOU,&lt;/P&gt;&lt;P&gt;        REFCOUNTER tYPE CATSREFCOU,&lt;/P&gt;&lt;P&gt;        CATSHOURS type CATSHOURS,&lt;/P&gt;&lt;P&gt;        ZZDESCRIPTION Type ZZDESCRIPTION,&lt;/P&gt;&lt;P&gt;        ERSDA Type CATS_ERSDA,&lt;/P&gt;&lt;P&gt;        ERSTM Type CATS_CPUTM,&lt;/P&gt;&lt;P&gt;        ERNAM Type CATS_ERNAM,&lt;/P&gt;&lt;P&gt;        LAEDA Type CATS_LAEDA,&lt;/P&gt;&lt;P&gt;        LAETM Type CATS_LAETM,&lt;/P&gt;&lt;P&gt;        AENAM Type AENAM,&lt;/P&gt;&lt;P&gt;      End of I_CATSDB_30.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Read table i_a901 with key pernr = i_catsdb-pernr&lt;/P&gt;&lt;P&gt;                                     raufnr = i_catsdb-raufnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What could be the reason?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Sep 2006 02:34:29 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601927#M270253</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-09-27T02:34:29Z</dc:date>
    </item>
    <item>
      <title>Re: Read statement</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601928#M270254</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Can you paste the code before READ statement&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Sep 2006 02:40:35 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601928#M270254</guid>
      <dc:creator>gopi_narendra</dc:creator>
      <dc:date>2006-09-27T02:40:35Z</dc:date>
    </item>
    <item>
      <title>Re: Read statement</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601929#M270255</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;change the itab definition &amp;amp; try it  ie&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;Data: Begin of I_a901 occurs 0,
pernr like catsdb-pernr,
raufnr like catsdb-raufnr,
kunnr like a901-kunnr,
matnr like a901-matnr,
knumh like a901-knumh,
end of i_a901.
sort i_a901.
Read table i_a901 with key pernr = i_catsdb-pernr
raufnr = i_catsdb-raufnr
binary search.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;~Suresh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Sep 2006 02:41:53 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601929#M270255</guid>
      <dc:creator>suresh_datti</dc:creator>
      <dc:date>2006-09-27T02:41:53Z</dc:date>
    </item>
    <item>
      <title>Re: Read statement</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601930#M270256</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;REPORT  ZSD_AUDITLOG.&lt;/P&gt;&lt;P&gt;Tables: CATSDB, PA0001, VBAK, CSKS, T554T.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Type pools that we use for ALV are defined below.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TYPE-POOLS SLIS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_VBAK Occurs 0,&lt;/P&gt;&lt;P&gt;        vbeln type vbak-vbeln,&lt;/P&gt;&lt;P&gt;        raufnr type catsdb-raufnr,&lt;/P&gt;&lt;P&gt;        vkorg type vbak-vkorg,&lt;/P&gt;&lt;P&gt;        VKGRP type VBAK-VKGRP,&lt;/P&gt;&lt;P&gt;        knumv type vbak-knumv,&lt;/P&gt;&lt;P&gt;End of I_VBAK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_CATSDB_30 Occurs 0,&lt;/P&gt;&lt;P&gt;        WORKDATE Type CATSDATE,&lt;/P&gt;&lt;P&gt;        PERNR LIKE CATSDB-PERNR,&lt;/P&gt;&lt;P&gt;        RAUFNR Type EAUFNR,&lt;/P&gt;&lt;P&gt;        RKOSTL Type EKOSTL,&lt;/P&gt;&lt;P&gt;        AWART Type AWART,&lt;/P&gt;&lt;P&gt;        STATUS Type CATSSTATUS,&lt;/P&gt;&lt;P&gt;        COUNTER Type CATSREFCOU,&lt;/P&gt;&lt;P&gt;        REFCOUNTER tYPE CATSREFCOU,&lt;/P&gt;&lt;P&gt;        CATSHOURS type CATSHOURS,&lt;/P&gt;&lt;P&gt;        ZZDESCRIPTION Type ZZDESCRIPTION,&lt;/P&gt;&lt;P&gt;        ERSDA Type CATS_ERSDA,&lt;/P&gt;&lt;P&gt;        ERSTM Type CATS_CPUTM,&lt;/P&gt;&lt;P&gt;        ERNAM Type CATS_ERNAM,&lt;/P&gt;&lt;P&gt;        LAEDA Type CATS_LAEDA,&lt;/P&gt;&lt;P&gt;        LAETM Type CATS_LAETM,&lt;/P&gt;&lt;P&gt;        AENAM Type AENAM,&lt;/P&gt;&lt;P&gt;      End of I_CATSDB_30.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: I_CATSDB Like I_CATSDB_30 Occurs 0 with header line,&lt;/P&gt;&lt;P&gt;      I_CATSDB_TMP like I_CATSDB_30 Occurs 0 with header line.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data : Begin of I_REGION occurs 0,&lt;/P&gt;&lt;P&gt;           vkgrp like vbak-vkgrp,&lt;/P&gt;&lt;P&gt;           bezei like tvgrt-bezei,&lt;/P&gt;&lt;P&gt;       End of I_REGION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_OUTPUT Occurs 0,&lt;/P&gt;&lt;P&gt;        BEZEI LIKE TVGRT-BEZEI,&lt;/P&gt;&lt;P&gt;        PROJCC Type EAUFNR,&lt;/P&gt;&lt;P&gt;        ATEXT Type ABWTXT ,&lt;/P&gt;&lt;P&gt;        WORKDATE Type CATSDATE,&lt;/P&gt;&lt;P&gt;        PERNR Type PERNR_D,&lt;/P&gt;&lt;P&gt;        ENAME Type EMNAM,&lt;/P&gt;&lt;P&gt;        INITHRS TYPE CATSHOURS,&lt;/P&gt;&lt;P&gt;        FINHRS TYPE CATSHOURS,&lt;/P&gt;&lt;P&gt;        DELTA TYPE CATSHOURS,&lt;/P&gt;&lt;P&gt;        RATE TYPE NETWR_AP,&lt;/P&gt;&lt;P&gt;        AMOUNT TYPE P DECIMALS 2,&lt;/P&gt;&lt;P&gt;      End of I_OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_PERNR Occurs 0,&lt;/P&gt;&lt;P&gt;        PERNR Type PERNR_D,&lt;/P&gt;&lt;P&gt;      End of I_PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_RAUFNR Occurs 0,&lt;/P&gt;&lt;P&gt;        RAUFNR LIKE VBAK-VBELN,&lt;/P&gt;&lt;P&gt;      End of I_RAUFNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_VBAP Occurs 0,&lt;/P&gt;&lt;P&gt;        VBELN like VBAP-VBELN,&lt;/P&gt;&lt;P&gt;        RAUFNR like CATSDB-RAUFNR,&lt;/P&gt;&lt;P&gt;        POSNR like vbap-posnr,&lt;/P&gt;&lt;P&gt;        MATNR like vbap-matnr,&lt;/P&gt;&lt;P&gt;        PERNR LIKE pa0001-pernr,&lt;/P&gt;&lt;P&gt;        end of i_vbap.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_a901 occurs 0,&lt;/P&gt;&lt;P&gt;        raufnr like catsdb-raufnr,&lt;/P&gt;&lt;P&gt;        pernr like catsdb-pernr,&lt;/P&gt;&lt;P&gt;        kunnr like a901-kunnr,&lt;/P&gt;&lt;P&gt;        matnr like a901-matnr,&lt;/P&gt;&lt;P&gt;        knumh like a901-knumh,&lt;/P&gt;&lt;P&gt;      end of i_a901.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_KONP occurs 0,&lt;/P&gt;&lt;P&gt;        knumh like KONP-knumh,&lt;/P&gt;&lt;P&gt;        kbetr like konp-kbetr,&lt;/P&gt;&lt;P&gt;      end of i_KONP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_EMPNAME Occurs 0,&lt;/P&gt;&lt;P&gt;        PERNR Type PERNR_D,&lt;/P&gt;&lt;P&gt;        ENAME Type EMNAM,&lt;/P&gt;&lt;P&gt;      End of I_EMPNAME.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: Begin of I_ACTIVITY Occurs 0,&lt;/P&gt;&lt;P&gt;        AWART LIKE T554T-AWART,&lt;/P&gt;&lt;P&gt;        ATEXT LIKE T554T-ATEXT,&lt;/P&gt;&lt;P&gt;      End of I_ACTIVITY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: ITAB_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      I_LAYOUT TYPE SLIS_LAYOUT_ALV,&lt;/P&gt;&lt;P&gt;      I_SORT TYPE SLIS_T_SORTINFO_ALV WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      I_EVENTS TYPE SLIS_T_EVENT WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      ITAB_HEADING TYPE SLIS_T_LISTHEADER WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      ITAB_FORMNAME TYPE SLIS_FORMNAME VALUE 'TOP_OF_PAGE',&lt;/P&gt;&lt;P&gt;      SYREPID LIKE SY-REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Selection screen declaration.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK A1 WITH FRAME TITLE TEXT-001.&lt;/P&gt;&lt;P&gt;PARAMETERS: P_WERKS LIKE CATSDB-WERKS OBLIGATORY.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS :S_TSDATE FOR CATSDB-WORKDATE OBLIGATORY,&lt;/P&gt;&lt;P&gt;                S_REGIO FOR VBAK-VKGRP,&lt;/P&gt;&lt;P&gt;                S_EMPNO FOR PA0001-PERNR,&lt;/P&gt;&lt;P&gt;                S_PCODE FOR VBAK-VBELN MATCHCODE OBJECT VMVA,&lt;/P&gt;&lt;P&gt;                S_COCENT FOR CSKS-KOSTL,&lt;/P&gt;&lt;P&gt;                S_ACTYP FOR T554T-AWART.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK A1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE.&lt;/P&gt;&lt;P&gt;  PERFORM TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  Perform Get_Region_Proj.&lt;/P&gt;&lt;P&gt;  Perform Get_Timesheet_30.&lt;/P&gt;&lt;P&gt;  Perform Get_Timesheet.&lt;/P&gt;&lt;P&gt;  Perform Get_Ename_and_Rate.&lt;/P&gt;&lt;P&gt;  Perform Build_Output.&lt;/P&gt;&lt;P&gt;  Perform Build_Alv.&lt;/P&gt;&lt;P&gt;  Perform Display_Output.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Get_Timesheet_30 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  loop at i_vbak.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        INPUT  = i_vbak-vbeln&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        OUTPUT = i_vbak-raufnr.&lt;/P&gt;&lt;P&gt;    modify i_vbak.&lt;/P&gt;&lt;P&gt;    clear i_vbak.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the active records for a particular employee, based on the&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;reference counter which does not indicates that its the active record&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;with and initial record.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Select WORKDATE PERNR RAUFNR RKOSTL AWART STATUS COUNTER REFCOUNTER&lt;/P&gt;&lt;P&gt;  CATSHOURS ZZDESCRIPTION ERSDA ERSTM ERNAM LAEDA LAETM AENAM&lt;/P&gt;&lt;P&gt;           Into Table I_CATSDB_30&lt;/P&gt;&lt;P&gt;           From CATSDB&lt;/P&gt;&lt;P&gt;           For all entries in I_VBAK&lt;/P&gt;&lt;P&gt;           Where WORKDATE IN S_TSDATE&lt;/P&gt;&lt;P&gt;          AND RAUFNR EQ I_VBAK-raufnr&lt;/P&gt;&lt;P&gt;          AND PERNR IN S_EMPNO&lt;/P&gt;&lt;P&gt;          AND RKOSTL IN S_COCENT&lt;/P&gt;&lt;P&gt;          AND AWART IN S_ACTYP&lt;/P&gt;&lt;P&gt;          AND STATUS = '30'&lt;/P&gt;&lt;P&gt;          AND REFCOUNTER IS NOT NULL&lt;/P&gt;&lt;P&gt;          AND WERKS = P_WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT I_CATSDB_30.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Get_Timesheet_60&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;      Form  Get_Timesheet&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Get_Timesheet .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Getting all records for the active records in I_CATSDB_30.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  If I_CATSDB_30[] IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    Select WORKDATE PERNR RAUFNR RKOSTL AWART&lt;/P&gt;&lt;P&gt;           STATUS COUNTER REFCOUNTER CATSHOURS ZZDESCRIPTION&lt;/P&gt;&lt;P&gt;           ERSDA ERSTM ERNAM LAEDA LAETM AENAM&lt;/P&gt;&lt;P&gt;             Into Table I_CATSDB&lt;/P&gt;&lt;P&gt;             From CATSDB&lt;/P&gt;&lt;P&gt;             FOR ALL ENTRIES IN I_CATSDB_30&lt;/P&gt;&lt;P&gt;             Where WORKDATE = I_CATSDB_30-WORKDATE&lt;/P&gt;&lt;P&gt;             AND PERNR = I_CATSDB_30-PERNR&lt;/P&gt;&lt;P&gt;             AND RAUFNR = I_CATSDB_30-RAUFNR&lt;/P&gt;&lt;P&gt;             AND RKOSTL = I_CATSDB_30-RKOSTL&lt;/P&gt;&lt;P&gt;             AND WERKS = P_WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    Sort I_CATSDB ASCENDING BY WORKDATE PERNR RAUFNR RKOSTL&lt;/P&gt;&lt;P&gt;                  DESCENDING ERSDA ERSTM.&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;ENDFORM.                    " Get_Timesheet&lt;/P&gt;&lt;P&gt;&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;      Form  TOP_OF_PAGE&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      IT_LIST_COMMENTARY = ITAB_HEADING[]&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      OTHERS             = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " TOP_OF_PAGE&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;      Form  Display_Output&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Display_Output .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;/P&gt;&lt;P&gt;     EXPORTING&lt;/P&gt;&lt;P&gt;       I_CALLBACK_PROGRAM = SYREPID&lt;/P&gt;&lt;P&gt;       IS_LAYOUT          = I_LAYOUT&lt;/P&gt;&lt;P&gt;       IT_FIELDCAT        = ITAB_FIELDCAT[]&lt;/P&gt;&lt;P&gt;      IT_SORT                = I_SORT[]&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     I_CALLBACK_TOP_OF_PAGE  = 'TOP_OF_PAGE'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       I_SAVE             = 'A'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     IT_EVENTS           = I_EVENTS[]&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     TABLES&lt;/P&gt;&lt;P&gt;       T_OUTTAB           = I_OUTPUT&lt;/P&gt;&lt;P&gt;     EXCEPTIONS&lt;/P&gt;&lt;P&gt;       PROGRAM_ERROR      = 1&lt;/P&gt;&lt;P&gt;       OTHERS             = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Display_Output&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;      Form  Get_Emp_Name&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Get_Ename_and_Rate .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the individual employee and projects so that&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;we can get the names of the employees and the rates for the projects&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;For every IF &amp;amp; IN project we get the respective intercompany project&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;as well.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : LEN TYPE i.&lt;/P&gt;&lt;P&gt;  Loop at I_CATSDB.&lt;/P&gt;&lt;P&gt;    At New PERNR.&lt;/P&gt;&lt;P&gt;      Move I_CATSDB-PERNR to I_PERNR-PERNR.&lt;/P&gt;&lt;P&gt;      Append I_PERNR.&lt;/P&gt;&lt;P&gt;      Clear I_PERNR.&lt;/P&gt;&lt;P&gt;    EndAt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    At New Raufnr.&lt;/P&gt;&lt;P&gt;      LEN = STRLEN( I_CATSDB-RAUFNR ).&lt;/P&gt;&lt;P&gt;      if len eq 8.&lt;/P&gt;&lt;P&gt;        Move I_CATSDB-RAUFNR(6) to I_RAUFNR-RAUFNR.&lt;/P&gt;&lt;P&gt;        Append I_RAUFNR.&lt;/P&gt;&lt;P&gt;        Clear I_Raufnr.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      Move I_CATSDB-RAUFNR to I_RAUFNR-RAUFNR.&lt;/P&gt;&lt;P&gt;      Append I_RAUFNR.&lt;/P&gt;&lt;P&gt;      Clear I_Raufnr.&lt;/P&gt;&lt;P&gt;    EndAt.&lt;/P&gt;&lt;P&gt;    Clear I_Raufnr.&lt;/P&gt;&lt;P&gt;  EndLoop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Sort : I_PERNR, I_RAUFNR.&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM I_PERNR.&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM I_RAUFNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Select PERNR ENAME&lt;/P&gt;&lt;P&gt;         into table I_EMPNAME&lt;/P&gt;&lt;P&gt;         From PA0001&lt;/P&gt;&lt;P&gt;         For all entries in I_PERNR&lt;/P&gt;&lt;P&gt;         Where PERNR = I_PERNR-PERNR&lt;/P&gt;&lt;P&gt;         And BEGDA &amp;lt;= Sy-Datum&lt;/P&gt;&lt;P&gt;         And ENDDA &amp;gt;= Sy-Datum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT AWART ATEXT FROM T554T&lt;/P&gt;&lt;P&gt;  INTO TABLE I_ACTIVITY&lt;/P&gt;&lt;P&gt;  WHERE SPRSL = 'EN'&lt;/P&gt;&lt;P&gt;  AND MOABW = '40'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT KUNNR MATNR KNUMH FROM A901&lt;/P&gt;&lt;P&gt;  INTO CORRESPONDING FIELDS OF TABLE I_A901&lt;/P&gt;&lt;P&gt;  FOR ALL ENTRIES IN I_RAUFNR&lt;/P&gt;&lt;P&gt;  WHERE KUNNR = I_RAUFNR-RAUFNR&lt;/P&gt;&lt;P&gt;  AND DATBI GE S_TSDATE-HIGH&lt;/P&gt;&lt;P&gt;  AND DATAB LE S_TSDATE-LOW.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT KNUMH KBETR FROM KONP INTO TABLE I_KONP&lt;/P&gt;&lt;P&gt;  FOR ALL ENTRIES IN I_A901&lt;/P&gt;&lt;P&gt;  WHERE KNUMH = I_A901-KNUMH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT I_A901.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        INPUT  = i_a901-matnr&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        OUTPUT = i_a901-pernr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        INPUT  = i_a901-kunnr&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        OUTPUT = i_a901-raufnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    modify i_a901.clear i_a901.&lt;/P&gt;&lt;P&gt;&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;sort i_a901 by raufnr pernr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Get_Emp_Name&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;      Form  Build_Output&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Build_Output .&lt;/P&gt;&lt;P&gt;  I_CATSDB_TMP[] = I_CATSDB[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Loop at I_CATSDB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    If I_CATSDB-STATUS = '30'.&lt;/P&gt;&lt;P&gt;      Read table I_VBAK with key raufnr = i_catsdb-raufnr.&lt;/P&gt;&lt;P&gt;      if sy-subrc eq 0.&lt;/P&gt;&lt;P&gt;        Read table I_Region with key vkgrp = i_vbak-vkgrp.&lt;/P&gt;&lt;P&gt;        if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;          I_output-Bezei = I_Region-Bezei.&lt;/P&gt;&lt;P&gt;        endif.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      i_output-projcc = i_catsdb-raufnr.&lt;/P&gt;&lt;P&gt;      Read table I_ACTIVITY with key awart = I_CATSDB-Awart.&lt;/P&gt;&lt;P&gt;      if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;        i_output-atext = i_activity-atext.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      i_output-workdate = i_catsdb-workdate.&lt;/P&gt;&lt;P&gt;      i_output-pernr = i_catsdb-pernr.&lt;/P&gt;&lt;P&gt;      Read table I_EMPNAME with key pernr = I_CATSDB-pernr.&lt;/P&gt;&lt;P&gt;      if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;        i_output-pernr = i_empname-pernr.&lt;/P&gt;&lt;P&gt;        i_output-ename = i_empname-ename.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      data : tmp_refc like catsdb-refcounter.&lt;/P&gt;&lt;P&gt;      tmp_refc = i_catsdb-refcounter.&lt;/P&gt;&lt;P&gt;      while not tmp_refc is initial .&lt;/P&gt;&lt;P&gt;        read table i_catsdb_tmp with key counter = tmp_refc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;          tmp_refc = i_catsdb_tmp-refcounter.&lt;/P&gt;&lt;P&gt;        endif.&lt;/P&gt;&lt;P&gt;      endwhile.&lt;/P&gt;&lt;P&gt;      i_output-inithrs = i_catsdb_tmp-catshours.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     read table i_catsdb_tmp with key pernr = i_catsdb-pernr&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                      awart = i_catsdb-awart&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                      workdate = i_catsdb-workdate&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                      raufnr = i_catsdb-raufnr&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                      rkostl = i_catsdb-rkostl&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                      refcounter = ''.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     if sy-subrc = 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       i_output-inithrs = i_catsdb_tmp-catshours.&lt;/P&gt;&lt;/LI&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;      i_output-finhrs = i_catsdb-catshours.&lt;/P&gt;&lt;P&gt;      i_output-delta = i_output-finhrs - i_output-inithrs.&lt;/P&gt;&lt;P&gt;      Read table i_vbak with key raufnr = i_catsdb-raufnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If the sales org is 0030, then we take the rate from the respective&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;intercompany project.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      If sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        if i_vbak-vkorg = '0030'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          Read table i_a901 with key pernr = i_catsdb-pernr&lt;/P&gt;&lt;P&gt;                                     raufnr = i_catsdb-raufnr(6).&lt;/P&gt;&lt;P&gt;          if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;            Read table i_konp with key knumh = i_a901-knumh.&lt;/P&gt;&lt;P&gt;            if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;              i_output-rate = i_konp-kbetr.&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;          else.&lt;/P&gt;&lt;P&gt;            Read table i_a901 with key pernr = i_catsdb-pernr&lt;/P&gt;&lt;P&gt;                              raufnr = i_catsdb-raufnr.&lt;/P&gt;&lt;P&gt;            if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;              Read table i_konp with key knumh = i_a901-knumh.&lt;/P&gt;&lt;P&gt;              if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;                i_output-rate = i_konp-kbetr.&lt;/P&gt;&lt;P&gt;              endif.&lt;/P&gt;&lt;P&gt;            endif.&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;          i_output-amount = i_output-rate * i_output-delta.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          append i_output.&lt;/P&gt;&lt;P&gt;          clear : i_output, i_vbap, i_catsdb_tmp, i_empname,&lt;/P&gt;&lt;P&gt;                  i_activity, i_vbak, i_catsdb, i_a901,i_konp.&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;      sort i_output by bezei atext projcc  workdate pernr.&lt;/P&gt;&lt;P&gt;    ENDFORM.                    " Build_Output&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;      Form  Fill_FieldCat&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Fill_FieldCat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'BEZEI'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 1.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 20.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-JUST = 'C'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_M = 'REGION'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'ATEXT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 2.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 25.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_M = 'ACTIVITY TYPE'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'PROJCC'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 3.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 10.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_M = 'PROJECT'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'WORKDATE'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 4.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 16.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_L = 'TIME SHEET DATE'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'ENAME'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 5.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 25.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_L = 'EMPLOYEE'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'INITHRS'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 6.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 12.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_L = 'INITIAL HRS'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'FINHRS'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 7.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 12.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_M = 'FINAL HRS'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'DELTA'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 8.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 10.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_M = 'VARIANCE'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'RATE'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 9.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 10.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_M = 'RATE'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-TABNAME = 'I_OUTPUT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-FIELDNAME = 'AMOUNT'.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-COL_POS = 10.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-OUTPUTLEN = 10.&lt;/P&gt;&lt;P&gt;  ITAB_FIELDCAT-SELTEXT_M = 'Amount'.&lt;/P&gt;&lt;P&gt;  APPEND ITAB_FIELDCAT.CLEAR ITAB_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Fill_FieldCat&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;      Form  Fill_Layout&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Fill_Layout .&lt;/P&gt;&lt;P&gt;  I_LAYOUT-ZEBRA = 'X'.&lt;/P&gt;&lt;P&gt;  I_LAYOUT-WINDOW_TITLEBAR = TEXT-001.&lt;/P&gt;&lt;P&gt;  I_LAYOUT-TOTALS_TEXT = 'Grand Total'.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Fill_Layout&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;      Form  Get_Region_Proj&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Get_Region_Proj .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the Sales Org &amp;amp; Region for a project.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Select VBELN VKORG VKGRP KNUMV from VBAK&lt;/P&gt;&lt;P&gt;  into corresponding fields of table I_VBAK&lt;/P&gt;&lt;P&gt;  where vkgrp in S_REGIO and&lt;/P&gt;&lt;P&gt;        vbeln in S_PCODE and&lt;/P&gt;&lt;P&gt;        vbtyp eq 'G'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the Region &amp;amp; its resp. Description.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Select vkgrp bezei from tvgrt&lt;/P&gt;&lt;P&gt;  into table i_region&lt;/P&gt;&lt;P&gt;  where spras = 'EN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Get_Region_Proj&lt;/P&gt;&lt;P&gt;&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;      Form  Build_Sort&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Build_Sort .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  I_SORT-SPOS = 1.&lt;/P&gt;&lt;P&gt;  I_SORT-TABNAME = 'I_output'.&lt;/P&gt;&lt;P&gt;  I_SORT-FIELDNAME = 'BEZEI'.&lt;/P&gt;&lt;P&gt;  I_SORT-UP = 'X'.&lt;/P&gt;&lt;P&gt;  I_SORT-SUBTOT = 'X'.&lt;/P&gt;&lt;P&gt;  I_SORT-GROUP = 'UL'.&lt;/P&gt;&lt;P&gt;  APPEND I_SORT. CLEAR I_SORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  I_SORT-SPOS = 2.&lt;/P&gt;&lt;P&gt;  I_SORT-TABNAME = 'I_output'.&lt;/P&gt;&lt;P&gt;  I_SORT-FIELDNAME = 'ATEXT'.&lt;/P&gt;&lt;P&gt;  I_SORT-UP = 'X'.&lt;/P&gt;&lt;P&gt;  I_SORT-SUBTOT = 'X'.&lt;/P&gt;&lt;P&gt;  I_SORT-GROUP = 'UL'.&lt;/P&gt;&lt;P&gt;  APPEND I_SORT. CLEAR I_SORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  I_SORT-SPOS = 3.&lt;/P&gt;&lt;P&gt;  I_SORT-TABNAME = 'I_output'.&lt;/P&gt;&lt;P&gt;  I_SORT-FIELDNAME = 'PROJCC'.&lt;/P&gt;&lt;P&gt;  I_SORT-UP = 'X'.&lt;/P&gt;&lt;P&gt;  I_SORT-SUBTOT = 'X'.&lt;/P&gt;&lt;P&gt;  I_SORT-GROUP = 'UL'.&lt;/P&gt;&lt;P&gt;  APPEND I_SORT. CLEAR I_SORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Build_Sort&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;      Form  Build_Alv&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Build_Alv .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Perform Fill_FieldCat.&lt;/P&gt;&lt;P&gt;  Perform Build_Sort.&lt;/P&gt;&lt;P&gt;  Perform Fill_Layout.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Build_Alv&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Sep 2006 02:46:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601930#M270256</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-09-27T02:46:05Z</dc:date>
    </item>
    <item>
      <title>Re: Read statement</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601931#M270257</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I tried sorting and using binary search, it isnt working.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Sep 2006 02:49:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601931#M270257</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-09-27T02:49:05Z</dc:date>
    </item>
    <item>
      <title>Re: Read statement</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601932#M270258</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I notice that the i_a901 pernr is populated via a conversion exit fm, maybe the formats of the two pernrs are different and this causes the read table to fail?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Sep 2006 03:03:01 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601932#M270258</guid>
      <dc:creator>former_member186741</dc:creator>
      <dc:date>2006-09-27T03:03:01Z</dc:date>
    </item>
    <item>
      <title>Re: Read statement</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601933#M270259</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The types of both the pernr's and raufnrs are the same.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Sep 2006 03:11:11 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601933#M270259</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-09-27T03:11:11Z</dc:date>
    </item>
    <item>
      <title>Re: Read statement</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601934#M270260</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;try using the statement like this&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Read table i_a901 with key raufnr = i_catsdb-raufnr&lt;/P&gt;&lt;P&gt;                           pernr = i_catsdb-pernr&lt;/P&gt;&lt;P&gt;                           binary search.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Gopi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Sep 2006 03:13:19 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601934#M270260</guid>
      <dc:creator>gopi_narendra</dc:creator>
      <dc:date>2006-09-27T03:13:19Z</dc:date>
    </item>
    <item>
      <title>Re: Read statement</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601935#M270261</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;when I say formats I mean you have reformatted the i_a901 pernr via the fm but maybe the other one is still in the other format??&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Sep 2006 03:42:32 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601935#M270261</guid>
      <dc:creator>former_member186741</dc:creator>
      <dc:date>2006-09-27T03:42:32Z</dc:date>
    </item>
    <item>
      <title>Re: Read statement</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601936#M270262</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Thiru,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could u check the values populated in the interenal tables  i_a901 and i_catsdb for pernr and raufnr while debugging this statement .. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And one more thing .. Check ur form "Get_Ename_and_Rate"&lt;/P&gt;&lt;P&gt;the place where u have looped at "i_a901" &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;INPUT = i_a901-kunnr&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;OUTPUT = i_a901-raufnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;U have tried to convert customer number to a project ... (just check is this the problem? as i guess CATSDB-RAUFNR stores the projects and not the customer numbers)&lt;/P&gt;&lt;P&gt;Cheers &lt;SPAN __jive_emoticon_name="wink"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;Kripa Rangachari .......&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Sep 2006 03:44:37 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601936#M270262</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-09-27T03:44:37Z</dc:date>
    </item>
    <item>
      <title>Re: Read statement</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601937#M270263</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi kripa,&lt;/P&gt;&lt;P&gt;Kunnr in i_a901 stores the project codes, and i_catsdb-raufnr the project codes as well, therefore i have used exit alpha to convert the types and make it same so that it can be read from the table. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;Thiru&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Sep 2006 14:12:23 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601937#M270263</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-09-27T14:12:23Z</dc:date>
    </item>
    <item>
      <title>Re: Read statement</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601938#M270264</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Neil,&lt;/P&gt;&lt;P&gt;Both pernrs are in the same format. I checked that out.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Sep 2006 14:14:07 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/read-statement/m-p/1601938#M270264</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-09-27T14:14:07Z</dc:date>
    </item>
  </channel>
</rss>

