Baisc pay change

Hi All,
When we tried to change the basic pay IT 0008, in the payroll its throughout below error
"Division by zero not performed
Calculation rule    XPPF*/810"
How to fix this in factoring,
How w ecan fix this issue
SD

Hi,
Check out this forum: Error Division by zero not performed during run payroll
There is a similar issue. You may uses other wagetype to do the factor (/801, /802...) if it fix better to you.
Kind Regards,
Edoardo

Similar Messages

  • Standard report on promotion and pay changes

    Hi All,
    Is there any standard report which captures promotion data along with pay changes.
    Regards
    Aryan

    query can be created to extract information from master records i.e Infotypes. For example, by creating a query , the data relating to an employee contained in various Infotypes can be extracted.
    Proceedure :
    Decide on the various Infotypes we want to make the query. Decide on the area where we want to query i.e Global area or Standard area. Standard area is client specific and globel area will include all clients.
    Menu : HR u2013 PM u2013 Admn - Information System - Adhoc Query
    Select area standard and select the user group already created
    Creation of new query :
    TC SQ03 - Select Environment u2013 Select Standard Area - Enter -- If new user group is to be created, enter name of the user group, click on create and enter necessary information and exit after saving
    TC SQ02 - Enter name of the Infoset u2013 Create u2013 enter name of Infoset - Data source -- > Table join by basis table u2013 give name of table e.g pa0000 - Enter - Click on insert table if we want to include more tables u2013 give name of table one by one and after finishing, place cursor on the joining lines and right click to delete unwanted relationships - check - and go back - field groups - include all table fields - click on generate button - go out
    TC SQ03 - Select user group - eg. Payroll
    Infoset - Enter name of newly created Infoset
    Assign users and Infosets - Assign infosets - put tick on payroll - save and go back
    TC PAAH - Expand the nodes and put tick on relevant fields depending upon necessity
    Save the query by giving the same name as infoset for easyness..

  • Quick pay change required.

    Hi , I have a question regarding quick pay.
    Please read this
    Currently, all quick pays are manual checks. This has created hardship for the employees who have direct deposit, as they anticipate all of their paychecks being automatically deposited to their accounts. When there are mistakes, it is a huge inconvenience to the employee who must now collect their check, make the deposit and wait for the check to clear. With direct deposit, there is no wait period; the money is available immediately.
    We are requesting that all Quick Pays default to the payment method on the employee's record with the option to select manual check. (there are instances where supervisors wish to hand delivery bonus checks).
    Can anybody give me a solution for this.
    thanks
    kumar

    what is your legislation?
    I thought the core system should do it by default: run quickpay, and the pre-payments on top of it, what distributes the money all over the personal payment methods.

  • WF notification in case Employee Data changes

    Hello Experts,
    We are looking to get some kind of notification if Infotype 8(Basic Pay) of an employee is changed. I was wondering if anyone has implement this scenario before..
    We need to send some information if the basic pay changes like a workflow message to a user's sap inbox.
    Please advise.
    thank you very much in advance.
    Mridula

    Mridula,
    You may use business object "BASICPAY" nad event " Changed" to trigger notifications.
    Regards
    SVS

  • HCM Process and Forms - Changes to Form Issue

    We have a scenario within HCM processes and forms where the changes being made by an intermediate approval step is not being sent to the next level approver.  For example, in a pay change the initiating manager sends the pay change to his/her boss for approval, then once approved the form is sent to HR for final approval and update into R/3.
    In this scenario the initiating manager starts the process and makes appropriate updates to the form (including comments).  This then routes to that manager's manager for updates/approval.  When processing the form, the approving manager can see the information input by the initiating manager.  The approving manager then has the opportunity to make appropriate changes within the form and add comments before it is approved and sent to HR for final approval.
    Once the approving manager makes changes and sends this to HR, when HR processes the form they see the changes as if it was sent by initiating manager (HR does not see the changes made by the approving manager).
    I appreciate any insight you may have on this issue.
    Regards,
    Brad

    Sounds like you process is designed incorrectly and your are having problems with your process object integrity. You need to be careful with loops/branches when designing your process. Are you doing it all in the same Form Scenario and just using multiple steps? The form scenario will "share" the "data" hence you can have issues. You can split it to a differnt form scenario and pass the data over from the other FS to your FS. Then you know you will have your own data there. I often see people trying to do their whole process within one form scenario and use multiple steps without realizing the data integrity issues with that.
    Hope this helps.

  • PCR (Personnel Change Request) in ess/mss workflow number

    Hi ,
    i am working on PCR (Personnel Change Request) Hr workflow
    object it is es/mss object.please tell me is there any standard workflow available for this .if so please tell me the workflow number.
    Regards,
    charita.

    Hi,
    Find the following workflows on the ESS/MSS side,
    Personnel Data Change 30300008 (Bank) 01000015 (Address)
    Name and Marital Status Change 1200170
    New Hire 17900011
    Re Hire 17900011 to be customized
    Pay Change 20000003
    Special Payment WS50000041
    Domestic Transfer WS50000031
    International Transfer WS50000031 to be customized
    Seperation WS50000041 to be customized
    Position Change WS50000041 to be customized
    Leave Request 12300111
    For ESS follow the link for Help,
    http://help.sap.com/saphelp_erp2005/helpdata/en/f6/263359f8c14ef98384ae7a2becd156/frameset.htm
    Reward for useful answers!
    Richard A

  • Question about:Job Pricing & Basic Pay Range Restriction...

    Hi Experts,
    I did servral settings to acheive Basic Pay Range Restriction(Warning) which uses Job Pricing concept:
    1-Define Pay Grades And Levels
        In this step, I build a records to describe a payment range for  certain evaluation points
    2-Create a record of infotype 1050(Evaluation Results) for certain position(let it be 10000001), in which I evaluate this position as 20 points.
    3-Assign 10000001 to an employee
    But when I input 0008 baisc pay amount for this employee,  range check does not happen as expected. Is there any steps I missed?
    It's urgent.
    Thanks in adv.
    Br,Kee

    In-line to tht check the IT1005
    http://help.sap.com/saphelp_47x200/helpdata/en/66/9bb8923aff11d189370000e829fbbd/frameset.htm

  • 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

  • Creation of new employment status

    Hi,
    We want to create new Employment Status similar to "0" - Withdrawn.  This status should have same features like status "0". I have created a new status "4" and assigned the same to an action. However, the attributes of the new status "4" are not same as "0".
    Eg: I have assigned the new status "4" to the termination action. When I execute this action the system updates the employment status to "4". However, I can execute a transfer action or pay change action on the same date of termination action. Ideally system does not allow 2 status change actions on same day. The system allows payroll to be run with the employment status as "4".
    Please let me know of any missing configuration or anything I need to check.
    Thanks.

    Hi all,
    thanks for reply.
    we can create new status from table V_T529U with description.
    We can assign that status to Perticular action also but after that when i run quota generation or payroll for that employee, logically it should not allow me.
    but in this case , it is allowing which is not in case with standard employment status 0- withdrawn.
    from my understanding , we can not create new standard employment status in sap hr as it refelects in all payroll and time related standard programs , which we can not change by adding new status.
    Please give your observations may b i am  wrong.

  • How to implement Strategy pattern in ABAP Objects?

    Hello,
    I have a problem where I need to implement different algorithms, depending on the type of input. Example: I have to calculate a Present Value, sometimes with payments in advance, sometimes payment in arrear.
    From documentation and to enhance my ABAP Objects skills, I would like to implement the strategy pattern. It sounds the right solution for the problem.
    Hence I need some help in implementing this pattern in OO. I have some basic OO skills, but still learning.
    Has somebody already implemented this pattern in ABAP OO and can give me some input. Or is there any documentation how to implement it?
    Thanks and regards,
    Tapio

    Keshav has already outlined required logic, so let me fulfill his answer with a snippet
    An Interface
    INTERFACE lif_payment.
      METHODS pay CHANGING c_val TYPE p.
    ENDINTERFACE.
    Payment implementations
    CLASS lcl_payment_1 DEFINITION.
      PUBLIC SECTION.
      INTERFACES lif_payment.
      ALIASES pay for lif_payment~pay.
    ENDCLASS.                 
    CLASS lcl_payment_2 DEFINITION.
      PUBLIC SECTION.
      INTERFACES lif_payment.
      ALIASES pay for lif_payment~pay.
    ENDCLASS.                   
    CLASS lcl_payment_1 IMPLEMENTATION.
      METHOD pay.
        "do something with c_val i.e.
        c_val = c_val - 10.
      ENDMETHOD.                   
    ENDCLASS.                  
    CLASS lcl_payment_2 IMPLEMENTATION.
      METHOD pay.
        "do something else with c_val i.e.
        c_val = c_val + 10.
      ENDMETHOD.  
    Main class which uses strategy pattern
    CLASS lcl_main DEFINITION.
      PUBLIC SECTION.
        "during main object creation you pass which payment you want to use for this object
        METHODS constructor IMPORTING ir_payment TYPE REF TO lif_payment.
        "later on you can change this dynamicaly
        METHODS set_payment IMPORTING ir_payment TYPE REF TO lif_payment.
        METHODS show_payment_val.
        METHODS pay.
      PRIVATE SECTION.
        DATA payment_value TYPE p.
        "reference to your interface whcih you will be working with
        "polimorphically
        DATA mr_payment TYPE REF TO lif_payment.
    ENDCLASS.                  
    CLASS lcl_main IMPLEMENTATION.
      METHOD constructor.
        IF ir_payment IS BOUND.
          me->mr_payment = ir_payment.
        ENDIF.
      ENDMETHOD.                  
      METHOD set_payment.
        IF ir_payment IS BOUND.
          me->mr_payment = ir_payment.
        ENDIF.
      ENDMETHOD.                  
      METHOD show_payment_val.
        WRITE /: 'Payment value is now ', me->payment_value.
      ENDMETHOD.                  
      "hide fact that you are using composition to access pay method
      METHOD pay.
        mr_payment->pay( CHANGING c_val = payment_value ).
      ENDMETHOD.                   ENDCLASS.                  
    Client application
    PARAMETERS pa_pay TYPE c. "1 - first payment, 2 - second
    DATA gr_main TYPE REF TO lcl_main.
    DATA gr_payment TYPE REF TO lif_payment.
    START-OF-SELECTION.
      "client application (which uses stategy pattern)
      CASE pa_pay.
        WHEN 1.
          "create first type of payment
          CREATE OBJECT gr_payment TYPE lcl_payment_1.
        WHEN 2.
          "create second type of payment
          CREATE OBJECT gr_payment TYPE lcl_payment_2.
      ENDCASE.
      "pass payment type to main object
      CREATE OBJECT gr_main
        EXPORTING
          ir_payment = gr_payment.
      gr_main->show_payment_val( ).
      "now client doesn't know which object it is working with
      gr_main->pay( ).
      gr_main->show_payment_val( ).
      "you can also use set_payment method to set payment type dynamically
      "client would see no change
      if pa_pay = 1.
        "now create different payment to set it dynamically
        CREATE OBJECT gr_payment TYPE lcl_payment_2.
        gr_main->set_payment( gr_payment ).
        gr_main->pay( ).
        gr_main->show_payment_val( ).
      endif.
    Regads
    Marcin

  • How to raise an event from a program

    Hi,
    I am creating a workflow for HR, the person will request a basic pay change than, this will start the workflow. For this i am making a screen from where i need to triger the event for the workflow.
    Does anybody has any idea? of how to raise an event from a program. or has anybody worked on a scenario like this
    Khusro Habib

    You can also use the FM SAP_WAPI_CREATE_EVENT which is a little newer I think. (I don't have access to a system today so that may not be the exact name of the FM but if you search SE37 under SAPWAPIEVENT* you should find it.
    the parameters will be the event name, and the object key.  The object key will be the key field of the workflow object you are using. 
    For example if you were using the saled document object then the object key would be the sales document number.  Carefull how you enter the object key, it can be a little tricky on whether or not you need the leading zeros in the input parameter. 
    Hope this helps.
    Brent

  • Business objects in HR

    hai experts....
    is any business objects in HR module like MM (bus2012,2010...)and SD (bus2032...)etc...
    please give me with the infotypes....
    thanks and regards ,
    velu.....

    Hi,
    Find the following HR Related workflows / some fo them are in  ESS/MSS ,
    Personnel Data Change 30300008 (Bank) 01000015 (Address)
    Name and Marital Status Change 1200170
    New Hire 17900011
    Re Hire 17900011 to be customized
    Pay Change 20000003
    Special Payment WS50000041
    Domestic Transfer WS50000031
    International Transfer WS50000031 to be customized
    Seperation WS50000041 to be customized
    Position Change WS50000041 to be customized
    Leave Request 12300111
    For ESS follow the link for Help,
    http://help.sap.com/saphelp_erp2005/helpdata/en/f6/263359f8c14ef98384ae7a2becd156/frameset.htm
    Reward for useful answers!
    Richard A

  • Reasons(standard) for Payroll lock

    Dear All,
    We want to capture the reason for payroll locking.Where we can do this configuration. We have a option to capture reasons, like while doing basic pay changes, Actions, etc..We are looking similarly for this also.
    Could you share other possibilities..
    Thanks in advance.
    Team,. give ytour inputs on this.  Plz.
    MVR
    Edited by: MVR on Feb 22, 2011 10:45 AM

    Hi,
    Nilesh's solution is a great one.
    The matter is that IT0003 is not time-dependent.
    If you want to keep track of payroll lock reasons in a time-dependent manner; another option would be to create a brand new infotype just for this purpose (with one field reason code, text of which is to be held in lookup table -as said by Nilesh-)
    Regards,
    Dilek

  • Reporting who could access a system

    Hi
    I need to be able to generate a report on which users could have accessed a given system in a given timeframe (ie. the last 2 weeks), I have been through the menus and I can't seem to find any report-type that fits this requirement.
    Is it possible to do this, if so, which direction should I proceed? I'd imagine that it is a combination of running the reconcile on regular intervals and logging the accountIds that is returned, and afterwards generate a audit report with the desired info.
    I'm running IDM 7.1 and my resource is Solaris and possibly shell-script adapters (for Linux and FreeBSD).
    Any pointers and help is greatly appreciated.
    Regards
    Thomas

    Alex
    We have load balancing on the ITS servers but last year the number of users who tried to logon was double that of the concurrent number of users for the load balancing.  Is there a way of setting the load balancing to allow no more that the maximum number its load balanced for?
    We have staged pay change notifications according to grade so we don't experience this high load at any other time.
    Thanks
    Diane

  • Pull Current and First Previous Record

    Hello,  I am not having any luck on how to do this...
    I am doing a salary history report.  I want to pull the current salary and the first previous salary only to compare the difference of the last two pay rates in the history.
    The salary history records contain more than 2 records.  Some have up to 10 records in salary history.  How can I pull only the last two records?  Is this possible?
    Any help would be appreciated. Thank you!

    Yes I tried that but it did not work like I wanted it to right now.  Maybe i need to set up my report differently.
    Right now, I have selected only the records with a 10/31/09 date.  I wanted to pull all the employees who got a pay change on 10/31/09 and see how much of an increase they got.  When I use the previous forumula it pulls from the employees pay rate in the report instead of from the database.
    For example:
                         Current   Previous
    Employee A:   $12         
    Employee B:   $10         $12
    Employee C:   $11         $10
    Employee D:    $9           $11
    Should I remove the selection criteria for the 10/31/09?  I only want to view the employees who have a pay record on the 10/31/09 though.

Maybe you are looking for

  • IMac G5 wont boot.

    Hi guys, in my school there is a classroom with iMacs G5 and my job is to take care of it. So I decide to set firmware passwords on all iMacs. When I set firmware password on first iMac and I reboot it, that iMac cant boot to os x and single user eve

  • How to find JPanel viewable or drawing area size

    hi, I have a two small question. First one is, I have a JPanel what I need is to find the viewable area size or the drawing size of the Panel. I don't want to get the size of the Title bar. All I need is how to find the actual drawing area not includ

  • Can I send a gift certificate by email to Guam?

    Can a US resident buy a gift certificate for US serviceman in Guam?

  • Sources of Captivate information

    Hi, I am trying to understand how feature requests and support work and where to find information on Adobe Captivate . Can people please advise if there are other sources of information? Support  The official support area http://helpx.adobe.com/capti

  • InDesign CC 2014 Preferences Issue

    I am running InDesign CC 2014. When I open a new document, the new document shows the page width and height in points or picas. I have set my preferences to inches but that doesn't seem to do anything. Didn't have this issue before.