‎2008 Jun 24 3:13 PM
Hi all, I'm wondering how do I report retro in payroll, so far I know that in table HRPY_RGDIR field
CALCD = 'X', it's retro,
Things are how do I report it?
Does retro effect wagetype? so retro amount has separated wagetype? in my case I think I will need to report RT amount instead of CRT's to report the retro amount only.
Any suggestion? Thanks in advance!
‎2008 Jun 24 3:19 PM
Hi,
Ull get only RT amount.
U need to get 'rgdir' using FM CU_READ_RGDIR.
from this get the seqnr where fpper <> inper and srtza <> 'A'.
(to get retro ... )
Pass this seqnr to rp-imp-c2-ru.(if it's US payroll) and get
RT structure ..
Read RT for the Wage types(LGART) and get amount(BETRG)
Regards,
Srinivas.
‎2008 Jun 24 3:19 PM
Hi,
Ull get only RT amount.
U need to get 'rgdir' using FM CU_READ_RGDIR.
from this get the seqnr where fpper <> inper and srtza <> 'A'.
(to get retro ... )
Pass this seqnr to rp-imp-c2-ru.(if it's US payroll) and get
RT structure ..
Read RT for the Wage types(LGART) and get amount(BETRG)
Regards,
Srinivas.
‎2008 Jun 24 3:27 PM
Hi Srini, prompt reply, GREAT thanks! I did use CU_READ_RGDIR. Got sequence number, so you mean the following fields are
fpper = A
inper = A
srtza = A
to make sure it's retro? dont you need to consider field CALCD?
I noticed that you use rp-imp-c2-ru to get payroll result but what's the point if I use FM "PYXX_READ_PAYROLL_RESULT"? any difference?
‎2008 Jun 24 3:31 PM
I mean if UR using macro to read .. U need to check that
the for period <> the in period and the SRTZA <> A ...
U can use FM also ..
‎2008 Jun 24 3:44 PM
I got it thanks!
I have some testing wagetypes, they are /301 and /603. So in case it's a regular run, these wagetypes can report the amount normally, in retro case, the amount still sit in these wagetype? or it has any indicator to tell /301 has a retro amount?
‎2008 Jun 24 3:44 PM
U can loop at rgdir as ...
LOOP AT rgdir WHERE ipend <= pn-endda AND ipend >= pn-begda
AND void IS INITIAL
AND reversal IS INITIAL
AND ocrsn IS INITIAL
AND inocr IS INITIAL.
original results => forperiod = inperiod
retro results => forperiod <> inperiod
IF rgdir-fpper <> rgdir-inper.
assign emp no. & seq no. to rx-key
v_seqno = rgdir-seqnr.
ENDIF.
ENDLOOP.
pass this to the FM below ..
CALL FUNCTION 'PYXX_READ_PAYROLL_RESULT'
EXPORTING
clusterid = c_relid
employeenumber = pernr-pernr
sequencenumber = v_seqno <---
read_only_international = c_x
CHANGING
payroll_result = gs_result.
LOOP AT gs_result-inter-rt INTO gs_rt.
CASE gs_rt-lgart.
Gross salary
WHEN c_101. "/101
it_data-gross = gs_rt-betrg.
ENDCASE.
ENDLOOP.
‎2008 Jun 24 3:45 PM
‎2008 Jun 24 3:47 PM
‎2008 Jun 24 3:50 PM
yes .. U need to send a different sequence number where
srtza <> 'A'.
‎2008 Jun 24 3:53 PM
Correct me if I'm wrong, you're reading this part for off-cycle run?
LOOP AT rgdir WHERE ipend <= pn-endda AND ipend >= pn-begda
AND void IS INITIAL
AND reversal IS INITIAL
AND ocrsn IS INITIAL
AND inocr IS INITIAL.
Why did you have to repeat Reversal Indicator and Off Cycle reason twice?
‎2008 Jun 24 3:57 PM
for off-cycle .. we will not check for the below condition ..
ocrsn IS INITIAL .. instead OCRSN will not be initial ..
‎2008 Jun 24 4:00 PM
Yes, OCRSN and PAYTY has to be NOT INITIAL in case of Off cycle.
I'm getting your idea now, so again,
OCRSN and VOID have to be INITIAL , and SRTZA = 'A' in Retro case, please confirm that I'm correct. Will mark this as answered.
‎2008 Jun 24 4:03 PM
‎2008 Jun 24 4:15 PM