<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: About HR Module in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/about-hr-module/m-p/2512594#M568275</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Gopi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In HR all PA* tables are usedd. All HRP* tables and all PA* transactions used.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Atish&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 12 Jul 2007 06:18:33 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-07-12T06:18:33Z</dc:date>
    <item>
      <title>About HR Module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/about-hr-module/m-p/2512592#M568273</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Gurus,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     I have an object in  SAP-HR module. so i want to know about HR module. what is the flow? what are the T-Codes? what are the Tables used?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 12 Jul 2007 06:15:51 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/about-hr-module/m-p/2512592#M568273</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-12T06:15:51Z</dc:date>
    </item>
    <item>
      <title>Re: About HR Module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/about-hr-module/m-p/2512593#M568274</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;refer to the wesite &lt;A href="https://community.sap.com/www.erpgenie.com" target="test_blank"&gt;www.erpgenie.com&lt;/A&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;Sharadendu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 12 Jul 2007 06:17:47 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/about-hr-module/m-p/2512593#M568274</guid>
      <dc:creator>sharadendu_agrawal</dc:creator>
      <dc:date>2007-07-12T06:17:47Z</dc:date>
    </item>
    <item>
      <title>Re: About HR Module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/about-hr-module/m-p/2512594#M568275</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Gopi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In HR all PA* tables are usedd. All HRP* tables and all PA* transactions used.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Atish&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 12 Jul 2007 06:18:33 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/about-hr-module/m-p/2512594#M568275</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-12T06:18:33Z</dc:date>
    </item>
    <item>
      <title>Re: About HR Module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/about-hr-module/m-p/2512595#M568276</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;HR:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;HR deals with the INFOTYPES which are similar to Tables in General ABAP.&lt;/P&gt;&lt;P&gt;There are different ways of fetching data from these infotypes.&lt;/P&gt;&lt;P&gt;There are different areas in HR LIKE Personal Admn, Orgn Management, Benefits, Time amangement, Event Management, Payroll etc&lt;/P&gt;&lt;P&gt;Infotypes for these areas are different from one another area.&lt;/P&gt;&lt;P&gt;storing of records data in each type of area is different&lt;/P&gt;&lt;P&gt;LDBS like PNP are used in HR programing.&lt;/P&gt;&lt;P&gt;Instead of Select.. we use some ROUTINES and PROVIDE..ENDPROVIDE.. etc &lt;/P&gt;&lt;P&gt;and in the case of Pay roll we use Clusters and we Import and Export them for data fetching.&lt;/P&gt;&lt;P&gt;On the whole Normal ABAP is different from HR abap.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For Personal Admn the Infotypes start with PA0000 to PA1999&lt;/P&gt;&lt;P&gt;Time Related Infotypes start with PA2000 to PA2999.&lt;/P&gt;&lt;P&gt;Orgn related Infotypes start with HRP1000 to HRP1999.&lt;/P&gt;&lt;P&gt;All custom developed infotypes stsrat with PA9000 onwards.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In payroll processing we use Clusters like PCL1,2,3 and 4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Instead of Select query we use PROVIDE and ENDPROVIDE..&lt;/P&gt;&lt;P&gt;You have to assign a Logical Database in the attributes PNP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Go through the SAp doc for HR programming and start doing.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapdevelopment.co.uk/hr/hrhome.htm" target="test_blank"&gt;http://www.sapdevelopment.co.uk/hr/hrhome.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;See:&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_46c/helpdata/en/4f/d5268a575e11d189270000e8322f96/content.htm" target="test_blank"&gt;http://help.sap.com/saphelp_46c/helpdata/en/4f/d5268a575e11d189270000e8322f96/content.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;see the sample HR report:&lt;/P&gt;&lt;P&gt;report zporgr0030&lt;/P&gt;&lt;P&gt;line-size 193&lt;/P&gt;&lt;P&gt;line-count 60(1)&lt;/P&gt;&lt;P&gt;no standard page heading&lt;/P&gt;&lt;P&gt;message-id zndc.&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;Database Tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;***********************************************************************&lt;/P&gt;&lt;P&gt;tables: pernr, " Logical PNP&lt;/P&gt;&lt;P&gt;t001p, " Personnel Subarea&lt;/P&gt;&lt;P&gt;t005t, " Country Descriptions&lt;/P&gt;&lt;P&gt;t500p, " Personnel Area&lt;/P&gt;&lt;P&gt;t501, " Employee Group&lt;/P&gt;&lt;P&gt;t503k, " Employee Subgroup&lt;/P&gt;&lt;P&gt;csks, " Cost Centers&lt;/P&gt;&lt;P&gt;cskt, " Cost Center Texts&lt;/P&gt;&lt;P&gt;t513c, " Job (Previous) Texts&lt;/P&gt;&lt;P&gt;t513s, " Job Titles&lt;/P&gt;&lt;P&gt;t517t, " Edn Est.Text&lt;/P&gt;&lt;P&gt;t518b, " Discipline Text&lt;/P&gt;&lt;P&gt;t519t, " Certificate Text&lt;/P&gt;&lt;P&gt;t528t, " Positions Texts&lt;/P&gt;&lt;P&gt;t538t, " Unit Text&lt;/P&gt;&lt;P&gt;pa0003. " Payroll Status&lt;/P&gt;&lt;P&gt;infotypes:&lt;/P&gt;&lt;P&gt;0000, " Actions&lt;/P&gt;&lt;P&gt;0001, " Organizational Assignment&lt;/P&gt;&lt;P&gt;0002, " Personal Data&lt;/P&gt;&lt;P&gt;0007, " Planned working time&lt;/P&gt;&lt;P&gt;0008, " Payroll Data&lt;/P&gt;&lt;P&gt;0022, " Education Data&lt;/P&gt;&lt;P&gt;0023, " Previous Employer data&lt;/P&gt;&lt;P&gt;0025, " Performance Appraisal Data&lt;/P&gt;&lt;P&gt;0041, " Date Spcifications&lt;/P&gt;&lt;P&gt;2001. " Absences&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;Declaration of Internal Tables&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;Internal Table for Personal Data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data: begin of pers_tab occurs 0,&lt;/P&gt;&lt;P&gt;pernr like pa0001-pernr, " Personal Number&lt;/P&gt;&lt;P&gt;ename like pa0001-ename, " Employee Name&lt;/P&gt;&lt;P&gt;trfgr like pa0008-trfgr, " Grade&lt;/P&gt;&lt;P&gt;natio like pa0002-natio, " Nationality&lt;/P&gt;&lt;P&gt;hdate like pa0041-dat01, " Hire Date&lt;/P&gt;&lt;P&gt;gbdat like pa0002-gbdat, " Birth Date&lt;/P&gt;&lt;P&gt;plans like pa0001-plans, " Position&lt;/P&gt;&lt;P&gt;werks like pa0001-werks, " Pers.Area&lt;/P&gt;&lt;P&gt;kostl like pa0001-kostl, " Cost Center&lt;/P&gt;&lt;P&gt;ctext(40), " Cost Center Text&lt;/P&gt;&lt;P&gt;ptext(25), " Position Text&lt;/P&gt;&lt;P&gt;ntext(15), " Nation Text&lt;/P&gt;&lt;P&gt;name1(23), " Location&lt;/P&gt;&lt;P&gt;end of pers_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Table for Payroll Data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data: begin of pay_tab occurs 0,&lt;/P&gt;&lt;P&gt;pernr like pa0008-pernr, " Personal Number&lt;/P&gt;&lt;P&gt;waers like pbwla-waers, " Grade&lt;/P&gt;&lt;P&gt;basic like pa0008-bet01, " Basic Pay&lt;/P&gt;&lt;P&gt;hra_allow like pa0008-bet01, " Housing Allowance&lt;/P&gt;&lt;P&gt;sup_allow like pa0008-bet01, " Supp. Allowance&lt;/P&gt;&lt;P&gt;soc_allow like pa0008-bet01, " Social Allowance&lt;/P&gt;&lt;P&gt;chl_allow like pa0008-bet01, " Child Allowance&lt;/P&gt;&lt;P&gt;fix_allow like pa0008-bet01, " Fixed Overtime&lt;/P&gt;&lt;P&gt;ra_allow like pa0008-bet01, " RA Allowance&lt;/P&gt;&lt;P&gt;per_allow like pa0008-bet01, " Perform. Allowance&lt;/P&gt;&lt;P&gt;pen_allow like pa0008-bet01, " Pension Allowance&lt;/P&gt;&lt;P&gt;oth_allow like pa0008-bet01, " Other Allowances&lt;/P&gt;&lt;P&gt;tot_allow like pa0008-bet01, " Total Allowances&lt;/P&gt;&lt;P&gt;end of pay_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Table for Educational Data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data: begin of edn_tab occurs 0,&lt;/P&gt;&lt;P&gt;pernr like pa0022-pernr, " Personal Number&lt;/P&gt;&lt;P&gt;ausbi like pa0022-ausbi, " Discipline Name&lt;/P&gt;&lt;P&gt;slart like pa0022-slart, " Edn Establishment&lt;/P&gt;&lt;P&gt;insti like pa0022-insti, " Institute&lt;/P&gt;&lt;P&gt;sland like pa0022-sland, " Country&lt;/P&gt;&lt;P&gt;slabs like pa0022-slabs, " Certificate&lt;/P&gt;&lt;P&gt;anzkl like pa0022-anzkl, " Duration&lt;/P&gt;&lt;P&gt;anzeh like pa0022-anzeh, " Unit for Duration&lt;/P&gt;&lt;P&gt;atext like t518b-atext, " Discipline Text&lt;/P&gt;&lt;P&gt;stext like t517t-stext, " Edn Est.Text&lt;/P&gt;&lt;P&gt;landx like t005t-landx, " Country Text&lt;/P&gt;&lt;P&gt;ctext like t519t-stext, " Certificate Text&lt;/P&gt;&lt;P&gt;etext like t538t-etext, " Unit Text&lt;/P&gt;&lt;P&gt;end of edn_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Table for Previous Employment Data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data: begin of pemp_tab occurs 0,&lt;/P&gt;&lt;P&gt;pernr like pa0023-pernr, " Personal Number&lt;/P&gt;&lt;P&gt;arbgb like pa0023-arbgb, " Previous Employer&lt;/P&gt;&lt;P&gt;begda like pa0023-begda, " Start Date&lt;/P&gt;&lt;P&gt;endda like pa0023-endda, " End Date&lt;/P&gt;&lt;P&gt;taete like pa0023-taete, " Last Position&lt;/P&gt;&lt;P&gt;land1 like pa0023-land1, " Country&lt;/P&gt;&lt;P&gt;stltx like t513s-stltx, " Position Text&lt;/P&gt;&lt;P&gt;landx like t005t-landx, " Country Text&lt;/P&gt;&lt;P&gt;end of pemp_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Table for Job History Data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data: begin of job_tab occurs 0,&lt;/P&gt;&lt;P&gt;pernr like pa0001-pernr, " Personal Number&lt;/P&gt;&lt;P&gt;begda like pa0001-begda, " Promotion Date&lt;/P&gt;&lt;P&gt;plans like pa0001-plans, " Position&lt;/P&gt;&lt;P&gt;stell like pa0001-stell, " Job Key&lt;/P&gt;&lt;P&gt;stltx like t513s-stltx, " Job Text&lt;/P&gt;&lt;P&gt;ptext like t528t-plstx, " Position Text&lt;/P&gt;&lt;P&gt;end of job_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Table for Performance Appraisal Data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data: begin of app_tab occurs 0,&lt;/P&gt;&lt;P&gt;pernr like pa0001-pernr, " Personal Number&lt;/P&gt;&lt;P&gt;year(4) type c, " Current Year&lt;/P&gt;&lt;P&gt;appr(35) type c, " C Y Appraisal&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;year1(4) type c, " Last Year&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;appr1(35) type c, " Last Year Appraisal&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;year2(4) type c,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;appr2(35) type c,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;year3(4) type c,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;appr3(35) type c,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;year4(4) type c,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;appr4(35) type c,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;end of app_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Table for Performance Appraisal Data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data: begin of app1_tab occurs 0,&lt;/P&gt;&lt;P&gt;year(4) type c, " Year&lt;/P&gt;&lt;P&gt;appr(35) type c, " Appraisal&lt;/P&gt;&lt;P&gt;end of app1_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Table to get the Payroll Amounts&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data wage_tab like pbwla occurs 0 with header line.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table for retreiving Employee Appraisals&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data app_in_tab like hrsobid occurs 0 with header line .&lt;/P&gt;&lt;P&gt;data app_out_tab like hrpe_profa occurs 0 with header line .&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;Declaration of Variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;***********************************************************************&lt;/P&gt;&lt;P&gt;data : v_year(4) type c,&lt;/P&gt;&lt;P&gt;v_ayear(4) type c,&lt;/P&gt;&lt;P&gt;v_cyear(4) type c,&lt;/P&gt;&lt;P&gt;v_year1(4) type c,&lt;/P&gt;&lt;P&gt;v_year2(4) type c,&lt;/P&gt;&lt;P&gt;v_year3(4) type c,&lt;/P&gt;&lt;P&gt;v_year4(4) type c,&lt;/P&gt;&lt;P&gt;v_year5(4) type c,&lt;/P&gt;&lt;P&gt;v_year6(4) type c,&lt;/P&gt;&lt;P&gt;v_mon(2) type c,&lt;/P&gt;&lt;P&gt;v_date2 like sy-datum,&lt;/P&gt;&lt;P&gt;v_date3 like sy-datum,&lt;/P&gt;&lt;P&gt;v_date like sy-datum,&lt;/P&gt;&lt;P&gt;v_date1 like sy-datum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***********************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Declaration of Constants&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;***********************************************************************&lt;/P&gt;&lt;P&gt;constants : c_x type c value 'X', " Sign&lt;/P&gt;&lt;P&gt;c_pernr(8) type n value '00000000', " Pernr&lt;/P&gt;&lt;P&gt;c_p like hrp1007-otype value 'P', " Object Type&lt;/P&gt;&lt;P&gt;c_01 like hrp1001-plvar value '01', " Version&lt;/P&gt;&lt;P&gt;c_val1(2) type c value '31', " Date Type&lt;/P&gt;&lt;P&gt;c_val2(2) type c value '12', " Date Type&lt;/P&gt;&lt;P&gt;c_val like p0041-dar01 value '01', " Date Type&lt;/P&gt;&lt;P&gt;c_1 like pernr-persg value '1', " Emp Group&lt;/P&gt;&lt;P&gt;c_type like hrp1001-otype value 'S', " Object Type&lt;/P&gt;&lt;P&gt;c_date1 like sy-datum value '18000101', " Date&lt;/P&gt;&lt;P&gt;c_date2 like sy-datum value '99991231', " Date&lt;/P&gt;&lt;P&gt;c_lga01 like pa0008-lga01 value '0101', " Wage Type&lt;/P&gt;&lt;P&gt;c_lga02 like pa0008-lga01 value '0102', " Wage Type&lt;/P&gt;&lt;P&gt;c_lga03 like pa0008-lga01 value '0103', " Wage Type&lt;/P&gt;&lt;P&gt;c_lga04 like pa0008-lga01 value '0105', " Wage Type&lt;/P&gt;&lt;P&gt;c_lga05 like pa0008-lga01 value '0109', " Wage Type&lt;/P&gt;&lt;P&gt;c_lga06 like pa0008-lga01 value '0110', " Wage Type&lt;/P&gt;&lt;P&gt;c_lga07 like pa0008-lga01 value '0114', " Wage Type&lt;/P&gt;&lt;P&gt;c_lga08 like pa0008-lga01 value '0116', " Wage Type&lt;/P&gt;&lt;P&gt;c_lga09 like pa0008-lga01 value '0267', " Wage Type&lt;/P&gt;&lt;P&gt;c_kokrs like cskt-kokrs value '1000'. " Controlling Area&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;Selection Screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;***********************************************************************&lt;/P&gt;&lt;P&gt;selection-screen begin of block b1 with frame title text-003.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;selection-screen begin of line.&lt;/P&gt;&lt;P&gt;selection-screen comment 1(33) text-060.&lt;/P&gt;&lt;P&gt;parameters: r_all radiobutton group rb1.&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 begin of line.&lt;/P&gt;&lt;P&gt;selection-screen comment 1(33) text-020.&lt;/P&gt;&lt;P&gt;parameters: r_per radiobutton group rb1.&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 begin of line.&lt;/P&gt;&lt;P&gt;selection-screen comment 1(33) text-021.&lt;/P&gt;&lt;P&gt;parameters: r_pay radiobutton group rb1.&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 begin of line.&lt;/P&gt;&lt;P&gt;selection-screen comment 1(33) text-022.&lt;/P&gt;&lt;P&gt;parameters: r_edn radiobutton group rb1.&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 begin of line.&lt;/P&gt;&lt;P&gt;selection-screen comment 1(33) text-023.&lt;/P&gt;&lt;P&gt;parameters: r_pemp radiobutton group rb1.&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 begin of line.&lt;/P&gt;&lt;P&gt;selection-screen comment 1(33) text-024.&lt;/P&gt;&lt;P&gt;parameters: r_job radiobutton group rb1.&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 begin of line.&lt;/P&gt;&lt;P&gt;selection-screen comment 1(33) text-025.&lt;/P&gt;&lt;P&gt;parameters: r_app radiobutton group rb1.&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 b1.&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;At selection-screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;***********************************************************************&lt;/P&gt;&lt;P&gt;at selection-screen.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Validate the Selection Screen fields&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform validate_screen.&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;Start-of-Selection&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;***********************************************************************&lt;/P&gt;&lt;P&gt;start-of-selection.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Selection of Period&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform get_period.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get PERNR from LDB&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;get pernr.&lt;/P&gt;&lt;P&gt;if pernr-persg eq c_1 or pernr-pernr ne c_pernr.&lt;/P&gt;&lt;P&gt;if r_all eq c_x.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Personal data from PA0001,PA0002, PA0008, PA0041&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform get_pers_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Payroll data from PA0008&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform get_pay_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Education data from PA0022&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform get_edn_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Previous Employment data from PA0023&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform get_pemp_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Job History data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform get_job_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Performance Appraisal data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform get_app_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;elseif r_per eq c_x.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Personal data from PA0001,PA0002, PA0008, PA0041&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform get_pers_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;elseif r_pay eq c_x.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Payroll data from PA0008&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform get_pay_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;elseif r_edn eq c_x.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Education data from PA0022&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform get_edn_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;elseif r_pemp eq c_x.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Previous Employment data from PA0023&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform get_pemp_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;elseif r_job eq c_x.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Job History data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform get_job_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;elseif r_app eq c_x.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Performance Appraisal data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform get_app_data.&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;***********************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Top-of-page&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;***********************************************************************&lt;/P&gt;&lt;P&gt;top-of-page.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Write the Report and Column Headings&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform top_of_page.&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;End-of-Page&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;***********************************************************************&lt;/P&gt;&lt;P&gt;end-of-page.&lt;/P&gt;&lt;P&gt;perform end_of_page.&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;End-of-Selection&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;***********************************************************************&lt;/P&gt;&lt;P&gt;end-of-selection.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Display the Output Report.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform display_report.&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;Form-Routines&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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 validate_screen&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;Validation of selection Screen fields&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 validate_screen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Validation of Personnel Number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear pa0003.&lt;/P&gt;&lt;P&gt;if not pnppernr[] is initial.&lt;/P&gt;&lt;P&gt;select pernr&lt;/P&gt;&lt;P&gt;from pa0003 up to 1 rows&lt;/P&gt;&lt;P&gt;into pa0003-pernr&lt;/P&gt;&lt;P&gt;where pernr in pnppernr.&lt;/P&gt;&lt;P&gt;endselect.&lt;/P&gt;&lt;P&gt;if sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;message e999 with 'Incorrect Personnel Number Entered'(001).&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Validation of Cost Center&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear csks.&lt;/P&gt;&lt;P&gt;if not pnpkostl[] is initial.&lt;/P&gt;&lt;P&gt;select single kostl&lt;/P&gt;&lt;P&gt;into csks-kostl&lt;/P&gt;&lt;P&gt;from csks&lt;/P&gt;&lt;P&gt;where kostl in pnpkostl.&lt;/P&gt;&lt;P&gt;if sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;message e999 with 'Invalid Cost Center'(002).&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Validation of Personnel Area&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear t500p.&lt;/P&gt;&lt;P&gt;if not pnpwerks[] is initial.&lt;/P&gt;&lt;P&gt;select persa&lt;/P&gt;&lt;P&gt;from t500p up to 1 rows&lt;/P&gt;&lt;P&gt;into t500p-persa&lt;/P&gt;&lt;P&gt;where persa in pnpwerks.&lt;/P&gt;&lt;P&gt;endselect.&lt;/P&gt;&lt;P&gt;if sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;message e999 with 'Incorrect Personnel Area Entered'(004).&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Validation of Personnel Sub Area&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear t001p.&lt;/P&gt;&lt;P&gt;if not pnpbtrtl[] is initial.&lt;/P&gt;&lt;P&gt;select btrtl&lt;/P&gt;&lt;P&gt;from t001p up to 1 rows&lt;/P&gt;&lt;P&gt;into t001p-btrtl&lt;/P&gt;&lt;P&gt;where btrtl in pnpbtrtl.&lt;/P&gt;&lt;P&gt;endselect.&lt;/P&gt;&lt;P&gt;if sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;message e999 with 'Incorrect Personnel Sub Area Entered'(005).&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Validation of Employee Group&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear t501.&lt;/P&gt;&lt;P&gt;if not pnppersg[] is initial.&lt;/P&gt;&lt;P&gt;select persg&lt;/P&gt;&lt;P&gt;from t501 up to 1 rows&lt;/P&gt;&lt;P&gt;into t501-persg&lt;/P&gt;&lt;P&gt;where persg in pnppersg.&lt;/P&gt;&lt;P&gt;endselect.&lt;/P&gt;&lt;P&gt;if sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;message e999 with 'Incorrect Employee Group Entered'(006).&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Validation of Employee Sub Group&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear t503k.&lt;/P&gt;&lt;P&gt;if not pnppersk[] is initial.&lt;/P&gt;&lt;P&gt;select persk&lt;/P&gt;&lt;P&gt;from t503k up to 1 rows&lt;/P&gt;&lt;P&gt;into t503k-persk&lt;/P&gt;&lt;P&gt;where persk in pnppersk.&lt;/P&gt;&lt;P&gt;endselect.&lt;/P&gt;&lt;P&gt;if sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;message e999 with 'Incorrect Employee Sub Group Entered'(007).&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endform. "validate_screen&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_period&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;Get the Correct Period based on Selection screen selection&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_period.&lt;/P&gt;&lt;P&gt;clear: v_year,v_mon, v_date, v_date1.&lt;/P&gt;&lt;P&gt;v_year = sy-datum+0(4).&lt;/P&gt;&lt;P&gt;v_mon = sy-datum+4(2).&lt;/P&gt;&lt;P&gt;if pnptimr1 = c_x. " Current Date&lt;/P&gt;&lt;P&gt;pnpbegda = sy-datum.&lt;/P&gt;&lt;P&gt;pnpendda = sy-datum.&lt;/P&gt;&lt;P&gt;elseif pnptimr2 = c_x. " Current Month&lt;/P&gt;&lt;P&gt;concatenate v_year v_mon c_val into v_date.&lt;/P&gt;&lt;P&gt;concatenate v_year v_mon c_val1 into v_date1.&lt;/P&gt;&lt;P&gt;pnpbegda = v_date.&lt;/P&gt;&lt;P&gt;pnpendda = v_date1.&lt;/P&gt;&lt;P&gt;elseif pnptimr3 = c_x. " Current Year&lt;/P&gt;&lt;P&gt;concatenate v_year c_val c_val into v_date.&lt;/P&gt;&lt;P&gt;concatenate v_year c_val2 c_val1 into v_date1.&lt;/P&gt;&lt;P&gt;pnpbegda = v_date.&lt;/P&gt;&lt;P&gt;pnpendda = v_date1.&lt;/P&gt;&lt;P&gt;elseif pnptimr4 = c_x. " Upto Today&lt;/P&gt;&lt;P&gt;pnpbegda = c_date1.&lt;/P&gt;&lt;P&gt;pnpendda = sy-datum.&lt;/P&gt;&lt;P&gt;elseif pnptimr5 = c_x. " From Today&lt;/P&gt;&lt;P&gt;pnpbegda = sy-datum.&lt;/P&gt;&lt;P&gt;pnpendda = c_date2.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;if ( pnpbegda is initial and pnpendda is initial ).&lt;/P&gt;&lt;P&gt;pnpbegda = c_date1.&lt;/P&gt;&lt;P&gt;pnpendda = c_date2.&lt;/P&gt;&lt;P&gt;elseif pnpbegda is initial and not pnpendda is initial.&lt;/P&gt;&lt;P&gt;pnpbegda = c_date1.&lt;/P&gt;&lt;P&gt;pnpendda = pnpendda.&lt;/P&gt;&lt;P&gt;elseif not ( pnpbegda is initial and pnpendda is initial ).&lt;/P&gt;&lt;P&gt;pnpbegda = pnpbegda.&lt;/P&gt;&lt;P&gt;pnpendda = pnpendda.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endform. "get_period&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_pers_data&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;Get the Personal Data from PA0001,PA0002,PA0008, PA0041&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_pers_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get data from Respective Infotypes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;rp_provide_from_last p0001 space pnpbegda pnpendda.&lt;/P&gt;&lt;P&gt;rp_provide_from_last p0002 space pnpbegda pnpendda.&lt;/P&gt;&lt;P&gt;rp_provide_from_last p0008 space pnpbegda pnpendda.&lt;/P&gt;&lt;P&gt;rp_provide_from_last p0041 space pnpbegda pnpendda.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;pers_tab-pernr = p0001-pernr.&lt;/P&gt;&lt;P&gt;pers_tab-ename = p0001-ename.&lt;/P&gt;&lt;P&gt;pers_tab-werks = p0001-werks.&lt;/P&gt;&lt;P&gt;pers_tab-plans = p0001-plans.&lt;/P&gt;&lt;P&gt;pers_tab-kostl = p0001-kostl.&lt;/P&gt;&lt;P&gt;pers_tab-gbdat = p0002-gbdat.&lt;/P&gt;&lt;P&gt;pers_tab-trfgr = p0008-trfgr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Engaged Date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;read table p0041 with key dar01 = c_val.&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;pers_tab-hdate = p0041-dat01.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Cost Center Text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear cskt-ltext.&lt;/P&gt;&lt;P&gt;select single ltext into cskt-ltext from cskt&lt;/P&gt;&lt;P&gt;where spras = sy-langu and&lt;/P&gt;&lt;P&gt;kokrs = c_kokrs and&lt;/P&gt;&lt;P&gt;kostl = p0001-kostl.&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;pers_tab-ctext = cskt-ltext.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Position Text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear t528t-plstx.&lt;/P&gt;&lt;P&gt;select single plstx into t528t-plstx from t528t&lt;/P&gt;&lt;P&gt;where plans = p0001-plans and&lt;/P&gt;&lt;P&gt;otype = c_type and&lt;/P&gt;&lt;P&gt;sprsl = sy-langu.&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;pers_tab-ptext = t528t-plstx.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Nationality&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear t005t-natio.&lt;/P&gt;&lt;P&gt;select single natio into t005t-natio from t005t&lt;/P&gt;&lt;P&gt;where spras = sy-langu and&lt;/P&gt;&lt;P&gt;land1 = p0002-natio.&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;pers_tab-ntext = t005t-natio.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Location (Personal Area) Text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear t500p-name1.&lt;/P&gt;&lt;P&gt;select single name1 into t500p-name1 from t500p&lt;/P&gt;&lt;P&gt;where persa = p0001-werks.&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;pers_tab-name1 = t500p-name1.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;append pers_tab.&lt;/P&gt;&lt;P&gt;clear pers_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;sort pers_tab by pernr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. "get_pers_data&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_pay_data&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;Get the Payroll Data from Infotype 0008&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_pay_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Payroll data from Respective Infotypes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;rp_provide_from_last p0008 space pnpbegda pnpendda.&lt;/P&gt;&lt;P&gt;pay_tab-pernr = pernr-pernr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;call function 'RP_FILL_WAGE_TYPE_TABLE_EXT'&lt;/P&gt;&lt;P&gt;exporting&lt;/P&gt;&lt;P&gt;appli = 'E'&lt;/P&gt;&lt;P&gt;begda = p0008-begda&lt;/P&gt;&lt;P&gt;endda = p0008-endda&lt;/P&gt;&lt;P&gt;infty = '0008'&lt;/P&gt;&lt;P&gt;objps = ' '&lt;/P&gt;&lt;P&gt;tclas = 'A'&lt;/P&gt;&lt;P&gt;pernr = pernr-pernr&lt;/P&gt;&lt;P&gt;seqnr = ' '&lt;/P&gt;&lt;P&gt;subty = '0 '&lt;/P&gt;&lt;P&gt;dlspl = 'X'&lt;/P&gt;&lt;P&gt;msgflg = ''&lt;/P&gt;&lt;P&gt;nordct = ''&lt;/P&gt;&lt;P&gt;tables&lt;/P&gt;&lt;P&gt;pp0001 = p0001&lt;/P&gt;&lt;P&gt;pp0007 = p0007&lt;/P&gt;&lt;P&gt;pp0008 = p0008&lt;/P&gt;&lt;P&gt;ppbwla = wage_tab&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;PP0230 =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;PP0014 =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;PP0015 =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;PP0052 =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ERROR_AT_INDIRECT_EVALUATION = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OTHERS = 2&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;.&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;loop at wage_tab.&lt;/P&gt;&lt;P&gt;pay_tab-waers = wage_tab-waers.&lt;/P&gt;&lt;P&gt;case wage_tab-lgart.&lt;/P&gt;&lt;P&gt;when c_lga01.&lt;/P&gt;&lt;P&gt;pay_tab-basic = wage_tab-betrg.&lt;/P&gt;&lt;P&gt;when c_lga02.&lt;/P&gt;&lt;P&gt;pay_tab-sup_allow = wage_tab-betrg.&lt;/P&gt;&lt;P&gt;when c_lga03.&lt;/P&gt;&lt;P&gt;pay_tab-hra_allow = wage_tab-betrg.&lt;/P&gt;&lt;P&gt;when c_lga04.&lt;/P&gt;&lt;P&gt;pay_tab-chl_allow = wage_tab-betrg.&lt;/P&gt;&lt;P&gt;when c_lga05.&lt;/P&gt;&lt;P&gt;pay_tab-soc_allow = wage_tab-betrg.&lt;/P&gt;&lt;P&gt;when c_lga06.&lt;/P&gt;&lt;P&gt;pay_tab-fix_allow = wage_tab-betrg.&lt;/P&gt;&lt;P&gt;when c_lga07.&lt;/P&gt;&lt;P&gt;pay_tab-ra_allow = wage_tab-betrg.&lt;/P&gt;&lt;P&gt;when c_lga08.&lt;/P&gt;&lt;P&gt;pay_tab-per_allow = wage_tab-betrg.&lt;/P&gt;&lt;P&gt;when c_lga09.&lt;/P&gt;&lt;P&gt;pay_tab-pen_allow = wage_tab-betrg.&lt;/P&gt;&lt;P&gt;when others.&lt;/P&gt;&lt;P&gt;pay_tab-oth_allow = pay_tab-oth_allow + wage_tab-betrg.&lt;/P&gt;&lt;P&gt;endcase.&lt;/P&gt;&lt;P&gt;pay_tab-tot_allow = pay_tab-basic + pay_tab-sup_allow +&lt;/P&gt;&lt;P&gt;pay_tab-hra_allow + pay_tab-chl_allow +&lt;/P&gt;&lt;P&gt;pay_tab-soc_allow + pay_tab-fix_allow +&lt;/P&gt;&lt;P&gt;pay_tab-ra_allow + pay_tab-per_allow +&lt;/P&gt;&lt;P&gt;pay_tab-oth_allow - pay_tab-pen_allow.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;append pay_tab.&lt;/P&gt;&lt;P&gt;clear pay_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. "get_pay_data&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_edn_data&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;Get the Education Data from Infotype 0022&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_edn_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Education data from Respective Infotypes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;loop at p0022 where pernr = pernr-pernr.&lt;/P&gt;&lt;P&gt;edn_tab-pernr = pernr-pernr.&lt;/P&gt;&lt;P&gt;edn_tab-ausbi = p0022-ausbi.&lt;/P&gt;&lt;P&gt;edn_tab-slart = p0022-slart.&lt;/P&gt;&lt;P&gt;edn_tab-insti = p0022-insti.&lt;/P&gt;&lt;P&gt;edn_tab-sland = p0022-sland.&lt;/P&gt;&lt;P&gt;edn_tab-slabs = p0022-slabs.&lt;/P&gt;&lt;P&gt;edn_tab-anzkl = p0022-anzkl.&lt;/P&gt;&lt;P&gt;edn_tab-anzeh = p0022-anzeh.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Discipline Text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear t518b-atext.&lt;/P&gt;&lt;P&gt;select single atext into t518b-atext from t518b&lt;/P&gt;&lt;P&gt;where langu = sy-langu and&lt;/P&gt;&lt;P&gt;ausbi = p0022-ausbi.&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;edn_tab-atext = t518b-atext.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Edn Establishment Text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear t517t-stext.&lt;/P&gt;&lt;P&gt;select single stext into t517t-stext from t517t&lt;/P&gt;&lt;P&gt;where slart = p0022-slart and&lt;/P&gt;&lt;P&gt;sprsl = sy-langu.&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;edn_tab-stext = t517t-stext.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Certificate Text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear t519t-stext.&lt;/P&gt;&lt;P&gt;select single stext into t519t-stext from t519t&lt;/P&gt;&lt;P&gt;where slabs = p0022-slabs and&lt;/P&gt;&lt;P&gt;sprsl = sy-langu.&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;edn_tab-ctext = t519t-stext.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Unit Text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear t538t-etext.&lt;/P&gt;&lt;P&gt;select single etext into t538t-etext from t538t&lt;/P&gt;&lt;P&gt;where zeinh = p0022-anzeh and&lt;/P&gt;&lt;P&gt;sprsl = sy-langu.&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;edn_tab-etext = t538t-etext.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Country Description&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear t005t-landx.&lt;/P&gt;&lt;P&gt;select single landx into t005t-landx from t005t&lt;/P&gt;&lt;P&gt;where spras = sy-langu and&lt;/P&gt;&lt;P&gt;land1 = p0022-sland.&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;edn_tab-landx = t005t-landx.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;append edn_tab.&lt;/P&gt;&lt;P&gt;clear edn_tab.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;endform. "edn_data&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_pemp_data&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;Get the Previous Employment Data from Infotype 0023&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_pemp_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Previous Employment data from Respective Infotypes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;loop at p0023 where pernr = pernr-pernr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;pemp_tab-pernr = pernr-pernr.&lt;/P&gt;&lt;P&gt;pemp_tab-arbgb = p0023-arbgb.&lt;/P&gt;&lt;P&gt;pemp_tab-begda = p0023-begda.&lt;/P&gt;&lt;P&gt;pemp_tab-endda = p0023-endda.&lt;/P&gt;&lt;P&gt;pemp_tab-taete = p0023-taete.&lt;/P&gt;&lt;P&gt;pemp_tab-land1 = p0023-land1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Last Job Text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear t513c-ltext.&lt;/P&gt;&lt;P&gt;select single ltext into t513c-ltext from t513c&lt;/P&gt;&lt;P&gt;where taete = pemp_tab-taete and&lt;/P&gt;&lt;P&gt;spras = sy-langu.&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;pemp_tab-stltx = t513c-ltext.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Country Description&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear t005t-landx.&lt;/P&gt;&lt;P&gt;select single landx into t005t-landx from t005t&lt;/P&gt;&lt;P&gt;where spras = sy-langu and&lt;/P&gt;&lt;P&gt;land1 = pemp_tab-land1.&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;pemp_tab-landx = t005t-landx.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;append pemp_tab.&lt;/P&gt;&lt;P&gt;clear pemp_tab.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;sort pemp_tab by pernr.&lt;/P&gt;&lt;P&gt;endform. "pemp_data&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_job_data&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;Get the Job History Data from Infotype&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_job_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Job History data from Respective Infotypes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;loop at p0001 where pernr = pernr-pernr.&lt;/P&gt;&lt;P&gt;job_tab-pernr = pernr-pernr.&lt;/P&gt;&lt;P&gt;job_tab-begda = p0001-begda.&lt;/P&gt;&lt;P&gt;job_tab-plans = p0001-plans.&lt;/P&gt;&lt;P&gt;job_tab-stell = p0001-stell.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Last Job Text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear t513s-stltx.&lt;/P&gt;&lt;P&gt;select single stltx into t513s-stltx from t513s&lt;/P&gt;&lt;P&gt;where stell = job_tab-stell and&lt;/P&gt;&lt;P&gt;sprsl = sy-langu.&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;job_tab-stltx = t513s-stltx.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Position Text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;clear t528t-plstx.&lt;/P&gt;&lt;P&gt;select single plstx into t528t-plstx from t528t&lt;/P&gt;&lt;P&gt;where plans = job_tab-plans and&lt;/P&gt;&lt;P&gt;otype = c_type and&lt;/P&gt;&lt;P&gt;sprsl = sy-langu.&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;job_tab-ptext = t528t-plstx.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;append job_tab.&lt;/P&gt;&lt;P&gt;clear job_tab.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;sort job_tab by pernr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. "get_job_data&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_app_data&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;Get the Performance Appraisal Data from Infotype&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_app_data.&lt;/P&gt;&lt;P&gt;clear: v_cyear, v_year1, v_year2, v_year3, v_year4,&lt;/P&gt;&lt;P&gt;v_year5, v_year6, v_ayear, v_date2, v_date3.&lt;/P&gt;&lt;P&gt;v_cyear = sy-datum+0(4) - 1.&lt;/P&gt;&lt;P&gt;v_year1 = v_cyear - 1.&lt;/P&gt;&lt;P&gt;v_year2 = v_cyear - 2.&lt;/P&gt;&lt;P&gt;v_year3 = v_cyear - 3.&lt;/P&gt;&lt;P&gt;v_year4 = v_cyear - 4.&lt;/P&gt;&lt;P&gt;v_year5 = v_cyear - 5.&lt;/P&gt;&lt;P&gt;v_year6 = v_cyear - 6.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;concatenate v_cyear c_date2+4(4) into v_date2.&lt;/P&gt;&lt;P&gt;concatenate v_year6 c_date1+4(4) into v_date3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clear: app_in_tab, app_out_tab.&lt;/P&gt;&lt;P&gt;refresh: app_in_tab, app_out_tab.&lt;/P&gt;&lt;P&gt;app_in_tab-plvar = c_01.&lt;/P&gt;&lt;P&gt;app_in_tab-otype = c_p.&lt;/P&gt;&lt;P&gt;app_in_tab-sobid = pernr-pernr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;append app_in_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get Appraisals data from Respective Infotypes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;call function 'RHPA_APPRAISEES_APP_READ'&lt;/P&gt;&lt;P&gt;exporting&lt;/P&gt;&lt;P&gt;begda = v_date3&lt;/P&gt;&lt;P&gt;endda = v_date2&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;WITH_STEXT = 'X'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;WITH_ADD_INFO = 'X'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;tables&lt;/P&gt;&lt;P&gt;appraisees = app_in_tab&lt;/P&gt;&lt;P&gt;appraisals = app_out_tab&lt;/P&gt;&lt;P&gt;exceptions&lt;/P&gt;&lt;P&gt;no_authority = 1&lt;/P&gt;&lt;P&gt;undefined = 2&lt;/P&gt;&lt;P&gt;others = 3&lt;/P&gt;&lt;P&gt;.&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;sort app_out_tab by sobid vbegd vendd appraisal_adate descending .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;delete adjacent duplicates from app_out_tab&lt;/P&gt;&lt;P&gt;comparing sobid vbegd vendd.&lt;/P&gt;&lt;P&gt;loop at app_out_tab where appraisal_histo = 'X' .&lt;/P&gt;&lt;P&gt;condense app_out_tab-appraisal_result.&lt;/P&gt;&lt;P&gt;app1_tab-year = app_out_tab-vendd+0(4).&lt;/P&gt;&lt;P&gt;app1_tab-appr = app_out_tab-appraisal_result_text.&lt;/P&gt;&lt;P&gt;append app1_tab.&lt;/P&gt;&lt;P&gt;clear app1_tab.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;sort app1_tab by year descending.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at app1_tab.&lt;/P&gt;&lt;P&gt;app_tab-pernr = pernr-pernr.&lt;/P&gt;&lt;P&gt;move-corresponding app1_tab to app_tab.&lt;/P&gt;&lt;P&gt;append app_tab.&lt;/P&gt;&lt;P&gt;clear: app1_tab, app_tab.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;refresh app1_tab.&lt;/P&gt;&lt;P&gt;sort app_tab by pernr.&lt;/P&gt;&lt;P&gt;delete app_tab where year = ' ' and appr = ' ' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. "get_app_data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form top_of_page&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Write the Report and Column Headings&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;skip.&lt;/P&gt;&lt;P&gt;format color col_heading on.&lt;/P&gt;&lt;P&gt;if r_all eq c_x.&lt;/P&gt;&lt;P&gt;write: /1(193) 'NATIONAL DRILLING COMPANY'(009) centered,&lt;/P&gt;&lt;P&gt;/1(193) 'Employee Details Report'(066) centered.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;elseif r_per eq c_x.&lt;/P&gt;&lt;P&gt;write: /1(193) 'NATIONAL DRILLING COMPANY'(009) centered,&lt;/P&gt;&lt;P&gt;/1(193) 'Employee Details - Personal Data'(010)&lt;/P&gt;&lt;P&gt;centered.&lt;/P&gt;&lt;P&gt;elseif r_pay eq c_x.&lt;/P&gt;&lt;P&gt;write: /1(172) 'NATIONAL DRILLING COMPANY'(009) centered,&lt;/P&gt;&lt;P&gt;/1(172) 'Employee Details - Payroll Data'(027)&lt;/P&gt;&lt;P&gt;centered.&lt;/P&gt;&lt;P&gt;elseif r_edn eq c_x.&lt;/P&gt;&lt;P&gt;write: /1(172) 'NATIONAL DRILLING COMPANY'(009) centered,&lt;/P&gt;&lt;P&gt;/1(172) 'Employee Details - Education Data'(028)&lt;/P&gt;&lt;P&gt;centered.&lt;/P&gt;&lt;P&gt;elseif r_pemp eq c_x.&lt;/P&gt;&lt;P&gt;write: /1(97) 'NATIONAL DRILLING COMPANY'(009) centered,&lt;/P&gt;&lt;P&gt;/1(97) 'Employee Details - Previous Employment Data'(029)&lt;/P&gt;&lt;P&gt;centered.&lt;/P&gt;&lt;P&gt;elseif r_job eq c_x.&lt;/P&gt;&lt;P&gt;write: /1(75) 'NATIONAL DRILLING COMPANY'(009) centered,&lt;/P&gt;&lt;P&gt;/1(75) 'Employee Details - Job History Data'(030)&lt;/P&gt;&lt;P&gt;centered.&lt;/P&gt;&lt;P&gt;elseif r_app eq c_x.&lt;/P&gt;&lt;P&gt;write: /1(192) 'NATIONAL DRILLING COMPANY'(009) centered,&lt;/P&gt;&lt;P&gt;/1(192) 'Employee Details - Performance Appraisal Data'(031)&lt;/P&gt;&lt;P&gt;centered.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;format color off.&lt;/P&gt;&lt;P&gt;if pnptimr1 = c_x. " Current Date&lt;/P&gt;&lt;P&gt;write: /2 'Period From :'(008), sy-datum,&lt;/P&gt;&lt;P&gt;'To:'(019), sy-datum.&lt;/P&gt;&lt;P&gt;elseif pnptimr2 = c_x. " Current Month&lt;/P&gt;&lt;P&gt;write: /2 'Period From :'(008), v_date, 'To:'(019), v_date1.&lt;/P&gt;&lt;P&gt;elseif pnptimr3 = c_x. " Current Year&lt;/P&gt;&lt;P&gt;write: /2 'Period From :'(008), v_date, 'To:'(019), v_date1.&lt;/P&gt;&lt;P&gt;elseif pnptimr4 = c_x. " Upto Today&lt;/P&gt;&lt;P&gt;write: /2 'Period From :'(008), c_date1, 'To:'(019), sy-datum.&lt;/P&gt;&lt;P&gt;elseif pnptimr5 = c_x. " From Today&lt;/P&gt;&lt;P&gt;write: /2 'Period From :'(008), sy-datum, 'To:'(019), c_date2.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;if ( pnpbegda is initial and pnpendda is initial ).&lt;/P&gt;&lt;P&gt;write: /2 'Period From :'(008), c_date1, 'To:'(019), c_date2.&lt;/P&gt;&lt;P&gt;elseif pnpbegda is initial and not pnpendda is initial.&lt;/P&gt;&lt;P&gt;write: /2 'Period From :'(008), c_date1, 'To:'(019), pnpendda.&lt;/P&gt;&lt;P&gt;elseif not ( pnpbegda is initial and pnpendda is initial ).&lt;/P&gt;&lt;P&gt;write: /2 'Period From :'(008), pnpbegda,&lt;/P&gt;&lt;P&gt;'To:'(019), pnpendda.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;if not ( r_pemp eq c_x or r_job eq c_x ).&lt;/P&gt;&lt;P&gt;write: 140 'Report Run Date:'(073), sy-datum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if not pnpkostl[] is initial.&lt;/P&gt;&lt;P&gt;if pnpkostl-high is initial.&lt;/P&gt;&lt;P&gt;write: /2 'Cost Center :'(074), pnpkostl-low,&lt;/P&gt;&lt;P&gt;125 'Time :'(075), sy-uzeit.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;write: /2 'Cost Center From:'(076), pnpkostl-low+7(3),&lt;/P&gt;&lt;P&gt;'To:'(019), pnpkostl-high,&lt;/P&gt;&lt;P&gt;140 'Time :'(075), sy-uzeit.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;write: /140 'Time :'(075), sy-uzeit.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if not pnppernr[] is initial.&lt;/P&gt;&lt;P&gt;if pnppernr-high is initial.&lt;/P&gt;&lt;P&gt;write: /2 'Personal Number :'(077), pnppernr-low,&lt;/P&gt;&lt;P&gt;140 'User :'(078), sy-uname.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;write: /2 'Personal No.From:'(079), pnppernr-low,&lt;/P&gt;&lt;P&gt;'To:'(019), pnppernr-high,&lt;/P&gt;&lt;P&gt;140 'User :'(078), sy-uname.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;write: /140 'User :'(078), sy-uname.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;write: /140 'Page No :'(080), sy-pagno.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;write: 48 'Report Run Date:'(073), sy-datum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if not pnpkostl[] is initial.&lt;/P&gt;&lt;P&gt;if pnpkostl-high is initial.&lt;/P&gt;&lt;P&gt;write: /2 'Cost Center :'(074), pnpkostl-low,&lt;/P&gt;&lt;P&gt;48 'Time :'(075), sy-uzeit.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;write: /2 'Cost Center From:'(076), pnpkostl-low+7(3),&lt;/P&gt;&lt;P&gt;'To:'(019), pnpkostl-high,&lt;/P&gt;&lt;P&gt;48 'Time :'(075), sy-uzeit.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;write: /48 'Time :'(075), sy-uzeit.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if not pnppernr[] is initial.&lt;/P&gt;&lt;P&gt;if pnppernr-high is initial.&lt;/P&gt;&lt;P&gt;write: /2 'Personal Number :'(077), pnppernr-low,&lt;/P&gt;&lt;P&gt;48 'User :'(078), sy-uname.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;write: /2 'Personal No.From:'(079), pnppernr-low,&lt;/P&gt;&lt;P&gt;'To:'(019), pnppernr-high,&lt;/P&gt;&lt;P&gt;48 'User :'(078), sy-uname.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;write: /48 'User :'(078), sy-uname.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;write: /48 'Page No :'(080), sy-pagno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;skip.&lt;/P&gt;&lt;P&gt;if r_per eq c_x.&lt;/P&gt;&lt;P&gt;write /1(193) sy-uline.&lt;/P&gt;&lt;P&gt;format color col_heading on.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) 'Employee #'(011),&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(40) 'Name'(012) centered,&lt;/P&gt;&lt;P&gt;53 sy-vline, 54(8) 'Grade'(013) centered,&lt;/P&gt;&lt;P&gt;62 sy-vline, 63(15) 'Nationality'(017) centered,&lt;/P&gt;&lt;P&gt;78 sy-vline, 79(10) 'Eng.Date'(014) centered,&lt;/P&gt;&lt;P&gt;89 sy-vline, 90(10) 'Birth Date'(016) centered,&lt;/P&gt;&lt;P&gt;100 sy-vline,101(25) 'Location'(026) centered,&lt;/P&gt;&lt;P&gt;126 sy-vline,127(25) 'Position'(015) centered,&lt;/P&gt;&lt;P&gt;152 sy-vline,153(40) 'Division'(018) centered,&lt;/P&gt;&lt;P&gt;193 sy-vline.&lt;/P&gt;&lt;P&gt;format color off.&lt;/P&gt;&lt;P&gt;write /1(193) sy-uline.&lt;/P&gt;&lt;P&gt;elseif r_pay eq c_x.&lt;/P&gt;&lt;P&gt;write /1(188) sy-uline.&lt;/P&gt;&lt;P&gt;format color col_heading on.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) 'Employee #'(011),&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(15) 'Basic'(033) centered,&lt;/P&gt;&lt;P&gt;28 sy-vline, 29(15) 'Housing Allow.'(034) centered,&lt;/P&gt;&lt;P&gt;44 sy-vline, 45(15) 'Sup.Allow.'(035) centered,&lt;/P&gt;&lt;P&gt;60 sy-vline, 61(15) 'Social Allow.'(036) centered,&lt;/P&gt;&lt;P&gt;76 sy-vline, 77(15) 'Child Allow.'(037) centered,&lt;/P&gt;&lt;P&gt;92 sy-vline, 93(15) 'Fixed Overtime'(038) centered,&lt;/P&gt;&lt;P&gt;108 sy-vline,109(15) 'R.A.Allow.'(041) centered,&lt;/P&gt;&lt;P&gt;124 sy-vline,125(15) 'Perform.Allow.'(039) centered,&lt;/P&gt;&lt;P&gt;140 sy-vline,141(15) 'Pension.Allow.'(059) centered,&lt;/P&gt;&lt;P&gt;156 sy-vline,157(15) 'Others'(040) centered,&lt;/P&gt;&lt;P&gt;172 sy-vline,173(15) 'Total'(042) centered,&lt;/P&gt;&lt;P&gt;188 sy-vline.&lt;/P&gt;&lt;P&gt;format color off.&lt;/P&gt;&lt;P&gt;write /1(188) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;elseif r_edn eq c_x.&lt;/P&gt;&lt;P&gt;write /1(172) sy-uline.&lt;/P&gt;&lt;P&gt;format color col_heading on.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) 'Employee #'(011),&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(25) 'Discipline'(043) centered,&lt;/P&gt;&lt;P&gt;38 sy-vline, 39(20) 'Edu.Establishment'(044) centered,&lt;/P&gt;&lt;P&gt;59 sy-vline, 60(45) 'Institute'(045) centered,&lt;/P&gt;&lt;P&gt;105 sy-vline,106(15) 'Country'(046) centered,&lt;/P&gt;&lt;P&gt;121 sy-vline,122(30) 'Certificate'(047) centered,&lt;/P&gt;&lt;P&gt;152 sy-vline,153(19) 'Duration of Course'(048) centered,&lt;/P&gt;&lt;P&gt;172 sy-vline.&lt;/P&gt;&lt;P&gt;format color off.&lt;/P&gt;&lt;P&gt;write /1(172) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;elseif r_pemp eq c_x.&lt;/P&gt;&lt;P&gt;write /1(97) sy-uline.&lt;/P&gt;&lt;P&gt;format color col_heading on.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 12 sy-vline,&lt;/P&gt;&lt;P&gt;33 sy-vline, 34(21) 'Employment Period'(055) centered,&lt;/P&gt;&lt;P&gt;55 sy-vline, 81 sy-vline,&lt;/P&gt;&lt;P&gt;97 sy-vline.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) 'Employee #'(011),&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(20) 'Employer'(049) centered,&lt;/P&gt;&lt;P&gt;33 sy-vline, 34(10) 'From'(050) centered,&lt;/P&gt;&lt;P&gt;44 sy-vline, 45(10) 'To'(051) centered,&lt;/P&gt;&lt;P&gt;55 sy-vline, 56(25) 'Last Position'(052) centered,&lt;/P&gt;&lt;P&gt;81 sy-vline, 82(15) 'Country'(053) centered,&lt;/P&gt;&lt;P&gt;97 sy-vline.&lt;/P&gt;&lt;P&gt;format color off.&lt;/P&gt;&lt;P&gt;write /1(97) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;elseif r_job eq c_x.&lt;/P&gt;&lt;P&gt;write /1(75) sy-uline.&lt;/P&gt;&lt;P&gt;format color col_heading on.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline,&lt;/P&gt;&lt;P&gt;12 sy-vline,13(10) 'Date of'(054) centered,&lt;/P&gt;&lt;P&gt;23 sy-vline,49 sy-vline,&lt;/P&gt;&lt;P&gt;75 sy-vline.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline,2(10) 'Employee #'(011),&lt;/P&gt;&lt;P&gt;12 sy-vline,13(10) 'Upgrading/'(058) centered,&lt;/P&gt;&lt;P&gt;23 sy-vline,24(25) 'Position'(015) centered,&lt;/P&gt;&lt;P&gt;49 sy-vline,50(25) 'Job'(056) centered,&lt;/P&gt;&lt;P&gt;75 sy-vline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 12 sy-vline,&lt;/P&gt;&lt;P&gt;13(10) 'Promotion'(057) centered,&lt;/P&gt;&lt;P&gt;23 sy-vline, 49 sy-vline,&lt;/P&gt;&lt;P&gt;75 sy-vline.&lt;/P&gt;&lt;P&gt;format color off.&lt;/P&gt;&lt;P&gt;write /1(75) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;elseif r_app eq c_x.&lt;/P&gt;&lt;P&gt;format color col_heading on.&lt;/P&gt;&lt;P&gt;write: /1 sy-vline,2(56) sy-uline, 58 sy-vline,&lt;/P&gt;&lt;P&gt;/1 sy-vline, 2(56) text-025 centered color 3, 58 sy-vline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write /1(58) sy-uline.&lt;/P&gt;&lt;P&gt;format color col_heading on.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) 'Employee #'(011),&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(4) 'Year'(067),&lt;/P&gt;&lt;P&gt;17 sy-vline, 18(40) 'Appraisal Text'(068) centered,&lt;/P&gt;&lt;P&gt;58 sy-vline.&lt;/P&gt;&lt;P&gt;format color off.&lt;/P&gt;&lt;P&gt;write /1(58) sy-uline.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endform. "top_of_page&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 end_of_page&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Write the Page footers&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 end_of_page.&lt;/P&gt;&lt;P&gt;if r_per eq c_x.&lt;/P&gt;&lt;P&gt;write : /(193) sy-uline.&lt;/P&gt;&lt;P&gt;elseif r_pay eq c_x.&lt;/P&gt;&lt;P&gt;write : /(188) sy-uline.&lt;/P&gt;&lt;P&gt;elseif r_edn eq c_x.&lt;/P&gt;&lt;P&gt;write : /(172) sy-uline.&lt;/P&gt;&lt;P&gt;elseif r_pemp eq c_x.&lt;/P&gt;&lt;P&gt;write /1(97) sy-uline.&lt;/P&gt;&lt;P&gt;elseif r_job eq c_x.&lt;/P&gt;&lt;P&gt;write /1(75) sy-uline.&lt;/P&gt;&lt;P&gt;elseif r_app eq c_x.&lt;/P&gt;&lt;P&gt;write /1(217) sy-uline.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endform. "end_of_page&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 Display_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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Write the Report Output&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form display_report.&lt;/P&gt;&lt;P&gt;if r_all eq c_x.&lt;/P&gt;&lt;P&gt;if pers_tab[] is initial.&lt;/P&gt;&lt;P&gt;message i999 with&lt;/P&gt;&lt;P&gt;'No Personal Data found'(061).&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;write: /1 sy-vline,2(51) sy-uline, 53 sy-vline,&lt;/P&gt;&lt;P&gt;/1 sy-vline, 2(50) text-020 centered color 3, 53 sy-vline.&lt;/P&gt;&lt;P&gt;write /1(193) sy-uline.&lt;/P&gt;&lt;P&gt;format color col_heading on.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) 'Employee #'(011),&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(40) 'Name'(012) centered,&lt;/P&gt;&lt;P&gt;53 sy-vline, 54(8) 'Grade'(013) centered,&lt;/P&gt;&lt;P&gt;62 sy-vline, 63(15) 'Nationality'(017) centered,&lt;/P&gt;&lt;P&gt;78 sy-vline, 79(10) 'Eng.Date'(014) centered,&lt;/P&gt;&lt;P&gt;89 sy-vline, 90(10) 'Birth Date'(016) centered,&lt;/P&gt;&lt;P&gt;100 sy-vline,101(25) 'Location'(026) centered,&lt;/P&gt;&lt;P&gt;126 sy-vline,127(25) 'Position'(015) centered,&lt;/P&gt;&lt;P&gt;152 sy-vline,153(40) 'Division'(018) centered,&lt;/P&gt;&lt;P&gt;193 sy-vline.&lt;/P&gt;&lt;P&gt;format color off.&lt;/P&gt;&lt;P&gt;write /1(193) sy-uline.&lt;/P&gt;&lt;P&gt;sort pers_tab by pernr.&lt;/P&gt;&lt;P&gt;loop at pers_tab.&lt;/P&gt;&lt;P&gt;format color col_normal.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) pers_tab-pernr,&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(40) pers_tab-ename,&lt;/P&gt;&lt;P&gt;53 sy-vline, 56(6) pers_tab-trfgr,&lt;/P&gt;&lt;P&gt;62 sy-vline, 63(15) pers_tab-ntext,&lt;/P&gt;&lt;P&gt;78 sy-vline, 79(10) pers_tab-hdate,&lt;/P&gt;&lt;P&gt;89 sy-vline, 90(10) pers_tab-gbdat,&lt;/P&gt;&lt;P&gt;100 sy-vline,101(25) pers_tab-name1,&lt;/P&gt;&lt;P&gt;126 sy-vline,127(25) pers_tab-ptext,&lt;/P&gt;&lt;P&gt;152 sy-vline,153(40) pers_tab-ctext,&lt;/P&gt;&lt;P&gt;193 sy-vline.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;write /1(193) sy-uline.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;skip 3.&lt;/P&gt;&lt;P&gt;if pay_tab[] is initial.&lt;/P&gt;&lt;P&gt;message i999 with&lt;/P&gt;&lt;P&gt;'No Standard Pay Data found'(062).&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;write: /1 sy-vline,2(42) sy-uline, 44 sy-vline,&lt;/P&gt;&lt;P&gt;/1 sy-vline, 2(42) text-021 centered color 3, 44 sy-vline.&lt;/P&gt;&lt;P&gt;format color col_heading on.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write /1(188) sy-uline.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) 'Employee #'(011),&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(15) 'Basic'(033) centered,&lt;/P&gt;&lt;P&gt;28 sy-vline, 29(15) 'Housing Allow.'(034) centered,&lt;/P&gt;&lt;P&gt;44 sy-vline, 45(15) 'Sup.Allow.'(035) centered,&lt;/P&gt;&lt;P&gt;60 sy-vline, 61(15) 'Social Allow.'(036) centered,&lt;/P&gt;&lt;P&gt;76 sy-vline, 77(15) 'Child Allow.'(037) centered,&lt;/P&gt;&lt;P&gt;92 sy-vline, 93(15) 'Fixed Overtime'(038) centered,&lt;/P&gt;&lt;P&gt;108 sy-vline,109(15) 'R.A.Allow.'(041) centered,&lt;/P&gt;&lt;P&gt;124 sy-vline,125(15) 'Perform.Allow.'(039) centered,&lt;/P&gt;&lt;P&gt;140 sy-vline,141(15) 'Pension.Allow.'(059) centered,&lt;/P&gt;&lt;P&gt;156 sy-vline,157(15) 'Others'(040) centered,&lt;/P&gt;&lt;P&gt;172 sy-vline,173(15) 'Total'(042) centered,&lt;/P&gt;&lt;P&gt;188 sy-vline.&lt;/P&gt;&lt;P&gt;format color off.&lt;/P&gt;&lt;P&gt;write /1(188) sy-uline.&lt;/P&gt;&lt;P&gt;sort pay_tab by pernr.&lt;/P&gt;&lt;P&gt;loop at pay_tab.&lt;/P&gt;&lt;P&gt;format color col_normal.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) pay_tab-pernr,&lt;/P&gt;&lt;P&gt;12 sy-vline,&lt;/P&gt;&lt;P&gt;13(15) pay_tab-basic currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;28 sy-vline,&lt;/P&gt;&lt;P&gt;29(15) pay_tab-hra_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;44 sy-vline,&lt;/P&gt;&lt;P&gt;45(15) pay_tab-sup_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;60 sy-vline,&lt;/P&gt;&lt;P&gt;61(15) pay_tab-soc_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;76 sy-vline,&lt;/P&gt;&lt;P&gt;77(15) pay_tab-chl_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;92 sy-vline,&lt;/P&gt;&lt;P&gt;93(15) pay_tab-fix_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;108 sy-vline,&lt;/P&gt;&lt;P&gt;109(15) pay_tab-ra_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;124 sy-vline,&lt;/P&gt;&lt;P&gt;125(15) pay_tab-per_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;140 sy-vline.&lt;/P&gt;&lt;P&gt;pay_tab-pen_allow = pay_tab-pen_allow * -1.&lt;/P&gt;&lt;P&gt;write: 141(15) pay_tab-pen_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;156 sy-vline,&lt;/P&gt;&lt;P&gt;157(15) pay_tab-oth_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;172 sy-vline,&lt;/P&gt;&lt;P&gt;173(15) pay_tab-tot_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;188 sy-vline.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;write /1(188) sy-uline.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;skip 3.&lt;/P&gt;&lt;P&gt;if edn_tab[] is initial.&lt;/P&gt;&lt;P&gt;message i999 with&lt;/P&gt;&lt;P&gt;'No Educational Data found'(063).&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;write: /1 sy-vline,2(36) sy-uline, 38 sy-vline,&lt;/P&gt;&lt;P&gt;/1 sy-vline, 2(36) text-022 centered color 3, 38 sy-vline.&lt;/P&gt;&lt;P&gt;format color col_heading on.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write /1(172) sy-uline.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) 'Employee #'(011),&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(25) 'Discipline'(043) centered,&lt;/P&gt;&lt;P&gt;38 sy-vline, 39(20) 'Edu.Establishment'(044) centered,&lt;/P&gt;&lt;P&gt;59 sy-vline, 60(45) 'Institute'(045) centered,&lt;/P&gt;&lt;P&gt;105 sy-vline,106(15) 'Country'(046) centered,&lt;/P&gt;&lt;P&gt;121 sy-vline,122(30) 'Certificate'(047) centered,&lt;/P&gt;&lt;P&gt;152 sy-vline,153(19) 'Duration of Course'(048) centered,&lt;/P&gt;&lt;P&gt;172 sy-vline.&lt;/P&gt;&lt;P&gt;format color off.&lt;/P&gt;&lt;P&gt;write /1(172) sy-uline.&lt;/P&gt;&lt;P&gt;sort edn_tab by pernr.&lt;/P&gt;&lt;P&gt;loop at edn_tab.&lt;/P&gt;&lt;P&gt;format color col_normal.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) edn_tab-pernr,&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(25) edn_tab-atext,&lt;/P&gt;&lt;P&gt;38 sy-vline, 39(20) edn_tab-stext,&lt;/P&gt;&lt;P&gt;59 sy-vline, 60(45) edn_tab-insti,&lt;/P&gt;&lt;P&gt;105 sy-vline,106(15) edn_tab-landx,&lt;/P&gt;&lt;P&gt;121 sy-vline,122(30) edn_tab-ctext,&lt;/P&gt;&lt;P&gt;152 sy-vline,153(4) edn_tab-anzkl,&lt;/P&gt;&lt;P&gt;157(10) edn_tab-etext,&lt;/P&gt;&lt;P&gt;172 sy-vline.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;write /1(172) sy-uline.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;skip 3.&lt;/P&gt;&lt;P&gt;if pemp_tab[] is initial.&lt;/P&gt;&lt;P&gt;message i999 with&lt;/P&gt;&lt;P&gt;'No Previous Employment Data found'(064).&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;write: /1 sy-vline,2(53) sy-uline, 55 sy-vline,&lt;/P&gt;&lt;P&gt;/1 sy-vline, 2(53) text-023 centered color 3, 55 sy-vline.&lt;/P&gt;&lt;P&gt;write /1(97) sy-uline.&lt;/P&gt;&lt;P&gt;format color col_heading on.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 12 sy-vline,&lt;/P&gt;&lt;P&gt;33 sy-vline, 34(21) 'Employment Period'(055) centered,&lt;/P&gt;&lt;P&gt;55 sy-vline, 81 sy-vline,&lt;/P&gt;&lt;P&gt;97 sy-vline.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) 'Employee #'(011),&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(20) 'Employer'(049) centered,&lt;/P&gt;&lt;P&gt;33 sy-vline, 34(10) 'From'(050) centered,&lt;/P&gt;&lt;P&gt;44 sy-vline, 45(10) 'To'(051) centered,&lt;/P&gt;&lt;P&gt;55 sy-vline, 56(25) 'Last Position'(052) centered,&lt;/P&gt;&lt;P&gt;81 sy-vline, 82(15) 'Country'(053) centered,&lt;/P&gt;&lt;P&gt;97 sy-vline.&lt;/P&gt;&lt;P&gt;format color off.&lt;/P&gt;&lt;P&gt;write /1(97) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;sort pemp_tab by pernr.&lt;/P&gt;&lt;P&gt;loop at pemp_tab.&lt;/P&gt;&lt;P&gt;format color col_normal.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) pemp_tab-pernr,&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(20) pemp_tab-arbgb,&lt;/P&gt;&lt;P&gt;33 sy-vline, 34(10) pemp_tab-begda,&lt;/P&gt;&lt;P&gt;44 sy-vline, 45(10) pemp_tab-endda,&lt;/P&gt;&lt;P&gt;55 sy-vline, 56(25) pemp_tab-stltx,&lt;/P&gt;&lt;P&gt;81 sy-vline, 82(15) pemp_tab-landx,&lt;/P&gt;&lt;P&gt;97 sy-vline.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;write /1(97) sy-uline.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;skip 2.&lt;/P&gt;&lt;P&gt;new-page.&lt;/P&gt;&lt;P&gt;if job_tab[] is initial.&lt;/P&gt;&lt;P&gt;message i999 with&lt;/P&gt;&lt;P&gt;'No Job History Data found'(065).&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;write: /1 sy-vline,2(47) sy-uline, 49 sy-vline,&lt;/P&gt;&lt;P&gt;/1 sy-vline, 2(47) text-024 centered color 3, 49 sy-vline.&lt;/P&gt;&lt;P&gt;format color col_heading on.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write /1(75) sy-uline.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline,&lt;/P&gt;&lt;P&gt;12 sy-vline,13(10) 'Date of'(054) centered,&lt;/P&gt;&lt;P&gt;23 sy-vline,49 sy-vline,&lt;/P&gt;&lt;P&gt;75 sy-vline.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline,2(10) 'Employee #'(011),&lt;/P&gt;&lt;P&gt;12 sy-vline,13(10) 'Upgrading/'(058) centered,&lt;/P&gt;&lt;P&gt;23 sy-vline,24(25) 'Position'(015) centered,&lt;/P&gt;&lt;P&gt;49 sy-vline,50(25) 'Job'(056) centered,&lt;/P&gt;&lt;P&gt;75 sy-vline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 12 sy-vline,&lt;/P&gt;&lt;P&gt;13(10) 'Promotion'(057) centered,&lt;/P&gt;&lt;P&gt;23 sy-vline, 49 sy-vline,&lt;/P&gt;&lt;P&gt;75 sy-vline.&lt;/P&gt;&lt;P&gt;format color off.&lt;/P&gt;&lt;P&gt;write /1(75) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;sort job_tab by pernr.&lt;/P&gt;&lt;P&gt;loop at job_tab.&lt;/P&gt;&lt;P&gt;format color col_normal.&lt;/P&gt;&lt;P&gt;at new pernr.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) job_tab-pernr.&lt;/P&gt;&lt;P&gt;endat.&lt;/P&gt;&lt;P&gt;write: 1 sy-vline, 12 sy-vline,&lt;/P&gt;&lt;P&gt;13(10) job_tab-begda,&lt;/P&gt;&lt;P&gt;23 sy-vline,24(25) job_tab-ptext,&lt;/P&gt;&lt;P&gt;49 sy-vline,50(25) job_tab-stltx,&lt;/P&gt;&lt;P&gt;75 sy-vline.&lt;/P&gt;&lt;P&gt;new-line.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;write /1(75) sy-uline.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;skip 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if app_tab[] is initial.&lt;/P&gt;&lt;P&gt;message i999 with&lt;/P&gt;&lt;P&gt;'No Performance Appraisal Data found'(072).&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;write: /1 sy-vline,2(56) sy-uline, 58 sy-vline,&lt;/P&gt;&lt;P&gt;/1 sy-vline, 2(56) text-025 centered color 3, 58 sy-vline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write /1(58) sy-uline.&lt;/P&gt;&lt;P&gt;format color col_heading on.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) 'Employee #'(011),&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(4) 'Year'(067),&lt;/P&gt;&lt;P&gt;17 sy-vline, 18(40) 'Appraisal Text'(068) centered,&lt;/P&gt;&lt;P&gt;58 sy-vline.&lt;/P&gt;&lt;P&gt;format color off.&lt;/P&gt;&lt;P&gt;write /1(58) sy-uline.&lt;/P&gt;&lt;P&gt;sort app_tab by pernr.&lt;/P&gt;&lt;P&gt;loop at app_tab.&lt;/P&gt;&lt;P&gt;format color col_normal.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) app_tab-pernr,&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(4) app_tab-year,&lt;/P&gt;&lt;P&gt;17 sy-vline, 18(40) app_tab-appr,&lt;/P&gt;&lt;P&gt;58 sy-vline.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;write /1(58) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;skip 2.&lt;/P&gt;&lt;P&gt;elseif r_per eq c_x.&lt;/P&gt;&lt;P&gt;if pers_tab[] is initial.&lt;/P&gt;&lt;P&gt;message i999 with&lt;/P&gt;&lt;P&gt;'No Data found for the entered Selection'(032).&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;sort pers_tab by pernr.&lt;/P&gt;&lt;P&gt;loop at pers_tab.&lt;/P&gt;&lt;P&gt;format color col_normal.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) pers_tab-pernr,&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(40) pers_tab-ename,&lt;/P&gt;&lt;P&gt;53 sy-vline, 56(6) pers_tab-trfgr,&lt;/P&gt;&lt;P&gt;62 sy-vline, 63(15) pers_tab-ntext,&lt;/P&gt;&lt;P&gt;78 sy-vline, 79(10) pers_tab-hdate,&lt;/P&gt;&lt;P&gt;89 sy-vline, 90(10) pers_tab-gbdat,&lt;/P&gt;&lt;P&gt;100 sy-vline,101(25) pers_tab-name1,&lt;/P&gt;&lt;P&gt;126 sy-vline,127(25) pers_tab-ptext,&lt;/P&gt;&lt;P&gt;152 sy-vline,153(40) pers_tab-ctext,&lt;/P&gt;&lt;P&gt;193 sy-vline.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;write /1(193) sy-uline.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;elseif r_pay eq c_x.&lt;/P&gt;&lt;P&gt;if pay_tab[] is initial.&lt;/P&gt;&lt;P&gt;message i999 with&lt;/P&gt;&lt;P&gt;'No Data found for the entered Selection'(032).&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;sort pay_tab by pernr.&lt;/P&gt;&lt;P&gt;loop at pay_tab.&lt;/P&gt;&lt;P&gt;format color col_normal.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) pay_tab-pernr,&lt;/P&gt;&lt;P&gt;12 sy-vline,&lt;/P&gt;&lt;P&gt;13(15) pay_tab-basic currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;28 sy-vline,&lt;/P&gt;&lt;P&gt;29(15) pay_tab-hra_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;44 sy-vline,&lt;/P&gt;&lt;P&gt;45(15) pay_tab-sup_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;60 sy-vline,&lt;/P&gt;&lt;P&gt;61(15) pay_tab-soc_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;76 sy-vline,&lt;/P&gt;&lt;P&gt;77(15) pay_tab-chl_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;92 sy-vline,&lt;/P&gt;&lt;P&gt;93(15) pay_tab-fix_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;108 sy-vline,&lt;/P&gt;&lt;P&gt;109(15) pay_tab-ra_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;124 sy-vline,&lt;/P&gt;&lt;P&gt;125(15) pay_tab-per_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;140 sy-vline.&lt;/P&gt;&lt;P&gt;pay_tab-pen_allow = pay_tab-pen_allow * -1.&lt;/P&gt;&lt;P&gt;write: 141(15) pay_tab-pen_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;156 sy-vline,&lt;/P&gt;&lt;P&gt;157(15) pay_tab-oth_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;172 sy-vline,&lt;/P&gt;&lt;P&gt;173(15) pay_tab-tot_allow currency pay_tab-waers no-zero,&lt;/P&gt;&lt;P&gt;188 sy-vline.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;write /1(188) sy-uline.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;elseif r_edn eq c_x.&lt;/P&gt;&lt;P&gt;if edn_tab[] is initial.&lt;/P&gt;&lt;P&gt;message i999 with&lt;/P&gt;&lt;P&gt;'No Data found for the entered Selection'(032).&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;sort edn_tab by pernr.&lt;/P&gt;&lt;P&gt;loop at edn_tab.&lt;/P&gt;&lt;P&gt;format color col_normal.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) edn_tab-pernr,&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(25) edn_tab-atext,&lt;/P&gt;&lt;P&gt;38 sy-vline, 39(20) edn_tab-stext,&lt;/P&gt;&lt;P&gt;59 sy-vline, 60(45) edn_tab-insti,&lt;/P&gt;&lt;P&gt;105 sy-vline,106(15) edn_tab-landx,&lt;/P&gt;&lt;P&gt;121 sy-vline,122(30) edn_tab-ctext,&lt;/P&gt;&lt;P&gt;152 sy-vline,153(4) edn_tab-anzkl,&lt;/P&gt;&lt;P&gt;157(10) edn_tab-etext,&lt;/P&gt;&lt;P&gt;172 sy-vline.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;write /1(172) sy-uline.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;elseif r_pemp eq c_x.&lt;/P&gt;&lt;P&gt;if pemp_tab[] is initial.&lt;/P&gt;&lt;P&gt;message i999 with&lt;/P&gt;&lt;P&gt;'No Data found for the entered Selection'(032).&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;sort pemp_tab by pernr.&lt;/P&gt;&lt;P&gt;loop at pemp_tab.&lt;/P&gt;&lt;P&gt;format color col_normal.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) pemp_tab-pernr,&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(20) pemp_tab-arbgb,&lt;/P&gt;&lt;P&gt;33 sy-vline, 34(10) pemp_tab-begda,&lt;/P&gt;&lt;P&gt;44 sy-vline, 45(10) pemp_tab-endda,&lt;/P&gt;&lt;P&gt;55 sy-vline, 56(25) pemp_tab-stltx,&lt;/P&gt;&lt;P&gt;81 sy-vline, 82(15) pemp_tab-landx,&lt;/P&gt;&lt;P&gt;97 sy-vline.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;write /1(97) sy-uline.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;elseif r_job eq c_x.&lt;/P&gt;&lt;P&gt;if job_tab[] is initial.&lt;/P&gt;&lt;P&gt;message i999 with&lt;/P&gt;&lt;P&gt;'No Data found for the entered Selection'(032).&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;sort job_tab by pernr.&lt;/P&gt;&lt;P&gt;loop at job_tab.&lt;/P&gt;&lt;P&gt;format color col_normal.&lt;/P&gt;&lt;P&gt;at new pernr.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) job_tab-pernr.&lt;/P&gt;&lt;P&gt;endat.&lt;/P&gt;&lt;P&gt;write: 1 sy-vline, 12 sy-vline,&lt;/P&gt;&lt;P&gt;13(10) job_tab-begda,&lt;/P&gt;&lt;P&gt;23 sy-vline,24(25) job_tab-ptext,&lt;/P&gt;&lt;P&gt;49 sy-vline,50(25) job_tab-stltx,&lt;/P&gt;&lt;P&gt;75 sy-vline.&lt;/P&gt;&lt;P&gt;new-line.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;write /1(75) sy-uline.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;elseif r_app eq c_x.&lt;/P&gt;&lt;P&gt;if app_tab[] is initial.&lt;/P&gt;&lt;P&gt;message i999 with&lt;/P&gt;&lt;P&gt;'No Data found for the entered Selection'(032).&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;sort app_tab by pernr.&lt;/P&gt;&lt;P&gt;loop at app_tab.&lt;/P&gt;&lt;P&gt;format color col_normal.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(10) app_tab-pernr,&lt;/P&gt;&lt;P&gt;12 sy-vline, 13(4) app_tab-year,&lt;/P&gt;&lt;P&gt;17 sy-vline, 18(40) app_tab-appr,&lt;/P&gt;&lt;P&gt;58 sy-vline.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;write /1(58) sy-uline.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endform. " Display_report&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;Reward points if useful&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Ashu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 12 Jul 2007 06:20:00 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/about-hr-module/m-p/2512595#M568276</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-12T06:20:00Z</dc:date>
    </item>
    <item>
      <title>Re: About HR Module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/about-hr-module/m-p/2512596#M568277</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;go through the following example.....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Go through the SAp doc for HR programming and start doing.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapdevelopment.co.uk/hr/hrhome.htm" target="test_blank"&gt;http://www.sapdevelopment.co.uk/hr/hrhome.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;See:&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_46c/helpdata/en/4f/d5268a575e11d189270000e8322f96/content.htm" target="test_blank"&gt;http://help.sap.com/saphelp_46c/helpdata/en/4f/d5268a575e11d189270000e8322f96/content.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;sites regarding hr-abap:&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapdevelopment.co.uk/hr/hrhome.htm" target="test_blank"&gt;http://www.sapdevelopment.co.uk/hr/hrhome.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PAPA/PAPA.pdf" target="test_blank"&gt;http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PAPA/PAPA.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PAPD/PAPD.pdf" target="test_blank"&gt;http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PAPD/PAPD.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PYINT/PYINT_BASICS.pdf" target="test_blank"&gt;http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PYINT/PYINT_BASICS.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.atomhr.com/training/Technical_Topics_in_HR.htm" target="test_blank"&gt;http://www.atomhr.com/training/Technical_Topics_in_HR.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.planetsap.com/hr_abap_main_page.htm" target="test_blank"&gt;http://www.planetsap.com/hr_abap_main_page.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can see some Standard Program examples in this one ...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapdevelopment.co.uk/programs/programshr.htm" target="test_blank"&gt;http://www.sapdevelopment.co.uk/programs/programshr.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://searchsap.techtarget.com/originalContent/0,289142,sid21_gci1030179,00.html?Offer=SAlgwn12604#Certification" target="test_blank"&gt;http://searchsap.techtarget.com/originalContent/0,289142,sid21_gci1030179,00.html?Offer=SAlgwn12604#Certification&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.erpgenie.com/faq/hr.htm" target="test_blank"&gt;http://www.erpgenie.com/faq/hr.htm&lt;/A&gt;.&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.planetsap.com/hr_abap_main_page.htm" target="test_blank"&gt;http://www.planetsap.com/hr_abap_main_page.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapbrain.com/TUTORIALS/FUNCTIONAL/HR_tutorial.html" target="test_blank"&gt;http://www.sapbrain.com/TUTORIALS/FUNCTIONAL/HR_tutorial.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***do rewards if usefull&lt;/P&gt;&lt;P&gt;vijay&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 12 Jul 2007 06:20:18 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/about-hr-module/m-p/2512596#M568277</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-12T06:20:18Z</dc:date>
    </item>
  </channel>
</rss>

