cancel
Showing results for 
Search instead for 
Did you mean: 

RP_PROVIDE_FROM_FRST & RP_PROVIDE_FROM_LAST

Former Member
0 Kudos

Dear friends

Coul any1 of u tel me th exact diff bet th macros RP_PROVIDE_FROM_FRST & RP_PROVIDE_FROM_LAST which r used for HR application.

regards

sakthi

Accepted Solutions (0)

Answers (4)

Answers (4)

venkat_o
Active Contributor
0 Kudos

Hi Sakthi vel, Check the program.


REPORT ztest1.
TABLES: pernr.
INFOTYPES: 0001.

GET pernr.
  rp_provide_from_frst p0001 space pn-begda pn-endda.
  IF pnp-sw-found EQ '1'.
    WRITE: / pernr-pernr, p0001-stell, pn-begda, pn-endda.
  ELSE.
    REJECT.
  ENDIF.

"After GET PERNR event p0001 internal table is filled up with  
"data for one employee. If you have multiple records in the 
"internal table, If use rp_provide_from_frst macro along with 
"parameters dates , It gets the first record from the body of 
"the internal table and puts on the header of the internal table 
"in the given period pn-begda and pn-endda. It does not get 
"from database table.

REPORT ztest1.
TABLES: pernr.
INFOTYPES: 0001.

GET pernr.
  rp_provide_from_last p0001 space pn-begda pn-endda.
  IF pnp-sw-found EQ '1'.
    WRITE: / pernr-pernr, p0001-stell, pn-begda, pn-endda.
  ELSE.
    REJECT.
  ENDIF.

"After GET PERNR event p0001 internal table is filled up with  
"data for one employee. If you have multiple records in the 
"internal table, If use rp_provide_from_last macro along with 
"parameters dates , It gets the last record from the body of 
"the internal table and puts on the header of the internal table 
"in the given period pn-begda and pn-endda. It does not get 
"from database table.
I hope that it helps u . Regards, Venkat.O

Former Member
0 Kudos

RP_PROVIDE_FROM_FRST will fetch the first record and

RP_PROVIDE_FROM_LAST will fetch the latest or recent record.

Example : If u want to get the adderess(0006) of the employee then generally the requirement will be to get the current adderess of the employee,so u need to use RP_PROVIDE_FROM_LAST macro.

<REMOVED BY MODERATOR>

Edited by: Alvaro Tejada Galindo on Apr 21, 2008 1:29 PM

Former Member
0 Kudos

Hi,

RP_PROVIDE_FROM_FRST : It will fetch the old record

between pn-begda and pn-endda.

RP_PROVIDE_FROM_LAST: It will pick up the latest record between pn-begda and pn-endda.

Thanks,

Anil.G

Former Member
0 Kudos

Hi experts,

i have a query on this..

in my selection screen...i have selected current month

but when i use rp_provide_frm_frst space pn-begda pn-endda...(pn-begda ---is defaulted to 1st on the month and pn-ennda defaulted to the last date of the month)

it fetches the very first record ....which does not satisfy the current month condition!!!!

pls clarify...!

Former Member
0 Kudos

Hi Sakthi,

If you have an infotype e.g. nnnn that can have a number of records over a period of time e.g.

01.01.2000 to 01.01.2005 xyz

01.01.2007 to 01.02.2009 xx

01.01.2010 to 01.01.2056 sss

then RP_PROVIDE_FROM_FRST nnnn would return

01.01.2000 to 01.01.2005 xyz

and RP_PROVIDE_FROM_LAST nnnn would return the lates record i.e. 01.01.2010 to 01.01.2056 sss

Regards,

Aditya