<?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 problem when exporting to excell in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/problem-when-exporting-to-excell/m-p/2342105#M516363</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;i am having a problem when i want to export my ALV report to excell. its exporting but its representing the data in haphazard manner. the items are not falling in the same column with column titles, there are columns that are being left blank in between columns that contain data, the column titles themselves are not appearing in the same row. &lt;/P&gt;&lt;P&gt;below is the code for the report code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REPORT zhap_wsp_tobetrained&lt;/P&gt;&lt;P&gt;   NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;   LINE-SIZE 255.&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;SYSTEM : SAP R/3 4.6C                                                *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;AUTHOR : Adrian Thorne                                               *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATE   : 07/10/2002                                                  *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TITLE  : Employees to be Trained During Period                       *&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;PURPOSE: Work Place Skills Plan Report to list the                   *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         number of employees in each Occupational                    *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         category to be trained during period. This                  *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         will normally be the levy grant year, which                 *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         starts in April.                                            *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;METHOD : Accessed online                                             *&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;AMENDMENTS:                                                          *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;VER  DATE        AUTHOR           DESCRIPTION OF CHANGE              *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;---  ----        ------           ----------------------             *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;V00  07/10/2002  A. Thorne        Original version                   *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;V01  08/10/2002  J. Chilton       Remove Course Name                 *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;V02  10/09/2003  Abe Rakgomo                                         *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Decription:1.The report should display the Org Unit for all employees*&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            A selection checkbox needs to be added next to the field *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            "Org Unit" which displays a drop-down table of all the 11*&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            Org Units and a selection icon included.                 *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           2. Include Age categories (0 - 19)(20 - 29) (30 - 39)     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                     (40 - 49))(50+)                 *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*RD1K920519                                                            *&lt;/P&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;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Data declaration&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  INCLUDE zhai_wsp_tobetrained_top.&lt;/P&gt;&lt;P&gt;  INCLUDE zhai_equity.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  data: va_short like hrp1000-short,&lt;/P&gt;&lt;P&gt;        va_offset(2),&lt;/P&gt;&lt;P&gt;        va_flag.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  INITIALIZATION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM init_params.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Adjust default selection dates to be April 1 - March 31 one year henc&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Adjust default selection dates to be July 1 - June 30 one year henc&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;  pnpbegda(4) = sy-datum(4) + 1.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    pnpbegda(4) = sy-datum(4).&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  pnpbegda+4(4) = '0401'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    pnpbegda+4(4) = '0701'.&lt;/P&gt;&lt;P&gt;    pnpendda = pnpbegda.&lt;/P&gt;&lt;P&gt;    pnpendda(4) = pnpbegda(4) + 1.&lt;/P&gt;&lt;P&gt;    pnpendda = pnpendda - 1.&lt;/P&gt;&lt;P&gt;&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Extract Data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  START-OF-SELECTION.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   if so_dept-low is initial.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     perform fill_dept.&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;    CLEAR iline. REFRESH iline.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   CLEAR oline. REFRESH oline.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   CLEAR tab.   REFRESH tab.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  GET pernr.&lt;/P&gt;&lt;P&gt;    fielda = 'ILINE-'.&lt;/P&gt;&lt;P&gt;    CLEAR iline.&lt;/P&gt;&lt;P&gt;    CLEAR p0000.&lt;/P&gt;&lt;P&gt;    rp-provide-from-last p0000 space pn-begda pn-endda.&lt;/P&gt;&lt;P&gt;    CLEAR p0001.&lt;/P&gt;&lt;P&gt;    rp-provide-from-last p0001 space pn-begda pn-endda.&lt;/P&gt;&lt;P&gt;    CLEAR p0002.&lt;/P&gt;&lt;P&gt;    rp-provide-from-last p0002 space pn-begda pn-endda.&lt;/P&gt;&lt;P&gt;    CLEAR p0004.&lt;/P&gt;&lt;P&gt;    rp-provide-from-last p0004 space pn-begda pn-endda.&lt;/P&gt;&lt;P&gt;    CLEAR p0007.&lt;/P&gt;&lt;P&gt;    rp-provide-from-last p0007 space pn-begda pn-endda.&lt;/P&gt;&lt;P&gt;    CLEAR p0077.&lt;/P&gt;&lt;P&gt;    rp-provide-from-last p0077 space pn-begda pn-endda.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*get_org_seta.&lt;/P&gt;&lt;P&gt; Perform get_org_seta.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Replaced by on 10/09/2003 Abe Rakgomo&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get Occupational Category&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    select single stltx from t513s&lt;/P&gt;&lt;P&gt;                     into iline-occcat&lt;/P&gt;&lt;P&gt;       where sprsl eq sy-langu&lt;/P&gt;&lt;P&gt;       and   stell eq p0001-stell&lt;/P&gt;&lt;P&gt;       and   endda ge p0001-begda&lt;/P&gt;&lt;P&gt;       and   begda le p0001-endda.&lt;/P&gt;&lt;P&gt;    if sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      iline-occcat = 'Unknown'.&lt;/P&gt;&lt;P&gt;    endif.&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;Get Equity Inf&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform fill_equity_info .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Determine Age&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform determine_age_categories.&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;Get Courses To Be Attended&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    clear va_flag.&lt;/P&gt;&lt;P&gt;    perform get_course.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get development plan history&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform get_dplan_history.&lt;/P&gt;&lt;P&gt;    if va_flag = 'Y'.&lt;/P&gt;&lt;P&gt;      perform load_intable.&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;*If No Courses where planned&lt;/P&gt;&lt;P&gt;    if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      CLEAR iline.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      COLLECT iline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Check if any to be printed -------------------------------------------&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DESCRIBE TABLE iline LINES var-lines." Get number of lines in table&lt;/P&gt;&lt;P&gt;    IF var-lines = 0.                  " Show message if no c/elements&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'POPUP_NO_LIST'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM build_header       USING header_alv[].&lt;/P&gt;&lt;P&gt;    PERFORM setup-fieldcatalog USING gt_fieldcat[].&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  PERFORM eventtab_build     USING gt_events[].&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM sort_build         USING gt_sort[].&lt;/P&gt;&lt;P&gt;    PERFORM layout_build       USING gs_layout.&lt;/P&gt;&lt;P&gt;    PERFORM print_build        USING gs_print.&lt;/P&gt;&lt;P&gt;    PERFORM produce-report.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&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;      FORM setup-fieldcatalog                                       *&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;      ........                                                      *&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;  _FIELDCAT                                                     *&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 setup-fieldcatalog USING &lt;U&gt;fieldcat TYPE slis&lt;/U&gt;t_fieldcat_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: ls_fieldcat TYPE slis_fieldcat_alv,&lt;/P&gt;&lt;P&gt;          w_last_col_pos LIKE ls_fieldcat-col_pos.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'OCCCAT'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Occupational Category'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Occupational Category'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Occupational Category'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    APPEND ls_fieldcat TO _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     clear ls_fieldcat.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-fieldname = 'SETA_AREA'.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-seltext_s = 'Seta Area'.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-seltext_m = 'Seta Area'.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-seltext_l = 'Seta Area'.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;      append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      clear ls_fieldcat.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-fieldname = 'SETA_SUBAREA'.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-seltext_s = 'Seta SubArea'.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-seltext_m = 'Seta SubArea'.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-seltext_l = 'Seta SubArea'.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;      append ls_fieldcat to _fieldcat .&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;   APPEND ls_fieldcat TO _fieldcat .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              i_internal_tabname = 'ILINE'&lt;/P&gt;&lt;P&gt;              i_structure_name   = 'ZEQUITY'&lt;/P&gt;&lt;P&gt;         CHANGING&lt;/P&gt;&lt;P&gt;              ct_fieldcat        = _fieldcat.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Ensure columns are added to the right, find maximum column position&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    w_last_col_pos = 0.&lt;/P&gt;&lt;P&gt;    loop at &lt;U&gt;fieldcat into ls&lt;/U&gt;fieldcat.&lt;/P&gt;&lt;P&gt;      if ls_fieldcat-col_pos &amp;gt; w_last_col_pos.&lt;/P&gt;&lt;P&gt;        w_last_col_pos = ls_fieldcat-col_pos.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;    endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'M_AGE00_20'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Male Age 0 - 20'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Male Age 0 - 20'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Male Age 0 - 20'.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'F_AGE00_20'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Female Age 0 - 20'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Female Age 0 - 20'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Female Age 0 - 20'.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'M_AGE21_30'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Male Age 21 - 30'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Male Age 21 - 30'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Male Age 21 - 30'.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'F_AGE21_30'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Female Age 21 - 30'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Female Age 21 - 30'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Female Age 21 - 30'.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'M_AGE31_40'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Male Age 31 - 40'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Male Age 31 - 40'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Male Age 31 - 40'.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'F_AGE31_40'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Female Age 31 - 40'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Female Age 31 - 40'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Female Age 31 - 40'.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'M_AGE41_50'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Male Age 41 - 50'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Male Age 41 - 50'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Male Age 41 - 50'.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'F_AGE41_50'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Female Age 41 - 50'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Female Age 41 - 50'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Female Age 41 - 50'.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'M_AGE51_99'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Male Age 51 +   '.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Male Age 51 +   '.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Male Age 51 +   '.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'F_AGE51_99'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Female Age 51 +   '.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Female Age 51 +   '.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Female Age 51 +   '.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT &lt;U&gt;fieldcat INTO ls&lt;/U&gt;fieldcat.&lt;/P&gt;&lt;P&gt;      CASE ls_fieldcat-fieldname.&lt;/P&gt;&lt;P&gt;        WHEN 'DIRECTORATE'.&lt;/P&gt;&lt;P&gt;          ls_fieldcat-outputlen    = '40'.&lt;/P&gt;&lt;P&gt;        WHEN 'OCCCAT' OR 'STEXT'.&lt;/P&gt;&lt;P&gt;          ls_fieldcat-outputlen    = '35'.&lt;/P&gt;&lt;P&gt;        WHEN OTHERS.&lt;/P&gt;&lt;P&gt;          ls_fieldcat-outputlen    = '20'.&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;      MODIFY &lt;U&gt;fieldcat FROM ls&lt;/U&gt;fieldcat.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " SETUP-FIELDCATALOG&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;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;      FORM sort_build                                               *&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;      ........                                                      *&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;  _SORT                                                         *&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 sort_build USING   &lt;U&gt;sort TYPE slis&lt;/U&gt;t_sortinfo_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: ls_sort TYPE slis_sortinfo_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_sort-fieldname = 'OCCCAT'.&lt;/P&gt;&lt;P&gt;    ls_sort-up        = true.&lt;/P&gt;&lt;P&gt;    APPEND ls_sort TO _sort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   ls_sort-fieldname = 'SETA_AREA'.&lt;/P&gt;&lt;P&gt;    ls_sort-up        = true.&lt;/P&gt;&lt;P&gt;    APPEND ls_sort TO _sort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " SORT_BUILD&lt;/P&gt;&lt;P&gt;&lt;/P&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;      FORM layout_build                                             *&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;      ........                                                      *&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;  _LAYOUT                                                       *&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 layout_build USING    &lt;U&gt;layout TYPE slis&lt;/U&gt;layout_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    &lt;U&gt;layout-no&lt;/U&gt;input          = true.&lt;/P&gt;&lt;P&gt;    &lt;U&gt;layout-detail&lt;/U&gt;titlebar = 'Detail Title'(002).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IF p_dept IS INITIAL.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      &lt;U&gt;layout-window&lt;/U&gt;titlebar =&lt;/P&gt;&lt;P&gt;      'Number of Employees to be Trained During Period'.&lt;/P&gt;&lt;P&gt;&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;  ENDFORM.                    " LAYOUT_BUILD&lt;/P&gt;&lt;P&gt;&lt;/P&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;      FORM print_build                                              *&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;      ........                                                      *&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;  _PRINT                                                        *&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 print_build USING   &lt;U&gt;print TYPE slis&lt;/U&gt;print_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    &lt;U&gt;print-no&lt;/U&gt;print_listinfos = true.&lt;/P&gt;&lt;P&gt;    &lt;U&gt;print-no&lt;/U&gt;coverpage       = true.&lt;/P&gt;&lt;P&gt;    &lt;U&gt;print-no&lt;/U&gt;print_selinfos  = true.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " PRINT_BUILD&lt;/P&gt;&lt;P&gt;&lt;/P&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;      FORM build_header                                             *&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;      ........                                                      *&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;  &lt;U&gt;HEADER&lt;/U&gt;ALV                                                   *&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_header USING &lt;U&gt;header&lt;/U&gt;alv TYPE slis_t_listheader.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Main Heading&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IF p_dept IS INITIAL.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      header_alv_wa-info =&lt;/P&gt;&lt;P&gt;        'Number of Employees to be Trained During Period'.&lt;/P&gt;&lt;P&gt;      header_alv_wa-typ  = 'H'.&lt;/P&gt;&lt;P&gt;      APPEND header_alv_wa TO &lt;U&gt;header&lt;/U&gt;alv.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   ELSE.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     header_alv_wa-info =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   'Number of Employees Trained During Period Per Department'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     header_alv_wa-typ  = 'H'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     APPEND header_alv_wa TO &lt;U&gt;header&lt;/U&gt;alv.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Secondary Heading&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    header_alv_wa-typ  = 'S'.&lt;/P&gt;&lt;P&gt;    header_alv_wa-key  = 'Validity Period'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Set up appropriate title (dd Month ccyy to dd Month ccyy)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CALL FUNCTION 'Z_FORMAT_DATE'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              date     = pn-begda&lt;/P&gt;&lt;P&gt;         CHANGING&lt;/P&gt;&lt;P&gt;              formdate = w_sbegda.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'Z_FORMAT_DATE'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              date     = pn-endda&lt;/P&gt;&lt;P&gt;         CHANGING&lt;/P&gt;&lt;P&gt;              formdate = w_sendda.&lt;/P&gt;&lt;P&gt;    IF pn-begda = pn-endda.&lt;/P&gt;&lt;P&gt;      w_title = w_sbegda.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;     CONCATENATE w_sbegda 'to' w_sendda INTO w_title SEPARATED BY space.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    CONCATENATE text-t01 w_title INTO w_title SEPARATED BY space.&lt;/P&gt;&lt;P&gt;    CONDENSE w_title.&lt;/P&gt;&lt;P&gt;    header_alv_wa-info = w_title.&lt;/P&gt;&lt;P&gt;    APPEND header_alv_wa TO &lt;U&gt;header&lt;/U&gt;alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT itab.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;New Recruits&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CLEAR header_alv_wa-info.&lt;/P&gt;&lt;P&gt;      header_alv_wa-info = itab-recruit.&lt;/P&gt;&lt;P&gt;      CONDENSE header_alv_wa-info.&lt;/P&gt;&lt;P&gt;      header_alv_wa-typ  = 'S'.&lt;/P&gt;&lt;P&gt;      header_alv_wa-key  = 'New Recruits:'.&lt;/P&gt;&lt;P&gt;      APPEND header_alv_wa TO &lt;U&gt;header&lt;/U&gt;alv.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Full Time&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CLEAR header_alv_wa-info.&lt;/P&gt;&lt;P&gt;      header_alv_wa-info = itab-full.&lt;/P&gt;&lt;P&gt;      CONDENSE header_alv_wa-info.&lt;/P&gt;&lt;P&gt;      header_alv_wa-typ  = 'S'.&lt;/P&gt;&lt;P&gt;      header_alv_wa-key  = 'Full Time:'.&lt;/P&gt;&lt;P&gt;      APPEND header_alv_wa TO &lt;U&gt;header&lt;/U&gt;alv.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;part time&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CLEAR header_alv_wa-info.&lt;/P&gt;&lt;P&gt;      header_alv_wa-info = itab-part.&lt;/P&gt;&lt;P&gt;      CONDENSE header_alv_wa-info.&lt;/P&gt;&lt;P&gt;      header_alv_wa-typ  = 'S'.&lt;/P&gt;&lt;P&gt;      header_alv_wa-key  = 'Part Time:'.&lt;/P&gt;&lt;P&gt;      APPEND header_alv_wa TO &lt;U&gt;header&lt;/U&gt;alv.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " build_header&lt;/P&gt;&lt;P&gt;&lt;/P&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;      FORM TOP_OF_PAGE                                              *&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;    CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              it_list_commentary = header_alv.&lt;/P&gt;&lt;P&gt;  ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&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;      FORM produce-report                                           *&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;      ........                                                      *&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 produce-report.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: _repid LIKE sy-repid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    _repid = sy-repid.&lt;/P&gt;&lt;P&gt;    _save = 'A'.&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     = _repid&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             i_structure_name       = 'OLINE'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;              i_callback_top_of_page = 'TOP_OF_PAGE'&lt;/P&gt;&lt;P&gt;              is_layout              = gs_layout&lt;/P&gt;&lt;P&gt;              it_fieldcat            = gt_fieldcat[]&lt;/P&gt;&lt;P&gt;              i_save                 = _save&lt;/P&gt;&lt;P&gt;              is_variant             = _variant&lt;/P&gt;&lt;P&gt;              it_sort                = gt_sort[]&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             it_events              = gt_events[]&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;         TABLES&lt;/P&gt;&lt;P&gt;              t_outtab               = iline[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " PRODUCE-REPORT&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  init_params&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 init_params.&lt;/P&gt;&lt;P&gt;    p_part-low    = '1'.&lt;/P&gt;&lt;P&gt;    p_part-high   = '34'.&lt;/P&gt;&lt;P&gt;    p_part-sign   = 'I'.&lt;/P&gt;&lt;P&gt;    p_part-option = 'BT'.&lt;/P&gt;&lt;P&gt;    APPEND p_part.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    p_full-low    = '35'.&lt;/P&gt;&lt;P&gt;    p_full-high   = '999'.&lt;/P&gt;&lt;P&gt;    p_full-sign   = 'I'.&lt;/P&gt;&lt;P&gt;    p_full-option = 'BT'.&lt;/P&gt;&lt;P&gt;    APPEND p_full.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    p_hire-low    = 'Z1'.&lt;/P&gt;&lt;P&gt;    p_hire-high   = 'Z2'.&lt;/P&gt;&lt;P&gt;    p_hire-sign   = 'I'.&lt;/P&gt;&lt;P&gt;    p_hire-option = 'BT'.&lt;/P&gt;&lt;P&gt;    APPEND p_hire.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    p_hire-low    = 'Z7'.&lt;/P&gt;&lt;P&gt;    p_hire-high   = 'Z8'.&lt;/P&gt;&lt;P&gt;    p_hire-sign   = 'I'.&lt;/P&gt;&lt;P&gt;    p_hire-option = 'BT'.&lt;/P&gt;&lt;P&gt;    APPEND p_hire.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " init_params&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  load_intable&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 load_intable.&lt;/P&gt;&lt;P&gt;    CLEAR zequity.&lt;/P&gt;&lt;P&gt;    MOVE-CORRESPONDING zequity TO iline.&lt;/P&gt;&lt;P&gt;    PERFORM fill_equity_info .&lt;/P&gt;&lt;P&gt;    perform determine_age_categories.&lt;/P&gt;&lt;P&gt;    PERFORM fill_info.&lt;/P&gt;&lt;P&gt;    COLLECT iline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " load_intable&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_info&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_info.&lt;/P&gt;&lt;P&gt;    CLEAR itab.&lt;/P&gt;&lt;P&gt;    IF p0007-wostd IN p_full.&lt;/P&gt;&lt;P&gt;      itab-full = 1.&lt;/P&gt;&lt;P&gt;    ELSEIF p0007-wostd IN p_part.&lt;/P&gt;&lt;P&gt;      itab-part = 1.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    LOOP AT p0000 WHERE begda LE pn-endda&lt;/P&gt;&lt;P&gt;                    AND begda GE pn-begda&lt;/P&gt;&lt;P&gt;                    AND massn IN p_hire.&lt;/P&gt;&lt;P&gt;      itab-recruit = 1.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    COLLECT itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " fill_info&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  f4_shlp_pernr&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;P_0035   text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_0036   text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_0037   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 f4_shlp_pernr USING   p_retfield&lt;/P&gt;&lt;P&gt;                             p_dynprofield&lt;/P&gt;&lt;P&gt;                             p_title.         "p_valuetab.&lt;/P&gt;&lt;P&gt;    clear return.&lt;/P&gt;&lt;P&gt;    refresh return.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    call function 'F4IF_INT_TABLE_VALUE_REQUEST'&lt;/P&gt;&lt;P&gt;         exporting&lt;/P&gt;&lt;P&gt;              retfield        = p_retfield&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          dynpprog        = 'ZFIR0101_INSTALLATION_FACTS'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;              dynpprog        = 'X'&lt;/P&gt;&lt;P&gt;              dynpnr          = '1000'&lt;/P&gt;&lt;P&gt;              dynprofield     = p_dynprofield&lt;/P&gt;&lt;P&gt;              window_title    = p_title&lt;/P&gt;&lt;P&gt;              value_org       = 'S'&lt;/P&gt;&lt;P&gt;         tables&lt;/P&gt;&lt;P&gt;              value_tab       = it_helptab&lt;/P&gt;&lt;P&gt;              return_tab      = return&lt;/P&gt;&lt;P&gt;         exceptions&lt;/P&gt;&lt;P&gt;              parameter_error = 1&lt;/P&gt;&lt;P&gt;              no_values_found = 2&lt;/P&gt;&lt;P&gt;              others          = 3.&lt;/P&gt;&lt;P&gt;    if sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  message id sy-msgid type sy-msgty number sy-msgno&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endform.                    " f4_shlp_pernr&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_dept&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_dept.&lt;/P&gt;&lt;P&gt;    clear: it_helptab.&lt;/P&gt;&lt;P&gt;    refresh: it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '01'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Governance and Integration'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '07'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Governance and Integration'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '04'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Community Services'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '09'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Corporate Systems &amp;amp; Services'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '02'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Development &amp;amp; Infrastructure'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '11'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Finance Services'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '06'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Finance Services'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '05'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Internal Audit'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '10'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Governance and Integration'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '08'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Governance and Integration'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '03'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Development &amp;amp; Infrastructure'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    sort it_helptab by short.&lt;/P&gt;&lt;P&gt;  endform.                    " fill_dept&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  determine_age_categories&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 determine_age_categories.&lt;/P&gt;&lt;P&gt;    call function 'RP_01C_AGE_YEARS'&lt;/P&gt;&lt;P&gt;               exporting&lt;/P&gt;&lt;P&gt;                    i37_pernr = pernr-pernr&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            i37_keydt = pn-endda&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                    i37_keydt = sy-datum&lt;/P&gt;&lt;P&gt;                    i37_gbdat = p0002-gbdat&lt;/P&gt;&lt;P&gt;               importing&lt;/P&gt;&lt;P&gt;                    e37_agejj = agejj.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    if     agejj between  0 and 20.&lt;/P&gt;&lt;P&gt;      if p0002-gesch = '2'.&lt;/P&gt;&lt;P&gt;        iline-F_age00_20 = '1'.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;        iline-M_age00_20 = '1'.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;    elseif agejj between 21 and 30.&lt;/P&gt;&lt;P&gt;      if p0002-gesch = '2'.&lt;/P&gt;&lt;P&gt;        iline-F_age21_30 = '1'.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;        iline-M_age21_30 = '1'.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;    elseif agejj between 31 and 40.&lt;/P&gt;&lt;P&gt;      if p0002-gesch = '2'.&lt;/P&gt;&lt;P&gt;        iline-F_age31_40 = '1'.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;        iline-M_age31_40 = '1'.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;    elseif agejj between 41 and 50.&lt;/P&gt;&lt;P&gt;      if p0002-gesch = '2'.&lt;/P&gt;&lt;P&gt;        iline-F_age41_50 = '1'.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;        iline-M_age41_50 = '1'.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;    elseif agejj ge  51.&lt;/P&gt;&lt;P&gt;      if p0002-gesch = '2'.&lt;/P&gt;&lt;P&gt;        iline-F_age51_99 = '1'.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;        iline-M_age51_99 = '1'.&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;  ENDFORM.                    " determine_age_categories&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  get_course&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_course.&lt;/P&gt;&lt;P&gt;    clear it_persons.&lt;/P&gt;&lt;P&gt;    refresh it_persons.&lt;/P&gt;&lt;P&gt;    it_persons-plvar = '01'.&lt;/P&gt;&lt;P&gt;    it_persons-otype = 'P'.&lt;/P&gt;&lt;P&gt;    it_persons-sobid = pernr-pernr.&lt;/P&gt;&lt;P&gt;    append it_persons.&lt;/P&gt;&lt;P&gt;    clear it_pplans_tab.&lt;/P&gt;&lt;P&gt;    refresh it_pplans_tab.&lt;/P&gt;&lt;P&gt;    call function 'RHPQ_INDIVIDUAL_PLAN_READ'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              plvar         = '01'&lt;/P&gt;&lt;P&gt;              begda         = pnpbegda&lt;/P&gt;&lt;P&gt;              endda           = '99991231'&lt;/P&gt;&lt;P&gt;         TABLES&lt;/P&gt;&lt;P&gt;              persons       = it_persons&lt;/P&gt;&lt;P&gt;              pplans_tab    = it_pplans_tab&lt;/P&gt;&lt;P&gt;         EXCEPTIONS&lt;/P&gt;&lt;P&gt;              no_authority  = 1&lt;/P&gt;&lt;P&gt;              nothing_found = 2&lt;/P&gt;&lt;P&gt;              others        = 3.&lt;/P&gt;&lt;P&gt;    if sy-subrc = 0.&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_course&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_dplan_history&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_dplan_history.&lt;/P&gt;&lt;P&gt;    call function 'RHPQ_PERSON_TO_PLAN_READ'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              plvar         = '01'&lt;/P&gt;&lt;P&gt;              begda         = pnpbegda&lt;/P&gt;&lt;P&gt;              endda         = '99991231'&lt;/P&gt;&lt;P&gt;         TABLES&lt;/P&gt;&lt;P&gt;              persons       = it_persons&lt;/P&gt;&lt;P&gt;              pplans_tab    = db_dplans&lt;/P&gt;&lt;P&gt;         EXCEPTIONS&lt;/P&gt;&lt;P&gt;              illegal_otype = 4&lt;/P&gt;&lt;P&gt;              no_authority  = 1&lt;/P&gt;&lt;P&gt;              nothing_found = 2&lt;/P&gt;&lt;P&gt;              others        = 3.&lt;/P&gt;&lt;P&gt;    if sy-subrc eq 0.&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_dplan_history&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;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_org_seta&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_org_seta .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: l_direct(50),&lt;/P&gt;&lt;P&gt;      l_seta(50),&lt;/P&gt;&lt;P&gt;      l_seta_sub(80),&lt;/P&gt;&lt;P&gt;      l_org(50).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;break akhan.&lt;/P&gt;&lt;P&gt;*CR: 577168 add seta subarea                                      "akhan&lt;/P&gt;&lt;P&gt;    Select single orgtx into l_org&lt;/P&gt;&lt;P&gt;           from T527X&lt;/P&gt;&lt;P&gt;           where ORGEH  = p0001-orgeh&lt;/P&gt;&lt;P&gt;           and   SPRSL  = 'EN'&lt;/P&gt;&lt;P&gt;           and   endda  = '99991231'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    check sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      Select single  ZZSETA_AREA ZZSETA_SUBAREA ZZORG&lt;/P&gt;&lt;P&gt;              from   ZHR_SETA_AREAS&lt;/P&gt;&lt;P&gt;              into  (l_seta, l_seta_sub, l_direct)&lt;/P&gt;&lt;P&gt;              where  ZZORG  = l_org.&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;   Select single ZORG_TEXT zseta from ZHR_SETA_AREAS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         into (l_direct, l_seta)&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         where ORGEH  = p0001-orgeh.&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;       move l_direct   to iline-directorate.&lt;/P&gt;&lt;P&gt;       move l_seta     to iline-seta_area.&lt;/P&gt;&lt;P&gt;       move l_seta_sub to iline-seta_subarea.&lt;/P&gt;&lt;P&gt;    endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " get_org_seta&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;..and the includse..&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;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;  INCLUDE ZHAI_WSP_TOBETRAINED_TOP                                   *&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;Tables containing data -----------------------------------------------&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    TYPE-POOLS: slis.&lt;/P&gt;&lt;P&gt;    CONSTANTS: gc_top_of_page TYPE slis_formname VALUE 'TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;    TABLES: pernr, zequity.&lt;/P&gt;&lt;P&gt;    INFOTYPES: 0000, 0001, 0002, 0004, 0007, 0077.&lt;/P&gt;&lt;P&gt;    DATA  found.&lt;/P&gt;&lt;P&gt;    DATA: w_title       TYPE lvc_title,&lt;/P&gt;&lt;P&gt;          w_sbegda TYPE z_ddmonthccyy,&lt;/P&gt;&lt;P&gt;          w_sendda TYPE z_ddmonthccyy.&lt;/P&gt;&lt;P&gt;    DATA: agejj TYPE p.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: objid LIKE hrp1001-sobid,&lt;/P&gt;&lt;P&gt;          otype LIKE hrp1001-sclas,&lt;/P&gt;&lt;P&gt;          begda LIKE hrp1001-begda,&lt;/P&gt;&lt;P&gt;          endda LIKE hrp1001-endda.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal tables with fields ------------------------------------------&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    DATA: gt_fieldcat         TYPE slis_t_fieldcat_alv,&lt;/P&gt;&lt;P&gt;          gs_layout           TYPE slis_layout_alv,&lt;/P&gt;&lt;P&gt;          gs_print            TYPE slis_print_alv,&lt;/P&gt;&lt;P&gt;          gt_sort             TYPE slis_t_sortinfo_alv,&lt;/P&gt;&lt;P&gt;          gt_events           TYPE slis_t_event,&lt;/P&gt;&lt;P&gt;          header_alv          TYPE slis_t_listheader,&lt;/P&gt;&lt;P&gt;          header_alv_wa       TYPE slis_listheader,&lt;/P&gt;&lt;P&gt;          _variant            LIKE disvariant,&lt;/P&gt;&lt;P&gt;          _save(1).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    data: begin of it_persons occurs 0.&lt;/P&gt;&lt;P&gt;            include structure hrsobid.&lt;/P&gt;&lt;P&gt;    data: end of it_persons.&lt;/P&gt;&lt;P&gt;*Development plan&lt;/P&gt;&lt;P&gt;    data: begin of it_pplans_tab occurs 0.&lt;/P&gt;&lt;P&gt;            include structure hrpe_ind_dev_plan.&lt;/P&gt;&lt;P&gt;    data: end of it_pplans_tab.&lt;/P&gt;&lt;P&gt;    data: db_dplans like hrpe_ind_dev_plan occurs 1 with header line.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: BEGIN OF var,&lt;/P&gt;&lt;P&gt;          lines LIKE sy-tabix.&lt;/P&gt;&lt;P&gt;    DATA: END OF var.&lt;/P&gt;&lt;P&gt;    DATA: BEGIN OF iline OCCURS 0,&lt;/P&gt;&lt;P&gt;          occcat LIKE dd07t-ddtext,&lt;/P&gt;&lt;P&gt;          directorate LIKE zhaletterheader-directorate,&lt;/P&gt;&lt;P&gt;          seta_area   type zseta,&lt;/P&gt;&lt;P&gt;          seta_subarea type ZZSETA_SUBAREA.&lt;/P&gt;&lt;P&gt;          INCLUDE STRUCTURE zequity.&lt;/P&gt;&lt;P&gt;    data: M_age00_20 TYPE p,&lt;/P&gt;&lt;P&gt;          F_age00_20 TYPE p,&lt;/P&gt;&lt;P&gt;          M_age21_30 type p,&lt;/P&gt;&lt;P&gt;          F_age21_30 type p,&lt;/P&gt;&lt;P&gt;          M_age31_40 type p,&lt;/P&gt;&lt;P&gt;          F_age31_40 type p,&lt;/P&gt;&lt;P&gt;          M_age41_50 type p,&lt;/P&gt;&lt;P&gt;          F_age41_50 type p,&lt;/P&gt;&lt;P&gt;          M_age51_99 type p,&lt;/P&gt;&lt;P&gt;          F_age51_99 type p,&lt;/P&gt;&lt;P&gt;          anzhl like zequity-bmn.&lt;/P&gt;&lt;P&gt;    DATA: END OF iline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: BEGIN OF itab OCCURS 0,&lt;/P&gt;&lt;P&gt;        key(10),&lt;/P&gt;&lt;P&gt;        recruit TYPE p,&lt;/P&gt;&lt;P&gt;        full    TYPE p,&lt;/P&gt;&lt;P&gt;        part    TYPE p.&lt;/P&gt;&lt;P&gt;    DATA: END OF itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: true(1)  TYPE c VALUE 'X',&lt;/P&gt;&lt;P&gt;          false(1) TYPE c VALUE ' '.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;For U Type F4 look-up help&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    data: begin of return occurs 0.&lt;/P&gt;&lt;P&gt;        include structure ddshretval.&lt;/P&gt;&lt;P&gt;    data: end of return.&lt;/P&gt;&lt;P&gt;    data: begin of it_helptab occurs 0,&lt;/P&gt;&lt;P&gt;           short like hrp1000-short,&lt;/P&gt;&lt;P&gt;           text  like hrp1000-stext,&lt;/P&gt;&lt;P&gt;          end of it_helptab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FIELD-SYMBOLS: &amp;lt;fldnam&amp;gt;.&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN BEGIN OF BLOCK wt WITH FRAME TITLE text-001.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Count Course&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN COMMENT 1(31) text-004.&lt;/P&gt;&lt;P&gt;    POSITION 31.&lt;/P&gt;&lt;P&gt;    PARAMETERS: p_course TYPE c RADIOBUTTON GROUP rout.&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Count Employee&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN COMMENT 1(31) text-005.&lt;/P&gt;&lt;P&gt;    POSITION 31.&lt;/P&gt;&lt;P&gt;    PARAMETERS: p_ee TYPE c RADIOBUTTON GROUP rout.&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Blank Line&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN COMMENT 1(32) text-006.&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN END OF BLOCK wt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN BEGIN OF BLOCK bl00 WITH FRAME TITLE text-003.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Full Time Weekly Working Hours&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECT-OPTIONS: p_full FOR p0007-wostd OBLIGATORY.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Part Time Weekly Working Hours&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECT-OPTIONS: p_part FOR p0007-wostd OBLIGATORY.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Hiring Action&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECT-OPTIONS: p_hire FOR p0000-massn OBLIGATORY.&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN END OF BLOCK bl00.&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;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;  INCLUDE ZHAI_EQUITY                                                *&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;    DATA: fielda(10) VALUE 'ILINE-'.&lt;/P&gt;&lt;P&gt;    FIELD-SYMBOLS &amp;lt;a&amp;gt;.&lt;/P&gt;&lt;P&gt;"test&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  fill_equity_info&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;P_0109   text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_0110   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_equity_info.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Determine Ethnic Origin&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CASE p0077-racky.&lt;/P&gt;&lt;P&gt;        WHEN '01'.&lt;/P&gt;&lt;P&gt;          fielda+6(1) = 'B'. "Black&lt;/P&gt;&lt;P&gt;        WHEN '02'.&lt;/P&gt;&lt;P&gt;          fielda+6(1) = 'C'. "Coloured&lt;/P&gt;&lt;P&gt;        WHEN '03'.&lt;/P&gt;&lt;P&gt;          fielda+6(1) = 'I'. "Indian&lt;/P&gt;&lt;P&gt;        WHEN '04'.&lt;/P&gt;&lt;P&gt;          fielda+6(1) = 'W'. "White&lt;/P&gt;&lt;P&gt;        WHEN OTHERS.&lt;/P&gt;&lt;P&gt;          fielda+6(1) = 'W'. "White&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Determine Gender&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CASE p0002-gesch.&lt;/P&gt;&lt;P&gt;        WHEN '1'.&lt;/P&gt;&lt;P&gt;          fielda+7(1) = 'M'. "Male&lt;/P&gt;&lt;P&gt;        WHEN '2'.&lt;/P&gt;&lt;P&gt;          fielda+7(1) = 'F'. "Female&lt;/P&gt;&lt;P&gt;        WHEN OTHERS.&lt;/P&gt;&lt;P&gt;          fielda+7(1) = 'M'. "Male&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Determine Disability&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     IF p0004-sbart IS INITIAL.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF p0077-DISAB is initial.      "CR442696&lt;/P&gt;&lt;P&gt;        fielda+8(1) = 'N'. "Not Disabled&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        fielda+8(1) = 'D'. "Disabled&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ASSIGN (fielda) TO &amp;lt;a&amp;gt;.&lt;/P&gt;&lt;P&gt;      &amp;lt;a&amp;gt; = 1.&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;Get Total&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      fielda+6(1) = 'T'.&lt;/P&gt;&lt;P&gt;      ASSIGN (fielda) TO &amp;lt;a&amp;gt;.&lt;/P&gt;&lt;P&gt;      &amp;lt;a&amp;gt; = 1.&lt;/P&gt;&lt;P&gt;    ENDFORM.                    " fill_equity_info&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What might be problem?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 11 Jun 2007 11:54:32 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-06-11T11:54:32Z</dc:date>
    <item>
      <title>problem when exporting to excell</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/problem-when-exporting-to-excell/m-p/2342105#M516363</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;i am having a problem when i want to export my ALV report to excell. its exporting but its representing the data in haphazard manner. the items are not falling in the same column with column titles, there are columns that are being left blank in between columns that contain data, the column titles themselves are not appearing in the same row. &lt;/P&gt;&lt;P&gt;below is the code for the report code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REPORT zhap_wsp_tobetrained&lt;/P&gt;&lt;P&gt;   NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;   LINE-SIZE 255.&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;SYSTEM : SAP R/3 4.6C                                                *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;AUTHOR : Adrian Thorne                                               *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATE   : 07/10/2002                                                  *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TITLE  : Employees to be Trained During Period                       *&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;PURPOSE: Work Place Skills Plan Report to list the                   *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         number of employees in each Occupational                    *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         category to be trained during period. This                  *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         will normally be the levy grant year, which                 *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         starts in April.                                            *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;METHOD : Accessed online                                             *&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;AMENDMENTS:                                                          *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;VER  DATE        AUTHOR           DESCRIPTION OF CHANGE              *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;---  ----        ------           ----------------------             *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;V00  07/10/2002  A. Thorne        Original version                   *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;V01  08/10/2002  J. Chilton       Remove Course Name                 *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;V02  10/09/2003  Abe Rakgomo                                         *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Decription:1.The report should display the Org Unit for all employees*&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            A selection checkbox needs to be added next to the field *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            "Org Unit" which displays a drop-down table of all the 11*&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            Org Units and a selection icon included.                 *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           2. Include Age categories (0 - 19)(20 - 29) (30 - 39)     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                     (40 - 49))(50+)                 *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*RD1K920519                                                            *&lt;/P&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;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Data declaration&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  INCLUDE zhai_wsp_tobetrained_top.&lt;/P&gt;&lt;P&gt;  INCLUDE zhai_equity.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  data: va_short like hrp1000-short,&lt;/P&gt;&lt;P&gt;        va_offset(2),&lt;/P&gt;&lt;P&gt;        va_flag.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  INITIALIZATION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM init_params.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Adjust default selection dates to be April 1 - March 31 one year henc&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Adjust default selection dates to be July 1 - June 30 one year henc&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;  pnpbegda(4) = sy-datum(4) + 1.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    pnpbegda(4) = sy-datum(4).&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  pnpbegda+4(4) = '0401'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    pnpbegda+4(4) = '0701'.&lt;/P&gt;&lt;P&gt;    pnpendda = pnpbegda.&lt;/P&gt;&lt;P&gt;    pnpendda(4) = pnpbegda(4) + 1.&lt;/P&gt;&lt;P&gt;    pnpendda = pnpendda - 1.&lt;/P&gt;&lt;P&gt;&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Extract Data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  START-OF-SELECTION.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   if so_dept-low is initial.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     perform fill_dept.&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;    CLEAR iline. REFRESH iline.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   CLEAR oline. REFRESH oline.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   CLEAR tab.   REFRESH tab.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  GET pernr.&lt;/P&gt;&lt;P&gt;    fielda = 'ILINE-'.&lt;/P&gt;&lt;P&gt;    CLEAR iline.&lt;/P&gt;&lt;P&gt;    CLEAR p0000.&lt;/P&gt;&lt;P&gt;    rp-provide-from-last p0000 space pn-begda pn-endda.&lt;/P&gt;&lt;P&gt;    CLEAR p0001.&lt;/P&gt;&lt;P&gt;    rp-provide-from-last p0001 space pn-begda pn-endda.&lt;/P&gt;&lt;P&gt;    CLEAR p0002.&lt;/P&gt;&lt;P&gt;    rp-provide-from-last p0002 space pn-begda pn-endda.&lt;/P&gt;&lt;P&gt;    CLEAR p0004.&lt;/P&gt;&lt;P&gt;    rp-provide-from-last p0004 space pn-begda pn-endda.&lt;/P&gt;&lt;P&gt;    CLEAR p0007.&lt;/P&gt;&lt;P&gt;    rp-provide-from-last p0007 space pn-begda pn-endda.&lt;/P&gt;&lt;P&gt;    CLEAR p0077.&lt;/P&gt;&lt;P&gt;    rp-provide-from-last p0077 space pn-begda pn-endda.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*get_org_seta.&lt;/P&gt;&lt;P&gt; Perform get_org_seta.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Replaced by on 10/09/2003 Abe Rakgomo&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get Occupational Category&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    select single stltx from t513s&lt;/P&gt;&lt;P&gt;                     into iline-occcat&lt;/P&gt;&lt;P&gt;       where sprsl eq sy-langu&lt;/P&gt;&lt;P&gt;       and   stell eq p0001-stell&lt;/P&gt;&lt;P&gt;       and   endda ge p0001-begda&lt;/P&gt;&lt;P&gt;       and   begda le p0001-endda.&lt;/P&gt;&lt;P&gt;    if sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      iline-occcat = 'Unknown'.&lt;/P&gt;&lt;P&gt;    endif.&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;Get Equity Inf&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform fill_equity_info .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Determine Age&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform determine_age_categories.&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;Get Courses To Be Attended&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    clear va_flag.&lt;/P&gt;&lt;P&gt;    perform get_course.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get development plan history&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform get_dplan_history.&lt;/P&gt;&lt;P&gt;    if va_flag = 'Y'.&lt;/P&gt;&lt;P&gt;      perform load_intable.&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;*If No Courses where planned&lt;/P&gt;&lt;P&gt;    if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      CLEAR iline.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      COLLECT iline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Check if any to be printed -------------------------------------------&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DESCRIBE TABLE iline LINES var-lines." Get number of lines in table&lt;/P&gt;&lt;P&gt;    IF var-lines = 0.                  " Show message if no c/elements&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'POPUP_NO_LIST'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM build_header       USING header_alv[].&lt;/P&gt;&lt;P&gt;    PERFORM setup-fieldcatalog USING gt_fieldcat[].&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  PERFORM eventtab_build     USING gt_events[].&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM sort_build         USING gt_sort[].&lt;/P&gt;&lt;P&gt;    PERFORM layout_build       USING gs_layout.&lt;/P&gt;&lt;P&gt;    PERFORM print_build        USING gs_print.&lt;/P&gt;&lt;P&gt;    PERFORM produce-report.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&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;      FORM setup-fieldcatalog                                       *&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;      ........                                                      *&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;  _FIELDCAT                                                     *&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 setup-fieldcatalog USING &lt;U&gt;fieldcat TYPE slis&lt;/U&gt;t_fieldcat_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: ls_fieldcat TYPE slis_fieldcat_alv,&lt;/P&gt;&lt;P&gt;          w_last_col_pos LIKE ls_fieldcat-col_pos.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'OCCCAT'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Occupational Category'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Occupational Category'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Occupational Category'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    APPEND ls_fieldcat TO _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     clear ls_fieldcat.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-fieldname = 'SETA_AREA'.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-seltext_s = 'Seta Area'.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-seltext_m = 'Seta Area'.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-seltext_l = 'Seta Area'.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;      append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      clear ls_fieldcat.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-fieldname = 'SETA_SUBAREA'.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-seltext_s = 'Seta SubArea'.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-seltext_m = 'Seta SubArea'.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-seltext_l = 'Seta SubArea'.&lt;/P&gt;&lt;P&gt;      ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;      append ls_fieldcat to _fieldcat .&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;   APPEND ls_fieldcat TO _fieldcat .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              i_internal_tabname = 'ILINE'&lt;/P&gt;&lt;P&gt;              i_structure_name   = 'ZEQUITY'&lt;/P&gt;&lt;P&gt;         CHANGING&lt;/P&gt;&lt;P&gt;              ct_fieldcat        = _fieldcat.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Ensure columns are added to the right, find maximum column position&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    w_last_col_pos = 0.&lt;/P&gt;&lt;P&gt;    loop at &lt;U&gt;fieldcat into ls&lt;/U&gt;fieldcat.&lt;/P&gt;&lt;P&gt;      if ls_fieldcat-col_pos &amp;gt; w_last_col_pos.&lt;/P&gt;&lt;P&gt;        w_last_col_pos = ls_fieldcat-col_pos.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;    endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'M_AGE00_20'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Male Age 0 - 20'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Male Age 0 - 20'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Male Age 0 - 20'.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'F_AGE00_20'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Female Age 0 - 20'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Female Age 0 - 20'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Female Age 0 - 20'.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'M_AGE21_30'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Male Age 21 - 30'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Male Age 21 - 30'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Male Age 21 - 30'.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'F_AGE21_30'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Female Age 21 - 30'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Female Age 21 - 30'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Female Age 21 - 30'.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'M_AGE31_40'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Male Age 31 - 40'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Male Age 31 - 40'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Male Age 31 - 40'.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'F_AGE31_40'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Female Age 31 - 40'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Female Age 31 - 40'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Female Age 31 - 40'.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'M_AGE41_50'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Male Age 41 - 50'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Male Age 41 - 50'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Male Age 41 - 50'.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'F_AGE41_50'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Female Age 41 - 50'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Female Age 41 - 50'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Female Age 41 - 50'.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'M_AGE51_99'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Male Age 51 +   '.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Male Age 51 +   '.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Male Age 51 +   '.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = 'F_AGE51_99'.&lt;/P&gt;&lt;P&gt;    w_last_col_pos        = w_last_col_pos + 1.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-col_pos   = w_last_col_pos.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ddictxt   = 'L'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_s = 'Female Age 51 +   '.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_m = 'Female Age 51 +   '.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-seltext_l = 'Female Age 51 +   '.&lt;/P&gt;&lt;P&gt;    append ls_fieldcat to _fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT &lt;U&gt;fieldcat INTO ls&lt;/U&gt;fieldcat.&lt;/P&gt;&lt;P&gt;      CASE ls_fieldcat-fieldname.&lt;/P&gt;&lt;P&gt;        WHEN 'DIRECTORATE'.&lt;/P&gt;&lt;P&gt;          ls_fieldcat-outputlen    = '40'.&lt;/P&gt;&lt;P&gt;        WHEN 'OCCCAT' OR 'STEXT'.&lt;/P&gt;&lt;P&gt;          ls_fieldcat-outputlen    = '35'.&lt;/P&gt;&lt;P&gt;        WHEN OTHERS.&lt;/P&gt;&lt;P&gt;          ls_fieldcat-outputlen    = '20'.&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;      MODIFY &lt;U&gt;fieldcat FROM ls&lt;/U&gt;fieldcat.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " SETUP-FIELDCATALOG&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;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;      FORM sort_build                                               *&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;      ........                                                      *&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;  _SORT                                                         *&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 sort_build USING   &lt;U&gt;sort TYPE slis&lt;/U&gt;t_sortinfo_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: ls_sort TYPE slis_sortinfo_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ls_sort-fieldname = 'OCCCAT'.&lt;/P&gt;&lt;P&gt;    ls_sort-up        = true.&lt;/P&gt;&lt;P&gt;    APPEND ls_sort TO _sort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   ls_sort-fieldname = 'SETA_AREA'.&lt;/P&gt;&lt;P&gt;    ls_sort-up        = true.&lt;/P&gt;&lt;P&gt;    APPEND ls_sort TO _sort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " SORT_BUILD&lt;/P&gt;&lt;P&gt;&lt;/P&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;      FORM layout_build                                             *&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;      ........                                                      *&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;  _LAYOUT                                                       *&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 layout_build USING    &lt;U&gt;layout TYPE slis&lt;/U&gt;layout_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    &lt;U&gt;layout-no&lt;/U&gt;input          = true.&lt;/P&gt;&lt;P&gt;    &lt;U&gt;layout-detail&lt;/U&gt;titlebar = 'Detail Title'(002).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IF p_dept IS INITIAL.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      &lt;U&gt;layout-window&lt;/U&gt;titlebar =&lt;/P&gt;&lt;P&gt;      'Number of Employees to be Trained During Period'.&lt;/P&gt;&lt;P&gt;&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;  ENDFORM.                    " LAYOUT_BUILD&lt;/P&gt;&lt;P&gt;&lt;/P&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;      FORM print_build                                              *&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;      ........                                                      *&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;  _PRINT                                                        *&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 print_build USING   &lt;U&gt;print TYPE slis&lt;/U&gt;print_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    &lt;U&gt;print-no&lt;/U&gt;print_listinfos = true.&lt;/P&gt;&lt;P&gt;    &lt;U&gt;print-no&lt;/U&gt;coverpage       = true.&lt;/P&gt;&lt;P&gt;    &lt;U&gt;print-no&lt;/U&gt;print_selinfos  = true.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " PRINT_BUILD&lt;/P&gt;&lt;P&gt;&lt;/P&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;      FORM build_header                                             *&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;      ........                                                      *&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;  &lt;U&gt;HEADER&lt;/U&gt;ALV                                                   *&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_header USING &lt;U&gt;header&lt;/U&gt;alv TYPE slis_t_listheader.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Main Heading&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IF p_dept IS INITIAL.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      header_alv_wa-info =&lt;/P&gt;&lt;P&gt;        'Number of Employees to be Trained During Period'.&lt;/P&gt;&lt;P&gt;      header_alv_wa-typ  = 'H'.&lt;/P&gt;&lt;P&gt;      APPEND header_alv_wa TO &lt;U&gt;header&lt;/U&gt;alv.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   ELSE.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     header_alv_wa-info =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   'Number of Employees Trained During Period Per Department'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     header_alv_wa-typ  = 'H'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     APPEND header_alv_wa TO &lt;U&gt;header&lt;/U&gt;alv.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Secondary Heading&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    header_alv_wa-typ  = 'S'.&lt;/P&gt;&lt;P&gt;    header_alv_wa-key  = 'Validity Period'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Set up appropriate title (dd Month ccyy to dd Month ccyy)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CALL FUNCTION 'Z_FORMAT_DATE'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              date     = pn-begda&lt;/P&gt;&lt;P&gt;         CHANGING&lt;/P&gt;&lt;P&gt;              formdate = w_sbegda.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'Z_FORMAT_DATE'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              date     = pn-endda&lt;/P&gt;&lt;P&gt;         CHANGING&lt;/P&gt;&lt;P&gt;              formdate = w_sendda.&lt;/P&gt;&lt;P&gt;    IF pn-begda = pn-endda.&lt;/P&gt;&lt;P&gt;      w_title = w_sbegda.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;     CONCATENATE w_sbegda 'to' w_sendda INTO w_title SEPARATED BY space.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    CONCATENATE text-t01 w_title INTO w_title SEPARATED BY space.&lt;/P&gt;&lt;P&gt;    CONDENSE w_title.&lt;/P&gt;&lt;P&gt;    header_alv_wa-info = w_title.&lt;/P&gt;&lt;P&gt;    APPEND header_alv_wa TO &lt;U&gt;header&lt;/U&gt;alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT itab.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;New Recruits&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CLEAR header_alv_wa-info.&lt;/P&gt;&lt;P&gt;      header_alv_wa-info = itab-recruit.&lt;/P&gt;&lt;P&gt;      CONDENSE header_alv_wa-info.&lt;/P&gt;&lt;P&gt;      header_alv_wa-typ  = 'S'.&lt;/P&gt;&lt;P&gt;      header_alv_wa-key  = 'New Recruits:'.&lt;/P&gt;&lt;P&gt;      APPEND header_alv_wa TO &lt;U&gt;header&lt;/U&gt;alv.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Full Time&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CLEAR header_alv_wa-info.&lt;/P&gt;&lt;P&gt;      header_alv_wa-info = itab-full.&lt;/P&gt;&lt;P&gt;      CONDENSE header_alv_wa-info.&lt;/P&gt;&lt;P&gt;      header_alv_wa-typ  = 'S'.&lt;/P&gt;&lt;P&gt;      header_alv_wa-key  = 'Full Time:'.&lt;/P&gt;&lt;P&gt;      APPEND header_alv_wa TO &lt;U&gt;header&lt;/U&gt;alv.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;part time&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CLEAR header_alv_wa-info.&lt;/P&gt;&lt;P&gt;      header_alv_wa-info = itab-part.&lt;/P&gt;&lt;P&gt;      CONDENSE header_alv_wa-info.&lt;/P&gt;&lt;P&gt;      header_alv_wa-typ  = 'S'.&lt;/P&gt;&lt;P&gt;      header_alv_wa-key  = 'Part Time:'.&lt;/P&gt;&lt;P&gt;      APPEND header_alv_wa TO &lt;U&gt;header&lt;/U&gt;alv.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " build_header&lt;/P&gt;&lt;P&gt;&lt;/P&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;      FORM TOP_OF_PAGE                                              *&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;    CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              it_list_commentary = header_alv.&lt;/P&gt;&lt;P&gt;  ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&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;      FORM produce-report                                           *&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;      ........                                                      *&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 produce-report.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: _repid LIKE sy-repid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    _repid = sy-repid.&lt;/P&gt;&lt;P&gt;    _save = 'A'.&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     = _repid&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             i_structure_name       = 'OLINE'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;              i_callback_top_of_page = 'TOP_OF_PAGE'&lt;/P&gt;&lt;P&gt;              is_layout              = gs_layout&lt;/P&gt;&lt;P&gt;              it_fieldcat            = gt_fieldcat[]&lt;/P&gt;&lt;P&gt;              i_save                 = _save&lt;/P&gt;&lt;P&gt;              is_variant             = _variant&lt;/P&gt;&lt;P&gt;              it_sort                = gt_sort[]&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             it_events              = gt_events[]&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;         TABLES&lt;/P&gt;&lt;P&gt;              t_outtab               = iline[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " PRODUCE-REPORT&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  init_params&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 init_params.&lt;/P&gt;&lt;P&gt;    p_part-low    = '1'.&lt;/P&gt;&lt;P&gt;    p_part-high   = '34'.&lt;/P&gt;&lt;P&gt;    p_part-sign   = 'I'.&lt;/P&gt;&lt;P&gt;    p_part-option = 'BT'.&lt;/P&gt;&lt;P&gt;    APPEND p_part.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    p_full-low    = '35'.&lt;/P&gt;&lt;P&gt;    p_full-high   = '999'.&lt;/P&gt;&lt;P&gt;    p_full-sign   = 'I'.&lt;/P&gt;&lt;P&gt;    p_full-option = 'BT'.&lt;/P&gt;&lt;P&gt;    APPEND p_full.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    p_hire-low    = 'Z1'.&lt;/P&gt;&lt;P&gt;    p_hire-high   = 'Z2'.&lt;/P&gt;&lt;P&gt;    p_hire-sign   = 'I'.&lt;/P&gt;&lt;P&gt;    p_hire-option = 'BT'.&lt;/P&gt;&lt;P&gt;    APPEND p_hire.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    p_hire-low    = 'Z7'.&lt;/P&gt;&lt;P&gt;    p_hire-high   = 'Z8'.&lt;/P&gt;&lt;P&gt;    p_hire-sign   = 'I'.&lt;/P&gt;&lt;P&gt;    p_hire-option = 'BT'.&lt;/P&gt;&lt;P&gt;    APPEND p_hire.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " init_params&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  load_intable&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 load_intable.&lt;/P&gt;&lt;P&gt;    CLEAR zequity.&lt;/P&gt;&lt;P&gt;    MOVE-CORRESPONDING zequity TO iline.&lt;/P&gt;&lt;P&gt;    PERFORM fill_equity_info .&lt;/P&gt;&lt;P&gt;    perform determine_age_categories.&lt;/P&gt;&lt;P&gt;    PERFORM fill_info.&lt;/P&gt;&lt;P&gt;    COLLECT iline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " load_intable&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_info&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_info.&lt;/P&gt;&lt;P&gt;    CLEAR itab.&lt;/P&gt;&lt;P&gt;    IF p0007-wostd IN p_full.&lt;/P&gt;&lt;P&gt;      itab-full = 1.&lt;/P&gt;&lt;P&gt;    ELSEIF p0007-wostd IN p_part.&lt;/P&gt;&lt;P&gt;      itab-part = 1.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    LOOP AT p0000 WHERE begda LE pn-endda&lt;/P&gt;&lt;P&gt;                    AND begda GE pn-begda&lt;/P&gt;&lt;P&gt;                    AND massn IN p_hire.&lt;/P&gt;&lt;P&gt;      itab-recruit = 1.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    COLLECT itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " fill_info&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  f4_shlp_pernr&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;P_0035   text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_0036   text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_0037   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 f4_shlp_pernr USING   p_retfield&lt;/P&gt;&lt;P&gt;                             p_dynprofield&lt;/P&gt;&lt;P&gt;                             p_title.         "p_valuetab.&lt;/P&gt;&lt;P&gt;    clear return.&lt;/P&gt;&lt;P&gt;    refresh return.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    call function 'F4IF_INT_TABLE_VALUE_REQUEST'&lt;/P&gt;&lt;P&gt;         exporting&lt;/P&gt;&lt;P&gt;              retfield        = p_retfield&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          dynpprog        = 'ZFIR0101_INSTALLATION_FACTS'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;              dynpprog        = 'X'&lt;/P&gt;&lt;P&gt;              dynpnr          = '1000'&lt;/P&gt;&lt;P&gt;              dynprofield     = p_dynprofield&lt;/P&gt;&lt;P&gt;              window_title    = p_title&lt;/P&gt;&lt;P&gt;              value_org       = 'S'&lt;/P&gt;&lt;P&gt;         tables&lt;/P&gt;&lt;P&gt;              value_tab       = it_helptab&lt;/P&gt;&lt;P&gt;              return_tab      = return&lt;/P&gt;&lt;P&gt;         exceptions&lt;/P&gt;&lt;P&gt;              parameter_error = 1&lt;/P&gt;&lt;P&gt;              no_values_found = 2&lt;/P&gt;&lt;P&gt;              others          = 3.&lt;/P&gt;&lt;P&gt;    if sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  message id sy-msgid type sy-msgty number sy-msgno&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endform.                    " f4_shlp_pernr&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_dept&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_dept.&lt;/P&gt;&lt;P&gt;    clear: it_helptab.&lt;/P&gt;&lt;P&gt;    refresh: it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '01'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Governance and Integration'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '07'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Governance and Integration'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '04'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Community Services'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '09'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Corporate Systems &amp;amp; Services'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '02'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Development &amp;amp; Infrastructure'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '11'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Finance Services'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '06'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Finance Services'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '05'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Internal Audit'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '10'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Governance and Integration'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '08'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Governance and Integration'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    it_helptab-short = '03'.&lt;/P&gt;&lt;P&gt;    it_helptab-text  = 'Development &amp;amp; Infrastructure'.&lt;/P&gt;&lt;P&gt;    append it_helptab.&lt;/P&gt;&lt;P&gt;    sort it_helptab by short.&lt;/P&gt;&lt;P&gt;  endform.                    " fill_dept&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  determine_age_categories&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 determine_age_categories.&lt;/P&gt;&lt;P&gt;    call function 'RP_01C_AGE_YEARS'&lt;/P&gt;&lt;P&gt;               exporting&lt;/P&gt;&lt;P&gt;                    i37_pernr = pernr-pernr&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            i37_keydt = pn-endda&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                    i37_keydt = sy-datum&lt;/P&gt;&lt;P&gt;                    i37_gbdat = p0002-gbdat&lt;/P&gt;&lt;P&gt;               importing&lt;/P&gt;&lt;P&gt;                    e37_agejj = agejj.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    if     agejj between  0 and 20.&lt;/P&gt;&lt;P&gt;      if p0002-gesch = '2'.&lt;/P&gt;&lt;P&gt;        iline-F_age00_20 = '1'.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;        iline-M_age00_20 = '1'.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;    elseif agejj between 21 and 30.&lt;/P&gt;&lt;P&gt;      if p0002-gesch = '2'.&lt;/P&gt;&lt;P&gt;        iline-F_age21_30 = '1'.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;        iline-M_age21_30 = '1'.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;    elseif agejj between 31 and 40.&lt;/P&gt;&lt;P&gt;      if p0002-gesch = '2'.&lt;/P&gt;&lt;P&gt;        iline-F_age31_40 = '1'.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;        iline-M_age31_40 = '1'.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;    elseif agejj between 41 and 50.&lt;/P&gt;&lt;P&gt;      if p0002-gesch = '2'.&lt;/P&gt;&lt;P&gt;        iline-F_age41_50 = '1'.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;        iline-M_age41_50 = '1'.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;    elseif agejj ge  51.&lt;/P&gt;&lt;P&gt;      if p0002-gesch = '2'.&lt;/P&gt;&lt;P&gt;        iline-F_age51_99 = '1'.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;        iline-M_age51_99 = '1'.&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;  ENDFORM.                    " determine_age_categories&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  get_course&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_course.&lt;/P&gt;&lt;P&gt;    clear it_persons.&lt;/P&gt;&lt;P&gt;    refresh it_persons.&lt;/P&gt;&lt;P&gt;    it_persons-plvar = '01'.&lt;/P&gt;&lt;P&gt;    it_persons-otype = 'P'.&lt;/P&gt;&lt;P&gt;    it_persons-sobid = pernr-pernr.&lt;/P&gt;&lt;P&gt;    append it_persons.&lt;/P&gt;&lt;P&gt;    clear it_pplans_tab.&lt;/P&gt;&lt;P&gt;    refresh it_pplans_tab.&lt;/P&gt;&lt;P&gt;    call function 'RHPQ_INDIVIDUAL_PLAN_READ'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              plvar         = '01'&lt;/P&gt;&lt;P&gt;              begda         = pnpbegda&lt;/P&gt;&lt;P&gt;              endda           = '99991231'&lt;/P&gt;&lt;P&gt;         TABLES&lt;/P&gt;&lt;P&gt;              persons       = it_persons&lt;/P&gt;&lt;P&gt;              pplans_tab    = it_pplans_tab&lt;/P&gt;&lt;P&gt;         EXCEPTIONS&lt;/P&gt;&lt;P&gt;              no_authority  = 1&lt;/P&gt;&lt;P&gt;              nothing_found = 2&lt;/P&gt;&lt;P&gt;              others        = 3.&lt;/P&gt;&lt;P&gt;    if sy-subrc = 0.&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_course&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_dplan_history&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_dplan_history.&lt;/P&gt;&lt;P&gt;    call function 'RHPQ_PERSON_TO_PLAN_READ'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              plvar         = '01'&lt;/P&gt;&lt;P&gt;              begda         = pnpbegda&lt;/P&gt;&lt;P&gt;              endda         = '99991231'&lt;/P&gt;&lt;P&gt;         TABLES&lt;/P&gt;&lt;P&gt;              persons       = it_persons&lt;/P&gt;&lt;P&gt;              pplans_tab    = db_dplans&lt;/P&gt;&lt;P&gt;         EXCEPTIONS&lt;/P&gt;&lt;P&gt;              illegal_otype = 4&lt;/P&gt;&lt;P&gt;              no_authority  = 1&lt;/P&gt;&lt;P&gt;              nothing_found = 2&lt;/P&gt;&lt;P&gt;              others        = 3.&lt;/P&gt;&lt;P&gt;    if sy-subrc eq 0.&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_dplan_history&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;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_org_seta&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_org_seta .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: l_direct(50),&lt;/P&gt;&lt;P&gt;      l_seta(50),&lt;/P&gt;&lt;P&gt;      l_seta_sub(80),&lt;/P&gt;&lt;P&gt;      l_org(50).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;break akhan.&lt;/P&gt;&lt;P&gt;*CR: 577168 add seta subarea                                      "akhan&lt;/P&gt;&lt;P&gt;    Select single orgtx into l_org&lt;/P&gt;&lt;P&gt;           from T527X&lt;/P&gt;&lt;P&gt;           where ORGEH  = p0001-orgeh&lt;/P&gt;&lt;P&gt;           and   SPRSL  = 'EN'&lt;/P&gt;&lt;P&gt;           and   endda  = '99991231'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    check sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      Select single  ZZSETA_AREA ZZSETA_SUBAREA ZZORG&lt;/P&gt;&lt;P&gt;              from   ZHR_SETA_AREAS&lt;/P&gt;&lt;P&gt;              into  (l_seta, l_seta_sub, l_direct)&lt;/P&gt;&lt;P&gt;              where  ZZORG  = l_org.&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;   Select single ZORG_TEXT zseta from ZHR_SETA_AREAS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         into (l_direct, l_seta)&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         where ORGEH  = p0001-orgeh.&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;       move l_direct   to iline-directorate.&lt;/P&gt;&lt;P&gt;       move l_seta     to iline-seta_area.&lt;/P&gt;&lt;P&gt;       move l_seta_sub to iline-seta_subarea.&lt;/P&gt;&lt;P&gt;    endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " get_org_seta&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;..and the includse..&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;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;  INCLUDE ZHAI_WSP_TOBETRAINED_TOP                                   *&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;Tables containing data -----------------------------------------------&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    TYPE-POOLS: slis.&lt;/P&gt;&lt;P&gt;    CONSTANTS: gc_top_of_page TYPE slis_formname VALUE 'TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;    TABLES: pernr, zequity.&lt;/P&gt;&lt;P&gt;    INFOTYPES: 0000, 0001, 0002, 0004, 0007, 0077.&lt;/P&gt;&lt;P&gt;    DATA  found.&lt;/P&gt;&lt;P&gt;    DATA: w_title       TYPE lvc_title,&lt;/P&gt;&lt;P&gt;          w_sbegda TYPE z_ddmonthccyy,&lt;/P&gt;&lt;P&gt;          w_sendda TYPE z_ddmonthccyy.&lt;/P&gt;&lt;P&gt;    DATA: agejj TYPE p.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: objid LIKE hrp1001-sobid,&lt;/P&gt;&lt;P&gt;          otype LIKE hrp1001-sclas,&lt;/P&gt;&lt;P&gt;          begda LIKE hrp1001-begda,&lt;/P&gt;&lt;P&gt;          endda LIKE hrp1001-endda.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal tables with fields ------------------------------------------&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    DATA: gt_fieldcat         TYPE slis_t_fieldcat_alv,&lt;/P&gt;&lt;P&gt;          gs_layout           TYPE slis_layout_alv,&lt;/P&gt;&lt;P&gt;          gs_print            TYPE slis_print_alv,&lt;/P&gt;&lt;P&gt;          gt_sort             TYPE slis_t_sortinfo_alv,&lt;/P&gt;&lt;P&gt;          gt_events           TYPE slis_t_event,&lt;/P&gt;&lt;P&gt;          header_alv          TYPE slis_t_listheader,&lt;/P&gt;&lt;P&gt;          header_alv_wa       TYPE slis_listheader,&lt;/P&gt;&lt;P&gt;          _variant            LIKE disvariant,&lt;/P&gt;&lt;P&gt;          _save(1).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    data: begin of it_persons occurs 0.&lt;/P&gt;&lt;P&gt;            include structure hrsobid.&lt;/P&gt;&lt;P&gt;    data: end of it_persons.&lt;/P&gt;&lt;P&gt;*Development plan&lt;/P&gt;&lt;P&gt;    data: begin of it_pplans_tab occurs 0.&lt;/P&gt;&lt;P&gt;            include structure hrpe_ind_dev_plan.&lt;/P&gt;&lt;P&gt;    data: end of it_pplans_tab.&lt;/P&gt;&lt;P&gt;    data: db_dplans like hrpe_ind_dev_plan occurs 1 with header line.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: BEGIN OF var,&lt;/P&gt;&lt;P&gt;          lines LIKE sy-tabix.&lt;/P&gt;&lt;P&gt;    DATA: END OF var.&lt;/P&gt;&lt;P&gt;    DATA: BEGIN OF iline OCCURS 0,&lt;/P&gt;&lt;P&gt;          occcat LIKE dd07t-ddtext,&lt;/P&gt;&lt;P&gt;          directorate LIKE zhaletterheader-directorate,&lt;/P&gt;&lt;P&gt;          seta_area   type zseta,&lt;/P&gt;&lt;P&gt;          seta_subarea type ZZSETA_SUBAREA.&lt;/P&gt;&lt;P&gt;          INCLUDE STRUCTURE zequity.&lt;/P&gt;&lt;P&gt;    data: M_age00_20 TYPE p,&lt;/P&gt;&lt;P&gt;          F_age00_20 TYPE p,&lt;/P&gt;&lt;P&gt;          M_age21_30 type p,&lt;/P&gt;&lt;P&gt;          F_age21_30 type p,&lt;/P&gt;&lt;P&gt;          M_age31_40 type p,&lt;/P&gt;&lt;P&gt;          F_age31_40 type p,&lt;/P&gt;&lt;P&gt;          M_age41_50 type p,&lt;/P&gt;&lt;P&gt;          F_age41_50 type p,&lt;/P&gt;&lt;P&gt;          M_age51_99 type p,&lt;/P&gt;&lt;P&gt;          F_age51_99 type p,&lt;/P&gt;&lt;P&gt;          anzhl like zequity-bmn.&lt;/P&gt;&lt;P&gt;    DATA: END OF iline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: BEGIN OF itab OCCURS 0,&lt;/P&gt;&lt;P&gt;        key(10),&lt;/P&gt;&lt;P&gt;        recruit TYPE p,&lt;/P&gt;&lt;P&gt;        full    TYPE p,&lt;/P&gt;&lt;P&gt;        part    TYPE p.&lt;/P&gt;&lt;P&gt;    DATA: END OF itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: true(1)  TYPE c VALUE 'X',&lt;/P&gt;&lt;P&gt;          false(1) TYPE c VALUE ' '.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;For U Type F4 look-up help&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    data: begin of return occurs 0.&lt;/P&gt;&lt;P&gt;        include structure ddshretval.&lt;/P&gt;&lt;P&gt;    data: end of return.&lt;/P&gt;&lt;P&gt;    data: begin of it_helptab occurs 0,&lt;/P&gt;&lt;P&gt;           short like hrp1000-short,&lt;/P&gt;&lt;P&gt;           text  like hrp1000-stext,&lt;/P&gt;&lt;P&gt;          end of it_helptab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FIELD-SYMBOLS: &amp;lt;fldnam&amp;gt;.&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN BEGIN OF BLOCK wt WITH FRAME TITLE text-001.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Count Course&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN COMMENT 1(31) text-004.&lt;/P&gt;&lt;P&gt;    POSITION 31.&lt;/P&gt;&lt;P&gt;    PARAMETERS: p_course TYPE c RADIOBUTTON GROUP rout.&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Count Employee&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN COMMENT 1(31) text-005.&lt;/P&gt;&lt;P&gt;    POSITION 31.&lt;/P&gt;&lt;P&gt;    PARAMETERS: p_ee TYPE c RADIOBUTTON GROUP rout.&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Blank Line&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN COMMENT 1(32) text-006.&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN END OF BLOCK wt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN BEGIN OF BLOCK bl00 WITH FRAME TITLE text-003.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Full Time Weekly Working Hours&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECT-OPTIONS: p_full FOR p0007-wostd OBLIGATORY.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Part Time Weekly Working Hours&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECT-OPTIONS: p_part FOR p0007-wostd OBLIGATORY.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Hiring Action&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECT-OPTIONS: p_hire FOR p0000-massn OBLIGATORY.&lt;/P&gt;&lt;P&gt;    SELECTION-SCREEN END OF BLOCK bl00.&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;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;  INCLUDE ZHAI_EQUITY                                                *&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;    DATA: fielda(10) VALUE 'ILINE-'.&lt;/P&gt;&lt;P&gt;    FIELD-SYMBOLS &amp;lt;a&amp;gt;.&lt;/P&gt;&lt;P&gt;"test&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  fill_equity_info&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;P_0109   text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_0110   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_equity_info.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Determine Ethnic Origin&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CASE p0077-racky.&lt;/P&gt;&lt;P&gt;        WHEN '01'.&lt;/P&gt;&lt;P&gt;          fielda+6(1) = 'B'. "Black&lt;/P&gt;&lt;P&gt;        WHEN '02'.&lt;/P&gt;&lt;P&gt;          fielda+6(1) = 'C'. "Coloured&lt;/P&gt;&lt;P&gt;        WHEN '03'.&lt;/P&gt;&lt;P&gt;          fielda+6(1) = 'I'. "Indian&lt;/P&gt;&lt;P&gt;        WHEN '04'.&lt;/P&gt;&lt;P&gt;          fielda+6(1) = 'W'. "White&lt;/P&gt;&lt;P&gt;        WHEN OTHERS.&lt;/P&gt;&lt;P&gt;          fielda+6(1) = 'W'. "White&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Determine Gender&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CASE p0002-gesch.&lt;/P&gt;&lt;P&gt;        WHEN '1'.&lt;/P&gt;&lt;P&gt;          fielda+7(1) = 'M'. "Male&lt;/P&gt;&lt;P&gt;        WHEN '2'.&lt;/P&gt;&lt;P&gt;          fielda+7(1) = 'F'. "Female&lt;/P&gt;&lt;P&gt;        WHEN OTHERS.&lt;/P&gt;&lt;P&gt;          fielda+7(1) = 'M'. "Male&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Determine Disability&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     IF p0004-sbart IS INITIAL.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF p0077-DISAB is initial.      "CR442696&lt;/P&gt;&lt;P&gt;        fielda+8(1) = 'N'. "Not Disabled&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        fielda+8(1) = 'D'. "Disabled&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ASSIGN (fielda) TO &amp;lt;a&amp;gt;.&lt;/P&gt;&lt;P&gt;      &amp;lt;a&amp;gt; = 1.&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;Get Total&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      fielda+6(1) = 'T'.&lt;/P&gt;&lt;P&gt;      ASSIGN (fielda) TO &amp;lt;a&amp;gt;.&lt;/P&gt;&lt;P&gt;      &amp;lt;a&amp;gt; = 1.&lt;/P&gt;&lt;P&gt;    ENDFORM.                    " fill_equity_info&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What might be problem?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Jun 2007 11:54:32 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/problem-when-exporting-to-excell/m-p/2342105#M516363</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-11T11:54:32Z</dc:date>
    </item>
    <item>
      <title>Re: problem when exporting to excell</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/problem-when-exporting-to-excell/m-p/2342106#M516364</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I can't able to understand ur code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Check this code..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
