Payroll Problem

For an employee, leaving action been processed in June month, however, his details are coming in July payroll without any value
What could be the reason?

Hi Deepali,
Just check, whether the employee status is still showing active in Actions Infotype.  May be that is the reason.
Employee status should be 0 - In active. 
Regards
Venu

Similar Messages

  • Help (again) with the payroll problems

    I have seen some posts about the payroll program that we students are trying to figure out. I am having some of the same problems which I have been able to sort through, but I am having a problem that I can't make go away!
    My error is this:
    cannot find symbol
    symbol: variable input
    Here is the work-in-progress code:
    public class PayrollProgram {
    /** Creates a new instance of PayrollProgram */
    public PayrollProgram() {
    //main method begins execution of Payroll Program java application
    public static void main(String[]args)
    double number1; // rate
    double number2; // hours
    double product; // total pay
    System.out.println("Please enter your name:");//prompt
    String nameOfEmployee=input.nextLine();
    System.out.print("Enter rate:$");//prompt
    number1 = input.nextDouble(); // read first number
    System.out.print( "Enter hours: " ); // prompt
    number2 = input.nextDouble(); // read second number
    product = number1 * number2; // multiply numbers
    System.out.printf("%s makes $%.2f%n",nameOfEmployee,product);
    } //end method main
    } //end class PayrollProgram
    I am stuck and don't know where the opening of the paper bag is!
    Thanks!

    String nameOfEmployee=input.nextLine();Do you have a variable called input that you have declared somewhere? I can't find it and neither can the compiler, hence the error.

  • Arrears amount not getting added to /559

    Dear Experts,
    We want to pay September’14 arrears, September’14 Leave Salary and October’14 salary to the employee.
    In system arrears and leave salary is calculated correctly also wage types are displaying in payslip as well as in RT tabel.
    But in T-code pc_payresult arrear  and leave salary amount is not getting added to the /559.
    Amount showing in /559 is only October’14 salary.
    We have checked all the processing classes and cumulation classes for all the wage types.
    Need your help to resolve this issue.
    We have attached screen shot for your reference.
    Thanks !!!!

    When talking about a Payroll problem, it is always useful to indicate what Country code is involved since Payroll may not work the same for all Countries.
    Your screen capture does not enable us to identify what WTs cumulate in /101 (Total gross), but if I substract /110 (Net deductions) from it the result is nearly the sum of /559 (Payment), which looks OK (the difference may be a WT that does not cumulate in /101 but impacts /559).
    Use t-code PC00_M99_DLGA20 to confirm if WTs 1003 and 4003 cumulate in /101.
    Are WTs 1003 and 4003 considered "Information WTs" for payments that must be done at a later date?

  • URGENT:Income Tax Problem in Payroll

    Hi dear friends,
    when India payroll is run the Conveyance Allowance is not considering for Income TAX Exemption.
    I had assigned the TAX Code correctly with limit 800 per month.
    When i check the technical Wage Type /130 ,it contains only HRA amount which is having tax exemption.
    My conveyance allowance Wage type is in IT 0008.
    I am struggling with this problem @ client location.
    Please give a help by checking out this problem
    <b>Wishing you all a Happy X-Mas and Prosperous New Year
    Regards</b>

    Hi Abhilash,
    Please check the following tables.
    1.  V_T7INCA----
    Conveyance Types.
    2.  V_T7INC9----
    Conveyance Allowance Eligibility. Here You need to assign
                                 Grouping for Allowances for each Conveyance Type and WT 
                                 for Conveyance.
    3.V_T7INT9----
    Taxability of Wage Types. Here You need to assign the
                             Conveyance WT to Taxcode SCNV with Exemption amount of
                             Rs 800 and Tax Type is 'Tax amount is Limit Based' and
                             frequency is 'Monthly'.
    4 You have to maintain table V_T7INA9 with that WT.
    Try with this.....
    Good Luck
    Laxmi

  • Employee payroll program problems

    I have done good so far but now im stuck and lost on how to take my program to the next step, kids got sick and i missed like a week of school so im behind. I am suppose to modify the Payroll Program so that it uses a class to store and retrieve the employee?s name, the hourly rate, and the number of hours worked. Use a constructor to initialize the employee information, and a method within that class to calculate the weekly pay. Once stop is entered as the employee name, the application should terminate. I am lost on the bold part..
    here is what I have:
    //Calculates weekly pay for an employee
    import java.util.Scanner; // program uses class Scanner
         public class BeemansPayroll
         private double rate;
         private double hours;
         private String name;
         //Used to save info
    public BeemansPayroll(String Name, double PayRate, double Hours)
         String name = Name;
         double rate = PayRate;
         double hours = Hours;
    private static void Quit()
    System.out.println("Thank You for using Beeman's Payroll");
    System.exit(0);
    // main method begins execution of Java application
    public static void main(String args[])
    // create Scanner to obtain input from command window
    Scanner input = new Scanner(System.in);
    String name = "";
    do {
    System.out.print("Enter Employee Name or stop to quit: ");
    // prompt for name
    name = input.next(); // get name
              if (name.equals("stop"))
    System.out.println("Thank You for using Beeman's Payroll");
    Quit();
    } //end if
    else
    double PayRate;
    double Hours;
    double Pay;
         System.out.print("Please enter Employee payrate:$ "); // prompt
         PayRate = input.nextDouble(); // read first number from user
              while (PayRate <= 0)
                        System.out.println ("Invalid amount, Payrate must be positive");
                        System.out.print("Please enter valid payrate:$ ");
                        PayRate = input.nextDouble();
                   } //end if      
    System.out.print("Please enter Employee hours: "); // prompt
    Hours = input.nextDouble(); // read second number from user
                             while (Hours <= 0)
                        System.out.println ("Invalid amount, Hours must be positive");
                        System.out.print("Please enter hours worked: ");
                        Hours = input.nextDouble();
                   } //end if
    Pay = PayRate * Hours; // multiply numbers
    System.out.printf("Employee Pay for the week %s, is $%.2f\n", name,
    (PayRate * Hours)); // display product
    } //end else
    }while (!name.equals("stop"));
    Quit();
    } // end method main
    } // end class Beeman's Payroll

    john774077 wrote:
    Like I said, I am lost, with all that is going on I have done the reading 4 times , Then try reading a different source such as the Sun Java tutorials. They are excellent and there is no substitute to your reading and learning. We can help you debug an error in your code, but we are not a tutorial service nor a homework production service. Note also that we are all volunteers.
    on top of kids getting sick and taking three algebra all at once. I advice you to not go on and on about this. This is not our problem and won't affect how or if someone helps you. If anything continued mention of this will turn many away who would otherwise help you.
    How or where do I go about breaking it down?You are redeclaring the variables in your constructor, i.e.,:
    String name = Name;  // don't do thisDon't do this because you'll never change the class's name variable this way. Instead in the constructor do something like this for each variable:
    name = Name;or
    this.name = Name;Later you will need to read up on Java naming conventions.
    As for creating the method, you should read up on method creation in your text book or tutorial. That'll give you a better explanation than we can, I think.

  • Problems when reading Payroll with class CL_HRPAY99_PRR_4_PNP_REPS.

    I'm triyng to use the above class to read Payroll results.
    I'm using the code as advised, on note 699276.
    However, i'm getting an "Read Error", when executing method GET_PERNR_PAYR_RESULTS_ALLIN1.
    After some debugging, i discovered that in method Read_from_buffer (class Cl_hr_pay_buffer), the system does a direct reading to table PCL2, in search for the cluster entry key. The thing is, that instead of looking for CLUSTERID 'RP' (as it's stated on table T500L, for our MOLGA), the system look for CLUSTERID 'RX', because that value is hard-code on the CONSTRUCTOR method of class CL_HR_PAY_RESULT_99.
    As anyone been thru this kind of problem? Is this some kind of class or method bug?
    Thanks in advance for your cooperation.
    Sincerely,
    Hugo Ferreira
    PS - Here's the code of the program, so far:
    data: go_prr type ref to cl_hrpay99_prr_4_pnp_reps,
          gt_pernr_pr type H99_HR_PAY_RESULT_TAB,
          go_pernr_pr type ref to CL_HR_PAY_RESULT_PT.
    field-symbols <pernr_pr> type ref to CL_HR_PAY_RESULT.
    start-of-selection.
      call method CL_HRPAY99_PRR_4_PNP_REPS=>GET_INSTANCE
        EXPORTING
          IM_PN_BEGDA             = pn-begda
          IM_PN_ENDDA             = pn-endda
          IM_MOLGA                = '19'
          IM_ADD_RETROES_TO_RGDIR = 'X'
        IMPORTING
          ex_prr                  = go_prr
        EXCEPTIONS
          INVALID_ENTRIES         = 1.
    get pernr.
      call method go_prr->GET_PERNR_PAYR_RESULTS_ALLIN1
        EXPORTING
          im_pernr                      = pernr-pernr
        IMPORTING
          EX_PERNR_PAYROLL_RESULTS      = gt_pernr_pr
        EXCEPTIONS
          COUNTRY_VERSION_NOT_AVAILABLE = 1
          NO_AUTHORIZATION              = 2
          NO_ENTRIES_FOUND              = 3
          READ_ERROr                    = 4.
      loop at gt_pernr_pr assigning <pernr_pr>.
        go_pernr_pr ?= <pernr_pr>.
      endloop.

    Hi,
    I have to do the same thing. May I know your approach?
    This is what I thought..
    I can create a custom method in the copied class and change the clusted id and molga and replace the CONSTUCTOR method call in our custom payroll driver program.
    But I cannot see this method anywhere in our payroll driver program when I hit the Where Used List.
    I am not sure how to proceed.
    Please suggest.

  • HRPY - Problem with upload payroll

    Hi experts I need your help, I have a problem and I can't resolve.
    In my job I need to move the payroll from a country (BR) to another country (MX), Each country is in different client.
    To download the data from BR, I used the fm HCRM_PAYROLL_RESULTS_GET and return me all the sequences
    and all tables asociates to employee (RT, CRT, etc). I work with Logical Database PNP.
    for update the payroll in MX (with data of BR) I used some fm, for example I used the fm CU_READ_RGDIR to validate if exist
    the sequences of the employee. (The employee exist in all tables of PA in MX) But the fm CU_READ_RGDIR always return me the table RGDIR empty.
    The question is, If exist some function or some way to upload the data to RGDIR from a client to another client?

    przegladanieprywatne wrote:
    Pages.app to pdf after that i converted pdf to ePub and i wanted to upload it....
    Pages can export to epub directly.  Try that.  Using pdf in the middle is a formula for a mess.

  • Problem in Payroll (mid month payment)

    Dear All,
    We have Monthly Payroll type. But I have to make incentive and some arrears payments in mid of May, 2010 that is after the execution of April Payroll and before execution of May Payroll.
    Please suggest how this can be done?
    Regards,
    Kanupriya

    Hi Kanupriya,
    You need to some configuration in the SPRO path provided below.
    SPRO --> Payroll --> Payroll - USA --> Off-Cycle Activities
    Then maintain 0267 with off cycle reason
    Run off cycle Payroll using off cycle reason
    The go to Work bench for Off-cycle - Transaction Code PUOC_10
    Clik on History tab - chceck result - and Save result.
    Regards
    Venu

  • Problem in Payroll Execution

    Dear All, When i execute the Payroll for the month December, 2011, i get an error message in log that "Date specification 01 does not exist for 99 00 99 2011 07". Kindly mentioned the solution of this issue.

    Hi Hassan,
    Check infotype 41 for that employee...
    Please go through the following links for more information apart from the one mentioned by above, which will help you in resolving this issue....
    http://help.sap.com/saphelp_40b/helpdata/de/7e/8a6327545711d1891c0000e8322f96/content.htm
    Re: Payrol simulation Error
    Re: Payroll error
    Best Regards,
    Venkat.

  • Problem With Offclye Payroll Records

    HI Experts....
    I Already Created a report to Display Regular Payroll Payments of Each Employee for a Month. Now i want to add the Off cycle Payroll Payments values into this Existing Report.
    I Already Fetched the regular Pay roll Payments into Internal Table ITAB1. Now i am having Off cycle Payroll payments in ITAB2. Now i want to insert ITAB2-BONUS into ITAB1-BONUS.
    But While modifying the ITAB1 it is giving dump.
    The Code is:
    GET PAYROLL.
      IF PAYROLL-EVP-PAYTY IS INITIAL.
        LOOP AT PAYROLL-INTER-RT INTO WA_RT.
          CASE WA_RT-LGART.
            WHEN '2100'.
              IT_RT-BASIC = WA_RT-BETRG + IT_RT-BASIC.
            WHEN '2200'.
              IT_RT-HRA = WA_RT-BETRG + IT_RT-HRA.
            WHEN '2300'.
              IT_RT-CONV = WA_RT-BETRG + IT_RT-CONV.
            WHEN '2400'.
              IT_RT-SPCL = WA_RT-BETRG + IT_RT-SPCL.
            WHEN '2600'.
              IT_RT-MED =  WA_RT-BETRG + IT_RT-MED.
            WHEN '2500'.
              IT_RT-LTA = WA_RT-BETRG + IT_RT-LTA.
            WHEN '3100'.
              IT_RT-LENC = WA_RT-BETRG + IT_RT-LENC.
            WHEN '2800'.
              IT_RT-BONUS = WA_RT-BETRG + IT_RT-BONUS.
            WHEN '2900'.
              IT_RT-SADV = WA_RT-BETRG + IT_RT-SADV.
            WHEN '3000'.
              IT_RT-HRARC = WA_RT-BETRG + IT_RT-HRARC.
            WHEN '2700'.
              IT_RT-TRDED = WA_RT-BETRG + IT_RT-TRDED.
            WHEN '3200' .
              IT_RT-MISC_PAY = WA_RT-BETRG + IT_RT-MISC_PAY.
            WHEN '3300'.
              IT_RT-MISC_D = WA_RT-BETRG + IT_RT-MISC_D.
            WHEN '3600'.
              IT_RT-SADV_R = WA_RT-BETRG + IT_RT-SADV_R.
            WHEN '/3F1'.
              IT_RT-EPF_D = WA_RT-BETRG + IT_RT-EPF_D.
            WHEN '/3P3'.
              IT_RT-PTAX = WA_RT-BETRG + IT_RT-PTAX.
            WHEN '/460'.
              IT_RT-ITAX = WA_RT-BETRG + IT_RT-ITAX.
            WHEN '/560'.
              IT_RT-NET = WA_RT-BETRG + IT_RT-NET.
            WHEN '/3F2'.
              IT_RT-VPF = WA_RT-BETRG + IT_RT-VPF.
           WHEN '/ZF5'.
              IT_RT-PF = WA_RT-BETRG + IT_RT-PF.
            WHEN '/552'.
              IT_RT-ARREAR = WA_RT-BETRG + IT_RT-ARREAR.
            WHEN '9876'.
              IT_RT-STIPEN = WA_RT-BETRG + IT_RT-STIPEN.
            WHEN '2410'.
              IT_RT-VDA = WA_RT-BETRG + IT_RT-VDA.
            WHEN '2310'.
              IT_RT-CANTALL = WA_RT-BETRG + IT_RT-CANTALL.
            WHEN '2210'.
              IT_RT-EDUCALL = WA_RT-BETRG + IT_RT-EDUCALL.
            WHEN '1ESI'.
              IT_RT-EEESI = WA_RT-BETRG + IT_RT-EEESI.
            WHEN '/3E1'.
              IT_RT-EEESI = WA_RT-BETRG + IT_RT-EEESI.
            WHEN '/3E2'.       
              IT_RT-ERESI = WA_RT-BETRG + IT_RT-ERESI.
            WHEN '2008'.
              IT_RT-NSFTALL = WA_RT-BETRG + IT_RT-NSFTALL.
            WHEN '/ZP1'.
              IT_RT-CFPTX = WA_RT-BETRG + IT_RT-CFPTX.
          ENDCASE.
        ENDLOOP.
        IT_RT-ARREAR = IT_RT-ARREAR + IT_RT-PF.
        IT_RT-CFPEN =   IT_RT-PF * ( 3059 / 10000 ).
        IT_RT-CFEPS =   IT_RT-PF * ( 6941 / 10000 ).
        CLEAR EXSPEN.
        EXSPEN = IT_RT-CFEPS - 541.
        IT_RT-CFPEN = IT_RT-CFPEN + EXSPEN.
        PERFORM ROUND_OFF CHANGING IT_RT-CFPEN.
        IF IT_RT-CFEPS > 541.
          IT_RT-CFEPS = 541.
        ELSE.
          IT_RT-CFEPS = IT_RT-CFEPS.
        ENDIF.
        IT_RT-TOT_E = IT_RT-BASIC + IT_RT-HRA + IT_RT-CONV + IT_RT-SPCL  +    IT_RT-VDA + IT_RT-CANTALL + IT_RT-EDUCALL + IT_RT-NSFTALL +   IT_RT-MED   + IT_RT-LTA + IT_RT-LENC + IT_RT-BONUS +   IT_RT-SADV  + IT_RT-MISC_PAY + IT_RT-ARREAR +  IT_RT-STIPEN .
        IT_RT-TOT_D = IT_RT-EPF_D
                    - IT_RT-HRARC
                    - IT_RT-TRDED
                    - IT_RT-MISC_D
                    - IT_RT-SADV_R
                    + IT_RT-PTAX
                    + IT_RT-ITAX
                    + IT_RT-VPF
                    + IT_RT-PF
                    + IT_RT-EEESI  + IT_RT-CFPTX.
        IT_RT-EPS = IT_RT-BASIC * 833 / 10000.
        IF IT_RT-EPS > 541.
          IT_RT-EPS = 541.
          IT_RT-PENSION = IT_RT-BASIC * 1200 / 10000 - IT_RT-EPS.
        ELSE.
          IT_RT-PENSION = IT_RT-BASIC * 1200 / 10000 - IT_RT-EPS.
        ENDIF.
        IT_RT-ADMINC = IT_RT-BASIC * 110 / 10000.
        IT_RT-EDLI = IT_RT-BASIC * 50 / 10000.
        IT_RT-EDLIADMIN = IT_RT-BASIC * 1 / 10000.
        APPEND IT_RT.
        CLEAR IT_RT.
      ENDIF.
    *-- For Off cycle run
      IF PAYROLL-EVP-PAYTY IS NOT INITIAL AND
               PAYROLL-EVP-OCRSN IS NOT INITIAL AND
              PAYROLL-EVP-INOCR IS NOT INITIAL AND
              PAYROLL-EVP-OCCAT EQ '02' AND
              PAYROLL-EVP-PAYDT EQ PYENDDA.
        LOOP AT PAYROLL-INTER-RT INTO WA_RT.
          CASE  WA_RT1-LGART.
            WHEN '2600'.
              IT_RT-MED =  WA_RT-BETRG.
            WHEN '2500'.
              IT_RT-LTA =  WA_RT-BETRG.
            WHEN '2800'.
              IT_RT-BONUS =  WA_RT-BETRG.
          ENDCASE.
        ENDLOOP.
    IT_RT-TOT_E = IT_RT-BASIC + IT_RT-HRA + IT_RT-CONV + IT_RT-SPCL +  IT_RT-VDA + IT_RT-CANTALL + IT_RT-EDUCALL + IT_RT-NSFTALL + IT_RT-MED   + IT_RT-LTA + IT_RT-LENC + IT_RT-BONUS +  IT_RT-SADV  + IT_RT-MISC_PAY + IT_RT-ARREAR + IT_RT-STIPEN.
        IT_RT-TOT_D = IT_RT-EPF_D
                    - IT_RT-HRARC
                    - IT_RT-TRDED
                    - IT_RT-MISC_D
                    - IT_RT-SADV_R
                    + IT_RT-PTAX
                    + IT_RT-ITAX
                    + IT_RT-VPF
                    + IT_RT-PF
                  + IT_RT-STIPEN
                    + IT_RT-EEESI
                    + IT_RT-CFPTX.
        IT_RT-NET = IT_RT-TOT_E - IT_RT-TOT_D.
        APPEND IT_RT.
        CLEAR IT_RT.
      ENDIF.
    Edited by: Srikanth Kumar Talasu on Oct 22, 2008 4:04 PM

    HI Experts....
    I Already Created a report to Display Regular Payroll Payments of Each Employee for a Month. Now i want to add the Off cycle Payroll Payments values into this Existing Report.
    I Already Fetched the regular Pay roll Payments into Internal Table ITAB1. Now i am having Off cycle Payroll payments in ITAB2. Now i want to insert ITAB2-BONUS into ITAB1-BONUS.
    But While modifying the ITAB1 it is giving dump.
    The Code is:
    GET PAYROLL.
      IF PAYROLL-EVP-PAYTY IS INITIAL.
        LOOP AT PAYROLL-INTER-RT INTO WA_RT.
          CASE WA_RT-LGART.
            WHEN '2100'.
              IT_RT-BASIC = WA_RT-BETRG + IT_RT-BASIC.
            WHEN '2200'.
              IT_RT-HRA = WA_RT-BETRG + IT_RT-HRA.
            WHEN '2300'.
              IT_RT-CONV = WA_RT-BETRG + IT_RT-CONV.
            WHEN '2400'.
              IT_RT-SPCL = WA_RT-BETRG + IT_RT-SPCL.
            WHEN '2600'.
              IT_RT-MED =  WA_RT-BETRG + IT_RT-MED.
            WHEN '2500'.
              IT_RT-LTA = WA_RT-BETRG + IT_RT-LTA.
            WHEN '3100'.
              IT_RT-LENC = WA_RT-BETRG + IT_RT-LENC.
            WHEN '2800'.
              IT_RT-BONUS = WA_RT-BETRG + IT_RT-BONUS.
            WHEN '2900'.
              IT_RT-SADV = WA_RT-BETRG + IT_RT-SADV.
            WHEN '3000'.
              IT_RT-HRARC = WA_RT-BETRG + IT_RT-HRARC.
            WHEN '2700'.
              IT_RT-TRDED = WA_RT-BETRG + IT_RT-TRDED.
            WHEN '3200' .
              IT_RT-MISC_PAY = WA_RT-BETRG + IT_RT-MISC_PAY.
            WHEN '3300'.
              IT_RT-MISC_D = WA_RT-BETRG + IT_RT-MISC_D.
            WHEN '3600'.
              IT_RT-SADV_R = WA_RT-BETRG + IT_RT-SADV_R.
            WHEN '/3F1'.
              IT_RT-EPF_D = WA_RT-BETRG + IT_RT-EPF_D.
            WHEN '/3P3'.
              IT_RT-PTAX = WA_RT-BETRG + IT_RT-PTAX.
            WHEN '/460'.
              IT_RT-ITAX = WA_RT-BETRG + IT_RT-ITAX.
            WHEN '/560'.
              IT_RT-NET = WA_RT-BETRG + IT_RT-NET.
            WHEN '/3F2'.
              IT_RT-VPF = WA_RT-BETRG + IT_RT-VPF.
           WHEN '/ZF5'.
              IT_RT-PF = WA_RT-BETRG + IT_RT-PF.
            WHEN '/552'.
              IT_RT-ARREAR = WA_RT-BETRG + IT_RT-ARREAR.
            WHEN '9876'.
              IT_RT-STIPEN = WA_RT-BETRG + IT_RT-STIPEN.
            WHEN '2410'.
              IT_RT-VDA = WA_RT-BETRG + IT_RT-VDA.
            WHEN '2310'.
              IT_RT-CANTALL = WA_RT-BETRG + IT_RT-CANTALL.
            WHEN '2210'.
              IT_RT-EDUCALL = WA_RT-BETRG + IT_RT-EDUCALL.
            WHEN '1ESI'.
              IT_RT-EEESI = WA_RT-BETRG + IT_RT-EEESI.
            WHEN '/3E1'.
              IT_RT-EEESI = WA_RT-BETRG + IT_RT-EEESI.
            WHEN '/3E2'.       
              IT_RT-ERESI = WA_RT-BETRG + IT_RT-ERESI.
            WHEN '2008'.
              IT_RT-NSFTALL = WA_RT-BETRG + IT_RT-NSFTALL.
            WHEN '/ZP1'.
              IT_RT-CFPTX = WA_RT-BETRG + IT_RT-CFPTX.
          ENDCASE.
        ENDLOOP.
        IT_RT-ARREAR = IT_RT-ARREAR + IT_RT-PF.
        IT_RT-CFPEN =   IT_RT-PF * ( 3059 / 10000 ).
        IT_RT-CFEPS =   IT_RT-PF * ( 6941 / 10000 ).
        CLEAR EXSPEN.
        EXSPEN = IT_RT-CFEPS - 541.
        IT_RT-CFPEN = IT_RT-CFPEN + EXSPEN.
        PERFORM ROUND_OFF CHANGING IT_RT-CFPEN.
        IF IT_RT-CFEPS > 541.
          IT_RT-CFEPS = 541.
        ELSE.
          IT_RT-CFEPS = IT_RT-CFEPS.
        ENDIF.
        IT_RT-TOT_E = IT_RT-BASIC + IT_RT-HRA + IT_RT-CONV + IT_RT-SPCL  +    IT_RT-VDA + IT_RT-CANTALL + IT_RT-EDUCALL + IT_RT-NSFTALL +   IT_RT-MED   + IT_RT-LTA + IT_RT-LENC + IT_RT-BONUS +   IT_RT-SADV  + IT_RT-MISC_PAY + IT_RT-ARREAR +  IT_RT-STIPEN .
        IT_RT-TOT_D = IT_RT-EPF_D
                    - IT_RT-HRARC
                    - IT_RT-TRDED
                    - IT_RT-MISC_D
                    - IT_RT-SADV_R
                    + IT_RT-PTAX
                    + IT_RT-ITAX
                    + IT_RT-VPF
                    + IT_RT-PF
                    + IT_RT-EEESI  + IT_RT-CFPTX.
        IT_RT-EPS = IT_RT-BASIC * 833 / 10000.
        IF IT_RT-EPS > 541.
          IT_RT-EPS = 541.
          IT_RT-PENSION = IT_RT-BASIC * 1200 / 10000 - IT_RT-EPS.
        ELSE.
          IT_RT-PENSION = IT_RT-BASIC * 1200 / 10000 - IT_RT-EPS.
        ENDIF.
        IT_RT-ADMINC = IT_RT-BASIC * 110 / 10000.
        IT_RT-EDLI = IT_RT-BASIC * 50 / 10000.
        IT_RT-EDLIADMIN = IT_RT-BASIC * 1 / 10000.
        APPEND IT_RT.
        CLEAR IT_RT.
      ENDIF.
    *-- For Off cycle run
      IF PAYROLL-EVP-PAYTY IS NOT INITIAL AND
               PAYROLL-EVP-OCRSN IS NOT INITIAL AND
              PAYROLL-EVP-INOCR IS NOT INITIAL AND
              PAYROLL-EVP-OCCAT EQ '02' AND
              PAYROLL-EVP-PAYDT EQ PYENDDA.
        LOOP AT PAYROLL-INTER-RT INTO WA_RT.
          CASE  WA_RT1-LGART.
            WHEN '2600'.
              IT_RT-MED =  WA_RT-BETRG.
            WHEN '2500'.
              IT_RT-LTA =  WA_RT-BETRG.
            WHEN '2800'.
              IT_RT-BONUS =  WA_RT-BETRG.
          ENDCASE.
        ENDLOOP.
    IT_RT-TOT_E = IT_RT-BASIC + IT_RT-HRA + IT_RT-CONV + IT_RT-SPCL +  IT_RT-VDA + IT_RT-CANTALL + IT_RT-EDUCALL + IT_RT-NSFTALL + IT_RT-MED   + IT_RT-LTA + IT_RT-LENC + IT_RT-BONUS +  IT_RT-SADV  + IT_RT-MISC_PAY + IT_RT-ARREAR + IT_RT-STIPEN.
        IT_RT-TOT_D = IT_RT-EPF_D
                    - IT_RT-HRARC
                    - IT_RT-TRDED
                    - IT_RT-MISC_D
                    - IT_RT-SADV_R
                    + IT_RT-PTAX
                    + IT_RT-ITAX
                    + IT_RT-VPF
                    + IT_RT-PF
                  + IT_RT-STIPEN
                    + IT_RT-EEESI
                    + IT_RT-CFPTX.
        IT_RT-NET = IT_RT-TOT_E - IT_RT-TOT_D.
        APPEND IT_RT.
        CLEAR IT_RT.
      ENDIF.
    Edited by: Srikanth Kumar Talasu on Oct 22, 2008 4:04 PM

  • Oracle Payroll and Payslip Report problem

    Hi everyone,
    When I am running the Saudi payroll registered and Saudi payslip report in oracle r12. in the parameter list i didn't getting the current reporting period end date, it showing me only old reporting end period date. please can anyone help me how to get lov of all the period end dates to run the payroll and payslip.
    Thank you

    Solved, Thank you

  • HR Payroll and ESS Problem

    Hello,
    We had a SAP HR PAYROLL and Portal - ESS implemented in our lanscape. When payroll is processing (generally month end) we are locking the ess user's in Portal because users are getting locked automatically(e.g: when attempted to apply for leave via portal) and also payroll or leave data updation is getting fail in respective infotypes.
    Now, I want some one to tell, what is the general procedure in most of the projects?
    In case users are locked during payroll run, how do they apply for leaves?
    Our customer expectation is not to lock users in any of the system during payroll run and should do their activities as usual. Whats the best procedure to acheive this?
    Thanks.

    In my last ESS implementation...when the payroll was being processed the Payroll used to be locked and not the users and then the users were not able to edit their Banks Information ...but they should be able to apply for leaves....are you using a custom procedure to lock the users during the Payroll run....
    Regards,
    Shikhil

  • Hr-abap payroll (payslip problem)

    Hi,
    I am modifying the payslip.
    Here in input screen we r using plant option.
    my problem is if the person shifts from one plant to another plant then the payslip of that person must be latest plant payslip.
    but if the end user takes payslip of the persons according to plant wise then that particular persons payslip is comming in both the plants.
    I am using the following FM.
    CALL FUNCTION 'LAST_DAY_OF_MONTHS'
        EXPORTING
          DAY_IN            = W_BEGDA
        IMPORTING
          LAST_DAY_OF_MONTH = W_ENDDA.
      IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    is there any function module like a person joining the middle of the month
    for example:
    he joins on 15 th of the month and it has to calculate the last day ofthe month.

    Hi
    Eg:
    parameters: s_date type sy-datum,
                      e_date type sy-datum.
      s_date = sy-datum.
      call function 'RP_LAST_DAY_OF_MONTHS'
           exporting
                day_in            = s_date
           importing
                last_day_of_month = e_date.
    write : e_date.
    Regards
    Raj

  • HR- Attendance Problem related to payroll program

    Hello Experts,
                        I have created the zreport from attendance in HR-payroll ( Tcode: PT91_ATT ). Actually I have copy the whole satandard report code (with Tcode: PT91_ATT ) to my zreport for the customized requirement. Report is executing fine  with dispalying the employee code(PERNR), name of employee (BNAME), and the date wise display like 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31.
    My requirement is to add the three fields more in the same printing logic i.e. Total no of Present(P), Total no of Leaves(L), Total no of Absents(A) with in the same report. I have done some changes but they are not executing. Can you please suggest how it can be done. If possible do suggest with code of program please.
    Regards,
    Akg

    Hi
    Unfortunately, I don't believe in spoon feeding and hence not be posting the source code here.
    I believe I have given enough information as to what can be used to get the report developed.
    Further to this, let me explain you the logic to be followed in detail -
    Steps to be followed -
    1. Use Logical DB PNP & node PERNR of it.
    2. Loop through all the personnel numbers between GET PERNR... END-OF-SELECTION
    3. Query time data for each employee using the function module HR_FORMS_TIM_GET_B2_RESULTS. First, loop through the internal table FT_PSP to get the "SHIFT" and "Weekly off" here and fill the day slots.
    4. Now that you have got the weekly off's of the employee check for other possible entries such as PRESENCE, ABSENCE(CL,SL,PL et al.) which can be found in the internal table FT_TP of B2 cluster.
    5.Finally, when you have data for entire month count the related PRESENCE & ABSENCE and any other things that you would like to have in your output.
    Let me know, if you need anything else. Perhaps, not the source code.
    Regards,
    Rupesh Mhatre
    Edited by: rumhat on Mar 24, 2011 2:32 PM
    Edited by: rumhat on Mar 24, 2011 2:33 PM

  • Problem regarding off-cycle payroll

    Hi experts,
    I have question about of-cycle payroll. This is the first time I want to run off cycle payroll
    1.I hired one staff after payroll run this month. If 'mI using infotype 0267 , Do I have to maintain infotype 0008.
    For example, this staff should get salary $5k.After prorate, for this month, he will only get $1k.If i'm using infotype 0267, I will 
    key-in $1k manually. But do I stil have to key-in $5k in infotype 8.
    2.I have finished process payroll for this month. So I exit payroll. If I want to run off-cycle payroll, do I have to release back  payroll.If I release back payroll,payroll period in PA03 will show 11/2010. Is it ok to run off-cycle for this month? (payrol first, then off-cycle)
    3. How about if I want to run off-cycle first before payroll. For example next month, I will release payroll.  Payroll period in payroll control will show 11/2010. After finish off-cycle, I have to exit payroll. So how, to run payroll. If I tick release payroll, payroll control will be 12/2010.(off-cycle first, then payroll)
    4. If I want to pay advance, can I configure so that I don't have to maintain infotype 8. For example, one staff get paid $5k. If i pay advance in infotype 267, let say $1k. I have to maintain $4k for this staff this month. Is it any config that I can maintain $5k in basic pay. This is because I want to pay advance for 5 thousands staff. After that, I have to change infotype 8 to make sure the basic pay will deduct this advance. I think to change all 5 thousands staff is too messy.
    5. To run off-cycle, what is the best infotype to maintain, 15 or 267
    6. I want to pay advance for staff. Let say, the staff salary $5.5k. After statutory he will get 5k. I want the advance to deduct statutory. For example, let say advance$1.2k, he will only get$1k after statutory. How about if I want to pay advance without deduct statutory.

    Hi Mj,
    1) Yes, you need to mainatain IT0008 , since it is reuuired to generate WPBP.
    2) No for processing payroll one shoudl not release payroll period.  Pre-request is to have last payroll period in EXIT mode.
    3) As i sad its not requred to release payroll for offcycle procssing
    4) For making advance, some sap standard program are provided. Please try to explosure same.
    5) Its always IT0267
    6)  No Idea Sorry.
    Thanks
    Yogesh

Maybe you are looking for