The minimum modules needed to implement Payroll

Dear Experts,
We are thinking of implementing SAP HR but currently we are trying to an implementation with the minimum requirements, so what are the modules/functions that are required to generate the payroll, some people told me that the following are the required:
1-Organizational Management.
2- Personnel Administration.
3- Time Management.
4- Benefits.
5- Payroll.
I appreciate if you can give me your feedback on my input.
Many thanks guys for your help.
Have a nice day

You would need
OM  : not required
PA : necessary
Time management = is not necessary.\ but if you pay according to attendances then its required
Please refer here
http://help.sap.com/saphelp_erp60_sp/helpdata/en/44/f0c53405e41229e10000009b38f83b/frameset.htm
So you can have only one module PA active for payroll

Similar Messages

  • What's the *minimum* i need to reinstall my T61?

    I'm going to reinstall my T61 with a vanilla version of xp and plan to install the minimum required downloads from lenovo.
    Please, lenovo, could you identify what these are?
    - Specifically, do I need to install any special drivers for this laptop?
    - The only user-level features I want are the blue function keys and the trackpad. I can happily live without the fingerprint reader, "thinkvantage" button etc
    thanks,
    graham.
    ps - the reason I want a vanilla install is:
    - I'm fed up of the slow startup and ridiculous number of processes running on this machine; it's the fastest machine i own, and the slowest to login and logout.
    - i can't get wireless connectivity to work properly - "access connections" seems to be obstructing the connection being made: if I choose "set up in xp" it doesn't let me close the relevant dialogs; if I try to set up the connection details within "access connections" it doesn't appear to support WPA2-PSK.
    - if i disable "access connections" the machine BSODs every so often; not necessarily due to lenovo software, but it would be good to remove one of the possible variables (and "access connections" provides no functionality i need anyway)
    - perhaps i need an update of lenovo software - but "check for updates" fails with "can't get user data"

    Hi Grhm,
    Its a shame to hear you are having issues with the think vantage software. I my self have never had any issues with it from my T41, T43p, T60, and X61t. lol
    If you want to do a clean install i would recomend after the install is complete downloading the "System Update" program from the Think Vantage collection. This software will then identifi what drivers need to be downlaoded and installed. It should not how ever download any other TVT programs.
    Once the program has downloaded and isntalled all the necessary drivers you can then uninstall the "System Update" program.
    Just a note the WPA2 is AES based and not supported on certian wireless cards so it could be that your wireless card doesnt support that. It might also be that you need to be running XPSP3 for windows to be able to use that function.
    Before going down the reinstall route I would disable as many startup programs as necessary, update the wireless drivers and reinstall access connections.
    Hope This Helps.
    Peter.

  • What are the minimum files needed?

    Under Windoz, can I simply copy the JAVA.EXE, the JAR files and the DLLs to a subdir (along with my CLASS file) and run my app? If not, then what would be the minimum required to do so? I'm trying to get away with not running the JRE install.
    If there is a URL that you can simply point me to, that would be great.
    TIA.

    I think I doled out those Duke Dollars too quickly. I put everything in a subdir called C:\AJAVATEST (EXEs, DLLs, JARs, IDLs...) and tried to run and received the following message:
    Failed reading value of registry key:
    Software\JavaSoft\Java Runtime Environment\CurrentVersion
    I'm guessing that the Windows version DOES use the registry. That's disappointing.
    Just so everyone will know (including Sun!), I'm not trying to circumvent the JRE Licensing scheme, I'm trying to test on a remote box that I would rather not run an installation on (semi-production box). The remote box does not have the JRE installed on it.

  • Why does the child class need to implement the parent classes constructor?/

    As I was playing around with some code I came across this point :
    First Class
    public class A {
         public int x;
         A(int i){
              x=i;
              System.out.println("A is initialised");
    }Second Class extending it :
    public class B extends A{
         private int y;
       // Why do I need this constructor to call parents constructor?
      // My guess is so that when i make an object of class B referring to class A it should make sense?
         B(int i) {                     
              super(i); 
              y=test;
    public static void main(String args[]){
          A a = new A(1);
          A b = new B(1); make an object of class B referring to class A it should work!!
          B c = new B(2);
          B d =(B) new A(2);  --> gives class cast exception!
    }I am little confused here, Can someone throw more light on it.
    Thanks

    You don't override constructors. However, every class, in it's constructor, must call some constructor from the class it's extending. In most cases this is simply super(). However, if your class does not have a default constructor (i.e. you've declared any other constructor, or the sub class does not have access to it, I.E. you've declared it private) then you must include a call to some other constructor in the super class. The constructor in the subclass does not have to be the same as the super class one, but you do have to invoke a constructor from the super class. I.E.
    class A {
      A(int i) {}
    class B extends A {
      B(String b) {
        super(0);
    }

  • Minimum hardware needed to flash the BIOS.

    K8N Neo4 Platinum MS-7125 (v1.0) MB. What is the minimum hardware needed on the motherboard to flash the BIOS using the recommended floppy with CD support and enabling the temporary virtual drive like the instructions say to do? MSI support recommends I flash to the latest BIOS (W7125NMS.145) before I start using my San Diego 4000+. So I was hoping to flash while I'm building the system up before I install the OS. So I guess what I'm asking, can I flash with just the CPU/fan, video card/monitor, and memory? And no hard drives installed?
    Thanks!

    It may be advisable to use only i memory module in slot1 to give better stability

  • Apple do not want to cover a guarantee on the audio module failure I-Phone 4S

    I subscribed to the AT&T phone service and got the I-phone 4S still under guarantee until May 10, 2013.
    The problem started around December 09th, 2012 with:
    - the ringer started to generate a loud popping sound at every ring when there are incoming calls,
    - Later I discovered that the audio did not work for you-tube clips and Quicktime videoclips
    - The screen blacked out during phone conversations (it did not happen before) so I cannot type a note or check email during the calls.
    - During the phone conversation I cannot change the screen applications; as it is locked and blacked out.
    I then brought the I-phone to the AT&T, who explained to me that the I-Phone technical problems must be handled by Apple, so I went to the Apple store in the South Center mall in Washington the same day, December 28th, 2012. The technician there told me to make an appointment.
    On December 30th I went to the Apple store in Bellevue Square Washington, the first technician there told me that my I-Phone got “water damage”.  The second technician told me that it was not caused by water damage but there are too many issues going on at the same time, and possibly by resetting the I-Phone everything should be in order; to that all pictures and some of my data was lost during the reset process; but the problems remain and worsen:  My I-Phone intermittently shut itself down.
    today Wednesday January 23, 2013 I return to the Apple store in Bellevue Square and meet with the technician Ian Cochran-Keith who diagnoses the issues; he mentions that my I-Phone connectors got “corroded” due to “water damage” and proposes to me two solutions:
    - The audio module needs repair and the cost is 59$ but the issue could come back or
    - Pay 199$ and get a new I-Phone.
    (See attached note #3 from the technician)
    I would like to present my formal request to Apple to honor the quarantee on my I-Phone and fix the issue of missing audio on videoclips also the screen black-out during phone conversation, beyond that the phone is working ok, I can still receive calls, make calls and other applications with Safari internet surfing .
    I never have a problem with my I-Phone regarding any “water damage”.
    What “Water Damage” the technician is reffering to?  Falling in water? Rain?
    My phone was never exposed to rain or falling in any water or subject to any water contact since I got it, so what “water damage” the technician is referring to? 
    If there is water damage I am certain that it wouldn’t work at all, I would get nothing.
    I do not agree to pay for the audio module change or to pay for a new I-Phone as it is still under guarantee.
    I expect Apple to reply to me with a favorable answer and fix my I-Phone per the guarantee
    Sincerely
    Note: This letter is copied to the www.bbbsilicon.org also to the consumer protection websites #43187808

    I expect Apple to reply to me with a favorable answer and fix my I-Phone per the guarantee
    They're not going to do it here. These boards are populated only with users, nobidy from Apple.

  • How to use the Bluetooth module natively in Parallels Desktop

    link to the instructions on how to enable bluetooth natively in parallels:
    http://www.mattiouz.com/blog/2007/04/13/how-to-use-the-built-in-mac-bluetooth-in -windows-under-parallels/
    link to the .exe that installs the apple driver for the bluetooth module needed in parallels: http://www.mattiouz.com/download/AppleBluetoothInstaller.exe
    now my bluetooth is accessible under parallels 3.0.5158. i scanned with a bluetooth netowrk scanner and i had no problems connecting to my treo 650.
    i took my some time to find the info but @ last i found it;-)
    Message was edited by: smokeonit

    Hi,
    You canr use text modules in script. You have to use standard texts .
    Standard text are maintained in SO10 transaction.
    you can create translation text for other languages also . So based on logon language it will print translation text.
    go to SO10
    give textname it say Ztextname  id as ST and language as EN
    say create, then you will get editor there maintain your text and save it . then come back . Now change language (say for german DE) say create and eneter translation text and save it.
    so now you have created a text called ztextname which you can use in your script.
    Inorder to insert the texts in your script do as below
    go to any window editor and   select path
    Insert->texts->symbols->standard symbols
    then you will get popup  in which you have to mention all the parameters that you have created earlier.
    after inserting just change language EN to sy-langu
    Reward points if useful
    About text elements Sravan already given some informatiomn
    Regards,
    Nageswar

  • Minimum privileges needed to create a new page at runtime

    Some body know the minimum privileges needed by a user to create a new page at runtime (using PORTAL.WWSBR_API.add_folder). Actualy the user have MANAGE_CONTENT on the parent page where the page need to be create by we got an exception (If we had the MANAGE_CONTENT on the page group, we dont receive this exception)
    thanks
    J.
    Message was edited by:
    user510720

    You'll need to set the "series" property of the chart. This will be an array of BarSeries objects.
    You may also need to set the horizontalAxis and verticalAxis properties for the chart. (I forget if there are defaults for these.)

  • Minimum Files needed for bare bones XP Install?`

    Hello
    I'm new here having recently bought my first MBP. Does anyone know the minimum files needed for a custom (lite) XP Pro install using BootCamp?
    All I want to run is DV-Rack plus maybe 1 or 2 other programs but I don't want to waste space on my 200gb HD. I do't even want to install MS Office because I like iWorks better.
    Thanks
    Allen

    My recommendation is nothing short of 12GB. For your purposes, that you indicated in your post, 12GB should be fine. Please also consider any future uses that you may have for Windows XP. I have seen several times, on this forum, where a user sets the partition too low and then wishes to increase the size and it cannot be done unless Boot Camp and Windows is re-installed from scratch.
    If you can afford the disk space then I would even recommend 32GB and that would allow you to have some space left for future programs if any.
    Axel F.

  • Howto stop the application module from using a DB

    Hello,
    Maybe and unusual question, but is there a way to stop the application module from connect to a DB? I know its purpose is to do so. But currently we are using ‘stub’ views and entities.
    In the executequery and dodml we wrote our own code to access data from webservices.
    We did this because we are also using JHeadStart which requires BC.
    It all works fine, but the application module needs a valid connection to a DB, although it will never query anything there.
    So is there a method which I can overwrite to make the application module think its connected to the DB but it actually isn’t?
    A second problem is most likely its state table.
    Anton

    Example #96 on my blog does this. It might have some useful clues.

  • Minimum settings needed in unattend.xml file

    Hi,
    I would like an answer file to handle the minimum settings required for an SCCM 2012 operating system deployment of Windows 8.1 Enterprise 64-bit. Many of the examples I have seen include disk partitioning, language settings, enable the local admin account
    and set password, allowing the admin account to login a certain number of times and so on. Task sequences handle most of this so I don't think I need everything suggested in the default recommendation that I have seen in many places including TechNet.
    I don't feel like I need the disk partitioning recommendations in the answer file because the task sequence is already handling that part. No need to have this in the answer file, right?
    I only need to deploy the English version of the operating system. My understanding that is if you don't use any language settings, the installation defaults to English. Is it safe to leave this information out of the answer file?
    Does SCCM need the answer file to specify the number of times an admin can login to accomplish the OSD?
    I think it would be necessary to maybe accept the EULA. I want our support contact information to appear in System Properties. Set the registered owner/organization.
    My initial answer file was causing problems so I haven't been using one at all until a new one is created that won't cause OSD problems. Here is what I have set so far but would like to trim this down as much as possible:
    1 - Windows PE: Set language to en-US and accept EULA
    3 - Generalize: DoNotCleanTaskBar = True (not even sure what this does)
    4 - Specialize: Enable Admin account, Set IE home page, set language to en-US, set OEM support info, DisableSR=1 (not sure what this does).
    7 - oobeSystem: set language to en-US, set AutoLogon and Admin password, HideEULAPage=True, HideLocalAccountScreen=True, HideOEMRegistrationScreen=True, HideOnlineAccountsScreen=True, HideWirelessSetupInOOBE=True, NetworkLocation=Work, ProtectYourPC=1.
    Could someone tell me how much of this is unnecessary for SCCM 2012 OSD? I'm pretty sure I don't need everything that is here because the task sequence covers part of these settings. What are the minimum settings needed here?
    Thanks,
    Rob

    We were deploying Win 8.1 for a couple of months without an answer file but that doesn't help when you want certain things configured that an answer file will handle. My first answer file had too much going on and Win 8.1 didn't like it much.
    My new answer file now sets our support information and registered user/org. Works like a charm.
    EULA is being accepted, local admin is enabled, partitioning is being done correctly; all without the answer file handling it.

  • Looking for a good starting point for the HR module

    Hello,
    Can someone please send links to help/blogs which will be a good starting point for the HR module?
    Thanks,
    Roy

    Regarding Payroll configuration
    https://forums.sdn.sap.com/click.jspa?searchID=8283334&messageID=4763364
    follow wht our gurus has said

  • What are the steps (High level) needed to implement US Payroll?

    Hi,
    What are the (high level) steps needed to implement US Payroll?
    Please provide any relavent URLs for any steps if possible.
    Thanks,
    Prabakar

    Transaction Code:-OH00
    Personnel Management Personnel AdministrationOrganizational Data Organizational Assignment Define employee attributes
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationOrganizational Data Organizational Assignment Define employee attributes
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationOrganizational Data Organizational Assignment Define employee attributes
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationOrganizational Data Organizational Assignment Create payroll area
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationOrganizational Data Organizational Assignment Create payroll area
    Transaction Code:-PE03
    Personnel Management Personnel AdministrationOrganizational Data Organizational Assignment Check Default Payroll Area
    Transaction Code:-PA03
    Personnel Management Personnel AdministrationOrganizational Data Organizational Assignment Create control record
    Transaction Code:-PA03
    Personnel Management Personnel AdministrationOrganizational Data Organizational Assignment Create control record
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataBasic PayDefine EE Sub Group Grourping for PCR and Collective Agreement Provision
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataBasic PayDefine Reason for Change
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataBasic PayCheck PayScale Type
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataBasic PayCheck PayScale Area
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataBasic PayCheck Assignment of PayScale Structure to Enterprise Structure
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataBasic PayDetermine Default for PayScale Data
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataBasic PaySetup Payroll Period for Collective Agreement Provision
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataBasic PayDefine PayScale Salary ranges
    Transaction Code:-OH11
    Personnel Management Personnel AdministrationPayroll DataBasic PayWage Types Create Wage Type
    Transaction Code:-OH11
    Personnel Management Personnel AdministrationPayroll DataBasic PayWage Types Create Wage Type
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataBasic PayWage Types Check Wage Type Group u201CBasic Payu201D
    Personnel Management Personnel AdministrationPayroll DataBasic PayWage Types Check Wage Type CatalogCheck Wage Type Text
    Transaction Code:-OH13
    Personnel Management Personnel AdministrationPayroll DataBasic PayWage Types Check Wage Type CatalogCheck Entry Permissibility Per Infotype
    Transaction Code:-OH13
    Personnel Management Personnel AdministrationPayroll DataBasic PayWage Types Check Wage Type CatalogCheck Wage Type Characteristics
    Transaction Code:-OH13
    Personnel Management Personnel AdministrationPayroll DataBasic PayWage Types Check Wage Type CatalogCheck Wage Type Characteristics
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataBasic PayWage Types Employee Sub Group Grouping for Primary Wage
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataBasic PayWage Types Personnel Sub Area Grouping for Primary Wage Type
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataBasic PayWage Types Define Wage Type Permissibility for each PS and ESG
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataBasic PayWage Types Define Wage Type Permissibility for each PS and ESG
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataRecurring Payment and DeductionDefine Reason for Change
    Transaction Code:-OH11
    Personnel Management Personnel AdministrationPayroll DataRecurring Payment and DeductionWage TypesCreate Wage Type Catalog
    Transaction Code:-OH11
    Personnel Management Personnel AdministrationPayroll DataRecurring Payment and DeductionWage TypesCreate Wage Type Catalog
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataRecurring Payment and DeductionWage TypesCheck Wage Type Group u201C Recurring Payments and Deductionu201D
    Transaction Code:-OH13
    Personnel Management Personnel AdministrationPayroll DataRecurring Payment and DeductionWage TypesCheck Wage Type CatalogCheck Wage Type text
    Transaction Code:-OH13
    Personnel Management Personnel AdministrationPayroll DataRecurring Payment and DeductionWage TypesCheck Wage Type CatalogCheck Entry Permissibility Per Infotype
    Transaction Code:-OH13
    Personnel Management Personnel AdministrationPayroll DataRecurring Payment and DeductionWage TypesCheck Wage Type CatalogCheck Wage Type Characteristics
    Transaction Code:-OH13
    Personnel Management Personnel AdministrationPayroll DataRecurring Payment and DeductionWage TypesCheck Wage Type CatalogCheck Wage Type Characteristics
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataRecurring Payment and DeductionWage TypesDefine Employee Sub Group Grouping for Primary Wage Type.
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataRecurring Payment and DeductionWage TypesDefine Personnel Area Grouping for Primary Wage Type
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataRecurring Payment and DeductionWage TypesDefine Wage Type Permissibility for each PS and ESG
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataRecurring Payment and DeductionWage TypesDefine Wage Type Permissibility for each PS and ESG
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationaPPayroll DataAdditional Payments Define Reasons for Changes
    Transaction Code:-OH11
    Personnel Management Personnel AdministrationaPPayroll DataAdditional Payments Wage TypesCreate Wage Type Catalog
    Transaction Code:-OH11
    Personnel Management Personnel AdministrationPayroll DataAdditional Payments Wage TypesCreate Wage Type Catalog
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataAdditional Payments and DeductionWage TypesCheck Wage Type Group Additional Payments
    Transaction Code:-OH13
    Personnel Management Personnel AdministrationPayroll DataAdditional Payments and DeductionWage TypesCheck Wage Type CatalogCheck Wage Type
    Transaction Code:-OH13
    Personnel Management Personnel AdministrationPayroll DataAdditional PaymentsWage TypesCheck Wage Type CatalogCheck Entry Permissibility for Additional Payments
    Transaction Code:-OH13
    Personnel Management Personnel AdministrationPayroll DataAdditional PaymentsWage TypesCheck Wage Type CatalogCheck Wage Type Characteristics.
    Transaction Code:-OH13
    Personnel Management Personnel AdministrationPayroll DataAdditional PaymentsWage TypesCheck Wage Type CatalogCheck Wage Type Characteristics.
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataAdditional PaymentsWage TypesDefine Employee Sub Group Grouping for Primary Wage Type.
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataAdditional PaymentsWage TypesDefine Employee Sub Group Grouping for Primary Wage Type.
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataAdditional PaymentsWage TypesDefine Wage Type Permissibility for each PS and ESG
    Transaction Code:-OH00
    Personnel Management Personnel AdministrationPayroll DataAdditional PaymentsWage TypesDefine Wage Type Permissibility for each PS and ESG
    This is not the complete once just for reference purpose i have given it to u
    Edited by: Sikindar on Nov 19, 2008 9:19 AM

  • Without Payroll What all Modules I can Implement in SAP HR

    Without Payroll What all module I can implement in SAP HR?
    Asfar as my knowledge is concerned We can Time Management. Training and Event Management, Performanace Management, Recruitment & E Recruitment.
    I guess For Travel Management too Payroll is required?
    My Question Can I implement Personal Cost Planning without Payroll? Is it required that i needto configure Basic Wagetype that is 0008 Is that is required to configure Basic Wagetype for Personal Cost Planning?
    Could you please throw some light on this?

    Hi,
    According to SAP help you need to implement Organizational management at least in order to be using Personnel Cost Planning.
    However, depending on the functions you require you need to implement other HR submodules and integrate with Personnel Cost Planning component. For this integration considerations please check below:
    Integration With Other Application Components
    aFunction Required
    bComponent Required
    1a Include all payment-relevant information from HR master data when creating personnel cost plans
    1bPersonnel Administration (PA-PA)
    2a Include all payroll results when creating personnel cost plans
    2b Payroll (PY)
    2a Include all training costs when creating personnel cost plans
    2a Include personnel cost plans when creating the budget for Training and Event Management
    2b Training and Event Management (PE)
    3a Include compensation guidelines for employees or planned compensation for jobs and positions when creating personnel cost plans
    3a Include personnel cost plans when creating the budget for Compensation Management
    3b Compensation Management (PA-CM)
    4a Include personnel cost plans when generating commitment or budget data within personnel budget planning
    4b Position Budgeting and Control (PA-PM-PB)
    5a Include personnel cost plans in planning for the entire company
    5b Controlling (CO)
    6a Detailed reports, planned/actual comparisons
    6b SAP Business Information Warehouse (SAP BW)
    Ref: help.sap.com
    Regards,
    Dilek

  • A FUNCTION MODULE FOR THE HR MODULE FOR PAYROLL OF EMPLOYEES

    hi,
    i want some a function module or code where i need to get the payroll details like the basic pay ,hra,special allowance,medical allowance,other allowance of an employee on the monthly basis.
    the data that i have on ot os not on the basis of months it contains datd of more than one month.like the baisc pay of an employee is given on a radom day basis of more than one month.
    but i need to bifercatethe data on monthly basis.
    waiting for the reply.
    thanks and regards

    Hi,
    Use the fun module
    RP_FILL_WAGE_TYPE_TABLE_EXT
    which willget PA0008 results.
    but to get the real payroll results you have to import data from clusters by writing the program. Data will be fetch from RT and CRT internal tables based on the Wage Types
    see the sample code:
    report zporgr0100
           line-size 252
           line-count 60(1)
           no standard page heading
           message-id zndc.
    Database Tables & Infotypes
    tables: pcl1,        " HR Cluster1
            pcl2,        " HR Cluster1
            pa0003,      " Master data - Payroll Status
            cskt,        " Cost Center Texts
            t528t,       " Positions Texts
            t513s,       " Job Titles
            pernr,       " Logical PNP
            t001p,       " Personnel Subarea
            t500p,       " Personnel Area
            t501,        " Employee Group
            t503k,       " Employee Subgroup
            csks.        " Cost Center
    infotypes:0000,0001.
    *include rpclst00.
    include rpc2rx00.
    include rpc2rxx0.
    include rpc2cd00.
    *include rpc2ps00.
    *include rpc2pt00.
    *include rpcfvp00.
    *include rpcfdc10.
    *include rpcfdc00.
    include rpppxd00.
    include rpppxd10.
    Declaration of Internal Tables
    Internal Table for Output Data
    data: begin of rep_tab occurs 0,
            kostl like pa0001-kostl,      " Cost Center
            pernr like pa0001-pernr,      " Personal Number
            ename like pa0001-ename,      " Employee Name
            ctext like cskt-ltext,        " Cost Center Text
            ptext like t528t-plstx,       " Position Text
            ot1   type p decimals 2,      " Jan OT Amount
            ot2   type p decimals 2,      " Feb OT Amount
            ot3   type p decimals 2,      " Mar OT Amount
            ot4   type p decimals 2,      " Apr OT Amount
            ot5   type p decimals 2,      " May OT Amount
            ot6   type p decimals 2,      " Jun OT Amount
            ot7   type p decimals 2,      " Jul OT Amount
            ot8   type p decimals 2,      " Aug OT Amount
            ot9   type p decimals 2,      " Sep OT Amount
            ot10  type p decimals 2,      " Oct OT Amount
            ot11  type p decimals 2,      " Nov OT Amount
            ot12  type p decimals 2,      " Dec OT Amount
            ott   type p decimals 2,      " Total OT Amount
          end of rep_tab.
    Declaration of Variables
    data: v_mon(2) type n,                   " Month
          v_no     type i,                   " Data Lines
          v_year(4)  type c,                 " Year
          v_date   like sy-datum,            " Date
          v_date1  like sy-datum,            " Date
          v_seqnr  like  pc261-seqnr.        " Sequence No.
    Declaration of Constants
    data: c_type   like hrp1001-otype  value 'S',  " Object Type
          c_kokrs  like cskt-kokrs value '1000',   " Controlling Area
          c_date1  like sy-datum value '18000101', " Date
          c_date2  like sy-datum value '99991231', " Date
          c_x       type c value 'X',              " Sign
         c_mon(2)  type c value '01',             " Month
          c_val1(2) type c value '31',             " Date
          c_val2(2) type c value '12',             " Month Type
          c_val    like p0041-dar01 value '01',    " Date Type
          c_lgart1 like p0008-lga01 value '0722',  " Wage Type
          c_lgart2 like p0008-lga01 value '0723',  " Wage Type
          c_1(2)   type n value '01',                           " Month1
          c_2(2)   type n value '02',                           " Month2
          c_3(2)   type n value '03',                           " Month3
          c_4(2)   type n value '04',                           " Month4
          c_5(2)   type n value '05',                           " Month5
          c_6(2)   type n value '06',                           " Month6
          c_7(2)   type n value '07',                           " Month7
          c_8(2)   type n value '08',                           " Month8
          c_9(2)   type n value '09',                           " Month9
          c_10(2)  type n value '10',                           " Month10
          c_11(2)  type n value '11',                           " Month11
          c_12(2)  type n value '12'.                           " Month12
    Selection-screen
    parameters:
      p_year like pc2b0-pabrj obligatory.       " Payroll Year
    At selection-screen
    at selection-screen.
    Validate the Selection Screen fields
      perform validate_screen.
    Start-of-Selection
    start-of-selection.
    Selection of Period
      perform get_period.
    Get PERNR from LDB
    get pernr.
    Get the Master data from infotype 0001
      perform get_master_data.
    Top-of-page
    top-of-page.
    Write the Report and Column Headings
      perform top_of_page.
    End-of-Page
    end-of-page.
      write /1(252) sy-uline.
    End-of-Selection
    end-of-selection.
    Display the Output Report.
      perform display_report.
    Form-Routines
    *&      Form  validate_screen
    Validation of selection Screen fields
    form validate_screen.
    Validation of Cost Center
      clear csks.
      if not pnpkostl[] is initial.
        select single kostl
          into csks-kostl
          from csks
          where kostl in pnpkostl.
        if sy-subrc <> 0.
          message e999 with 'Invalid Cost Center'(003).
        endif.
      endif.
    Validation of Personnel Number
      clear pa0003.
      if not pnppernr[] is initial.
        select pernr
        from pa0003 up to 1 rows
          into pa0003-pernr
          where pernr in pnppernr.
        endselect.
        if sy-subrc <> 0.
          message e999 with 'Incorrect Personal Number Entered'(002).
        endif.
      endif.
    Validation of Personnel Area
      clear t500p.
      if not pnpwerks[] is initial.
        select persa
        from t500p up to 1 rows
          into t500p-persa
          where persa in pnpwerks.
        endselect.
        if sy-subrc <> 0.
          message e999 with 'Incorrect Personnel Area Entered'(001).
        endif.
      endif.
    Validation of Personnel Sub Area
      clear t001p.
      if not pnpbtrtl[] is initial.
        select btrtl
        from t001p up to 1 rows
          into t001p-btrtl
          where btrtl in pnpbtrtl.
        endselect.
        if sy-subrc <> 0.
          message e999 with 'Incorrect Personnel Sub Area Entered'(037).
        endif.
      endif.
    Validation of Employee Group
      clear t501.
      if not pnppersg[] is initial.
        select persg
        from t501 up to 1 rows
          into t501-persg
          where persg in pnppersg.
        endselect.
        if sy-subrc <> 0.
          message e999 with 'Incorrect Employee Group Entered'(038).
        endif.
      endif.
    Validation of Employee Sub Group
      clear t503k.
      if not pnppersk[] is initial.
        select persk
        from t503k up to 1 rows
          into t503k-persk
          where persk in pnppersk.
        endselect.
        if sy-subrc <> 0.
          message e999 with 'Incorrect Employee Sub Group Entered'(039).
        endif.
      endif.
    endform.                  "validate_screen
    *&      Form  get_period
    Get the Correct Period based on Selection screen selection
    form get_period.
      clear: v_year,v_mon, v_date, v_date1.
      v_year = sy-datum+0(4).
      v_mon  = sy-datum+4(2).
      if pnptimr1 = c_x.      " Current Date
        pnpbegda = sy-datum.
        pnpendda = sy-datum.
      elseif pnptimr2 = c_x.  " Current Month
        concatenate v_year v_mon c_val into v_date.
        concatenate v_year v_mon c_val1 into v_date1.
        pnpbegda = v_date.
        pnpendda = v_date1.
      elseif pnptimr3 = c_x.  " Current Year
        concatenate v_year c_val c_val into v_date.
        concatenate v_year c_val2 c_val1 into v_date1.
        pnpbegda = v_date.
        pnpendda = v_date1.
      elseif pnptimr4 = c_x.  " Upto Today
        pnpbegda = c_date1.
        pnpendda = sy-datum.
      elseif pnptimr5 = c_x.  " From Today
        pnpbegda = sy-datum.
        pnpendda = c_date2.
      else.
        if ( pnpbegda is initial and pnpendda is initial ).
          pnpbegda = c_date1.
          pnpendda = c_date2.
        elseif pnpbegda is initial and not pnpendda is initial.
          pnpbegda = c_date1.
          pnpendda = pnpendda.
        elseif not ( pnpbegda is initial and pnpendda is initial ).
          pnpbegda = pnpbegda.
          pnpendda = pnpendda.
        endif.
      endif.
    endform.              "get_period
    *&      Form  get_master_data
    Get the Master Data from Database Tables PA0001,0002,0003
    form get_master_data.
    Get data from Respective Infotypes
      rp_provide_from_last p0001 space pnpbegda pnpendda.
      if p0001-kostl in pnpkostl.
        rep_tab-kostl = p0001-kostl.
        rep_tab-pernr = p0001-pernr.
        rep_tab-ename = p0001-ename.
    Get the Position Text
        clear t528t-plstx.
        select single plstx into t528t-plstx from t528t
                where plans = p0001-plans and
                      otype = c_type and
                      sprsl = sy-langu.
        if sy-subrc = 0.
          rep_tab-ptext = t528t-plstx.
        endif.
    Get the Cost Center Text
        clear cskt-ltext.
        select single ltext into cskt-ltext from cskt
                where spras = sy-langu and
                      kokrs = c_kokrs and
                      kostl = p0001-kostl.
        if sy-subrc = 0.
          rep_tab-ctext = cskt-ltext.
        endif.
    Get the Overtime Payment Data
        perform get_ot_data.
        rep_tab-ott = rep_tab-ot1 + rep_tab-ot2 + rep_tab-ot3 +
                      rep_tab-ot4 + rep_tab-ot5 + rep_tab-ot6 +
                      rep_tab-ot7 + rep_tab-ot8 + rep_tab-ot9 +
                      rep_tab-ot10 + rep_tab-ot11 + rep_tab-ot12.
        append rep_tab.
        clear  rep_tab.
      endif.
      sort rep_tab by kostl pernr.
      delete rep_tab where kostl = ' '.
      delete rep_tab where ott = 0.
    endform.                 "get_master_data
    *&      Form  get_ot_data
    Get the Overtime Payment Data
    form get_ot_data.
      cd-key = pernr-pernr.
      rp-imp-c2-cd.
      sort rgdir by seqnr.
    To get sequence number for the payroll period
      loop at rgdir where void     is initial
                        and reversal is initial
                        and outofseq is initial
                        and srtza    eq 'A'.
        if rgdir-fpper+0(4) = p_year.
    To consider offcycle run data
          if not rgdir-ocrsn is initial.
            v_seqnr = rgdir-seqnr.
            exit.
          endif.
          v_seqnr = rgdir-seqnr.
        endif.
        if not v_seqnr is initial.
          perform import_rx.
        endif.
        perform process_wagetypes.
      endloop.
    endform.                 "get_ot_data
    include rpppxm00.
    *&      Form  Import_rx
    Import the RX data from Clusters
    form import_rx.
      rx-key-pernr = cd-key-pernr.
      rx-key-seqno = v_seqnr.
      rp-init-buffer.
      rp-imp-c2-rx.
    endform.                    " Import_rx
    *&      Form  Process_wagetypes
    Calculate the Overtime Amount based on Wage types
    form process_wagetypes.
      loop at rt.
        if  rt-lgart = c_lgart1 or rt-lgart = c_lgart2.
          if rgdir-fpper+0(4) = p_year.
            v_mon = rgdir-fpper+4(2).
            case v_mon .
              when c_1.
                rep_tab-ot1 = rep_tab-ot1 + rt-betrg.
              when c_2.
                rep_tab-ot2 = rep_tab-ot2 + rt-betrg.
              when c_3.
                rep_tab-ot3 = rep_tab-ot3 + rt-betrg.
              when c_4.
                rep_tab-ot4 = rep_tab-ot4 + rt-betrg.
              when c_5.
                rep_tab-ot5 = rep_tab-ot5 + rt-betrg.
              when c_6.
                rep_tab-ot6 = rep_tab-ot6 + rt-betrg.
              when c_7.
                rep_tab-ot7 = rep_tab-ot7 + rt-betrg.
              when c_8.
                rep_tab-ot8 = rep_tab-ot8 + rt-betrg.
              when c_9.
                rep_tab-ot9 = rep_tab-ot9 + rt-betrg.
              when c_10.
                rep_tab-ot10 = rep_tab-ot10 + rt-betrg.
              when c_11.
                rep_tab-ot11 = rep_tab-ot11 + rt-betrg.
              when c_12.
                rep_tab-ot12 = rep_tab-ot12 + rt-betrg.
            endcase.
          endif.
        endif.
      endloop.
    endform.          "process_wagetypes
    *&      Form  top_of_page
    Write the Report and Column Headings
    form top_of_page.
      format color col_heading on.
      write: /1(252) 'NATIONAL DRILLING COMPANY'(010) centered,
             /1(252) 'Overtime Payments Details'(011) centered.
      format color off.
      if pnptimr1 = c_x.      " Current Date
        write: /2 'Period From     :'(036), sy-datum, 'To:'(006), sy-datum.
      elseif pnptimr2 = c_x.  " Current Month
        write: /2 'Period From     :'(036), v_date, 'To:'(006), v_date1.
      elseif pnptimr3 = c_x.  " Current Year
        write: /2 'Period From     :'(036), v_date, 'To:'(006), v_date1.
      elseif pnptimr4 = c_x.  " Upto Today
        write: /2 'Period From     :'(036), c_date1, 'To:'(006), sy-datum.
      elseif pnptimr5 = c_x.  " From Today
        write: /2 'Period From     :'(036), sy-datum, 'To:'(006), c_date2.
      else.
        if ( pnpbegda is initial and pnpendda is initial ).
          write: /2 'Period From     :'(036), c_date1, 'To:'(006), c_date2.
        elseif pnpbegda is initial and not pnpendda is initial.
          write: /2 'Period From     :'(036), c_date1, 'To:'(006), pnpendda.
        elseif not ( pnpbegda is initial and pnpendda is initial ).
          write: /2 'Period From     :'(036), pnpbegda,
                   'To:'(006), pnpendda.
        endif.
      endif.
      write: 219 'Report Run Date:'(018), sy-datum.
      if not pnpkostl[] is initial.
        if pnpkostl-high is initial.
          write: /2 'Cost Center     :'(004), pnpkostl-low,
                219 'Time           :'(020), sy-uzeit.
        else.
          write: /2 'Cost Center From:'(005), pnpkostl-low+7(3),
                                    'To:'(006), pnpkostl-high,
                219 'Time           :'(020), sy-uzeit.
        endif.
      else.
        write: /219  'Time           :'(020), sy-uzeit.
      endif.
      if not pnppernr[] is initial.
        if pnppernr-high is initial.
          write: /2 'Personal Number :'(007), pnppernr-low,
                 219 'User           :'(021), sy-uname.
        else.
          write: /2 'Personal No.From:'(008),  pnppernr-low,
                                    'To:'(006), pnppernr-high,
                 219 'User           :'(021), sy-uname.
        endif.
      else.
        write: /219 'User           :'(021), sy-uname.
      endif.
      write: /219 'Page No        :'(022), sy-pagno.
      format color col_heading.
      write /1(252) sy-uline.
      write:/1 sy-vline, 10 sy-vline,
            41 sy-vline,
            67 sy-vline, 68(167) 'Overtime Payments(Dirhams)'(013) centered,
           235 sy-vline,252 sy-vline.
      format color col_heading.
      write:/1 sy-vline,  2(8)  'Emp #'(019) centered,
            10 sy-vline, 11(30) 'Employee Name'(012) centered,
            41 sy-vline, 42(25) 'Position'(014) centered,
            67 sy-vline, 68(167)  sy-uline,
           235 sy-vline,236(16)  'Total'(017) centered,
           252 sy-vline.
      write:/1 sy-vline, 10 sy-vline,
            41 sy-vline,
            67 sy-vline, 68(13)  'JANUARY'(024) centered,
            81 sy-vline, 82(13)  'FEBRUARY'(025) centered,
            95 sy-vline, 96(13)  'MARCH'(026) centered,
           109 sy-vline,110(13)  'APRIL'(027) centered,
           123 sy-vline,124(13)  'MAY'(028) centered,
           137 sy-vline,138(13)  'JUNE'(029) centered,
           151 sy-vline,152(13)  'JULY'(030) centered,
           165 sy-vline,166(13)  'AUGUST'(031) centered,
           179 sy-vline,180(13)  'SEPTEMBER'(032) centered,
           193 sy-vline,194(13)  'OCTOBER'(033) centered,
           207 sy-vline,208(13)  'NOVEMBER'(034) centered,
           221 sy-vline,222(13)  'DECEMBER'(035) centered,
           235 sy-vline,252 sy-vline.
      format color off.
      write /1(252) sy-uline.
    endform.            "top_of_page
    *&      Form  Display_report
    Write the Report Output
    form display_report.
      clear v_no.
      describe table rep_tab lines v_no.
      if v_no = 0.
        message i999 with
         'No Data found for the entered Selection'(015).
      endif.
      loop at rep_tab.
        format color 3.
        at new kostl.
          read table rep_tab index sy-tabix.
          write:/1 sy-vline, 2(12) 'Cost Center:'(009),
                 14(10) rep_tab-kostl,
                 25(30) rep_tab-ctext,
                252 sy-vline.
          format color off.
          write /1(252) sy-uline.
        endat.
        format color col_normal.
        write: /1 sy-vline, 2(8)   rep_tab-pernr,
              10 sy-vline, 11(30)  rep_tab-ename,
              41 sy-vline, 42(25)  rep_tab-ptext,
              67 sy-vline, 68(13)  rep_tab-ot1 no-zero,
              81 sy-vline, 82(13)  rep_tab-ot2 no-zero,
              95 sy-vline, 96(13)  rep_tab-ot3 no-zero,
             109 sy-vline,110(13)  rep_tab-ot4 no-zero,
             123 sy-vline,124(13)  rep_tab-ot5 no-zero,
             137 sy-vline,138(13)  rep_tab-ot6 no-zero,
             151 sy-vline,152(13)  rep_tab-ot7 no-zero,
             165 sy-vline,166(13)  rep_tab-ot8 no-zero,
             179 sy-vline,180(13)  rep_tab-ot9 no-zero,
             193 sy-vline,194(13)  rep_tab-ot10 no-zero,
             207 sy-vline,208(13)  rep_tab-ot11 no-zero,
             221 sy-vline,222(13)  rep_tab-ot12 no-zero,
             235 sy-vline,236(16)  rep_tab-ott no-zero,
             252 sy-vline.
        at end of kostl.
          write /1(252) sy-uline.
        endat.
        format color off.
        at last.
          sum.
          format color 1.
          write: /1 sy-vline,
                10 sy-vline, 11(30) 'Total'(017) centered,
                41 sy-vline,
                67 sy-vline, 68(13)  rep_tab-ot1 no-zero,
                81 sy-vline, 82(13)  rep_tab-ot2 no-zero,
                95 sy-vline, 96(13)  rep_tab-ot3 no-zero,
               109 sy-vline,110(13)  rep_tab-ot4 no-zero,
               123 sy-vline,124(13)  rep_tab-ot5 no-zero,
               137 sy-vline,138(13)  rep_tab-ot6 no-zero,
               151 sy-vline,152(13)  rep_tab-ot7 no-zero,
               165 sy-vline,166(13)  rep_tab-ot8 no-zero,
               179 sy-vline,180(13)  rep_tab-ot9 no-zero,
               193 sy-vline,194(13)  rep_tab-ot10 no-zero,
               207 sy-vline,208(13)  rep_tab-ot11 no-zero,
               221 sy-vline,222(13)  rep_tab-ot12 no-zero,
               235 sy-vline,236(16)  rep_tab-ott no-zero,
               252 sy-vline.
          write /1(252) sy-uline.
        endat.
        format color off.
      endloop.
    endform.          "display_report
    reward points if useful
    regards,
    Anji

Maybe you are looking for

  • Accessing parameters from request header in init()

    Hello How can I access parameters passed on the client request header like http://localhost:8080/servlet/DBServlet?database=mydatabase from the servlet initialization method ini() The getInitParameter() only returns parameters defined in the web.xml

  • N/A status column in dba_ind_partitions

    Can anyone let me know what signifies the N/A status column in dba_ind_partitions view .. Thanks Subi

  • I Just want to download + save a copy of the OS I have paid for?! Is that too much to ask?

    I have already downloaded and upgraded to ML once already, but cant find the DMG file anywhere?! I don't want to download OSX Mountain Lion everytime I want to install it, that is just friggin ridiculous! not everyone has mega bandwidth flowing freel

  • Posting multiple VAT lines through BAPI

    At my customer we are importing vendor invoices from a third party system into SAP. For this we use BAPI "BAPI_INCOMINGINVOICE_CREATE1" The third party system also calculates the TAX amounts. Therefore, we need to be able to post multiple VAT lines f

  • Internet disconnecting when using WPA

    About 3 weeks ago my wireless connection started dropping on a regular basis. I would be on the web, and then i would not be able to access any pages. Everytime, I would have to power cycle the router and the wireless would reconnect....then about an