FORM DOWNLOAD_FILE.

  DATA: LT_TAB TYPE TABLE OF STRING.
  DATA: LR_TAB TYPE STRING,
        L_F_NETPR_VE(21) TYPE C,
        L_F_NETPR_UM(21) TYPE C,
        L_F_ERDAT_VE(10),
        L_F_ERDAT_UM(10),
        L_F_PLAN(21) TYPE C,
        L_F_IST(21) TYPE C,
        L_F_OBLIGO(21) TYPE C,
        L_F_WIP(21) TYPE C,
        LV_FILE TYPE STRING,
        L_F_COUNT TYPE I,
        L_F_DATUM(10).

  CLEAR: LT_TAB,LR_TAB.
  REFRESH: LT_TAB.

  CONCATENATE TEXT-U01 TEXT-U02 TEXT-U03 TEXT-U04 TEXT-U05
              TEXT-U07 TEXT-U08 TEXT-U09 TEXT-U10 TEXT-U11 TEXT-U12
              TEXT-U14 TEXT-U17 TEXT-U15 TEXT-U16 TEXT-U21 TEXT-U18
              TEXT-U19 TEXT-U20 INTO LR_TAB
              SEPARATED BY CON_TAB.
  APPEND LR_TAB TO LT_TAB.

  LOOP AT G_T_OUTTAB.
    CLEAR: L_F_NETPR_VE,L_F_NETPR_UM, L_F_ERDAT_VE, L_F_ERDAT_UM,
           L_F_PLAN,L_F_IST,L_F_OBLIGO.
    WRITE: G_T_OUTTAB-NETPR_VE TO L_F_NETPR_VE,
           G_T_OUTTAB-NETPR_UM TO L_F_NETPR_UM,
           G_T_OUTTAB-ERDAT_VE TO L_F_ERDAT_VE,
           G_T_OUTTAB-ERDAT_UM TO L_F_ERDAT_UM,
           G_T_OUTTAB-PLAN TO L_F_PLAN,
           G_T_OUTTAB-IST TO L_F_IST,
           G_T_OUTTAB-OBLIGO TO L_F_OBLIGO,
           G_T_OUTTAB-WIP TO L_F_WIP,
           SY-DATUM TO L_F_DATUM.
    CONCATENATE G_T_OUTTAB-PRATX G_T_OUTTAB-POSID G_T_OUTTAB-POST1
                G_T_OUTTAB-WWGBE G_T_OUTTAB-WWGFE G_T_OUTTAB-VERNA
                G_T_OUTTAB-STTXT_INT G_T_OUTTAB-STTXT_EXT
                L_F_NETPR_VE L_F_ERDAT_VE L_F_NETPR_UM L_F_ERDAT_UM
                L_F_PLAN L_F_IST L_F_OBLIGO L_F_WIP G_T_OUTTAB-VBELN_VE
                G_T_OUTTAB-VBELN_UM L_F_DATUM
                INTO LR_TAB SEPARATED BY CON_TAB.
    APPEND LR_TAB TO LT_TAB.
  ENDLOOP.

  IF PC = 'X'.
    LV_FILE = FILENAME.
    CALL FUNCTION 'GUI_DOWNLOAD'
         EXPORTING
              FILENAME                = LV_FILE
              FILETYPE                = 'ASC'
         TABLES
              DATA_TAB                = LT_TAB
         EXCEPTIONS
              FILE_WRITE_ERROR        = 1
              NO_BATCH                = 2
              GUI_REFUSE_FILETRANSFER = 3
              INVALID_TYPE            = 4
              NO_AUTHORITY            = 5
              UNKNOWN_ERROR           = 6
              HEADER_NOT_ALLOWED      = 7
              SEPARATOR_NOT_ALLOWED   = 8
              FILESIZE_NOT_ALLOWED    = 9
              HEADER_TOO_LONG         = 10
              DP_ERROR_CREATE         = 11
              DP_ERROR_SEND           = 12
              DP_ERROR_WRITE          = 13
              UNKNOWN_DP_ERROR        = 14
              ACCESS_DENIED           = 15
              DP_OUT_OF_MEMORY        = 16
              DISK_FULL               = 17
              DP_TIMEOUT              = 18
              FILE_NOT_FOUND          = 19
              DATAPROVIDER_EXCEPTION  = 20
              CONTROL_FLUSH_ERROR     = 21
              OTHERS                  = 22.
    IF SY-SUBRC &amp;lt;&amp;gt; 0.
      MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
              WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      LEAVE PROGRAM.
    ELSE.
      DESCRIBE TABLE LT_TAB LINES L_F_COUNT.
      SUBTRACT 1 FROM L_F_COUNT.
      MESSAGE I145 WITH L_F_COUNT FILENAME.
    ENDIF.

  ELSEIF AP = 'X'.
    OPEN DATASET FILENAME FOR OUTPUT IN TEXT MODE.
    IF SY-SUBRC NE 0.
      MESSAGE S041(S9) WITH FILENAME.
      EXIT.
    ENDIF.
    LOOP AT LT_TAB INTO LR_TAB.
      TRANSFER LR_TAB TO FILENAME.
    ENDLOOP.
    IF SY-SUBRC = 0.
      CLOSE DATASET FILENAME.
      DESCRIBE TABLE LT_TAB LINES L_F_COUNT.
      SUBTRACT 1 FROM L_F_COUNT.
      MESSAGE I145 WITH L_F_COUNT FILENAME.
    ENDIF.
  ENDIF.

ENDFORM.                    " DOWNLOAD_FILE

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REgards,&lt;/P&gt;&lt;P&gt;Vasanth&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Jun 2007 11:58:11 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/problem-when-exporting-to-excell/m-p/2342106#M516364</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-11T11:58:11Z</dc:date>
    </item>
  </channel>
</rss>

