0% found this document useful (0 votes)
4 views

Abap

Uploaded by

tntkrishna0
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Abap

Uploaded by

tntkrishna0
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2

loop at lt_pa0001 into wa_pa0001.

"--------------------------------------------------------------------------"
Populate final data structure
wa_final-act_year = wa_pa0001-begda+0(4).
wa_final-act_month = wa_pa0001-begda+4(2).
wa_final-emp_type = wa_pa0001-persg.
"--------------------------------------------------------------------------"
Determine leave balances and transactions
read table lt_pa2006 into wa_pa2006 with key ktart = '14'.
if sy-subrc eq 0.
wa_final-open_bl_el = wa_pa2006-ktart.
else.
wa_final-open_bl_hpl = wa_pa2006-ktart.
endif.

at new pernr.
wa_final-act_emp = wa_pa0001-pernr.
loop at lt_pa0416 into wa_pa0416.
lv_counter = wa_pa0416-pernr.
if wa_pa0416-pernr eq lv_counter.
lv_total = wa_pa0416-numbr + lv_total.
endif.
endloop.
wa_final-encash_el = lv_total.
if wa_final-encash_el gt '300'.
wa_final-lapse_el = wa_final-encash_el.
endif.
endat.

* read table lt_pa0416 into wa_pa0416 with key pernr = wa_pa0001-pernr.


* if sy-subrc eq 0.
* wa_final-encash_el = wa_pa0416-numbr.
* if wa_pa0416-numbr gt '300'.
* wa_final-lapse_el = wa_pa0416-numbr.
* else.
* wa_final-grant_el = wa_pa0416-numbr.
* endif.
* endif.

read table lt_pa2001 into wa_pa2001 with key subty = '1002'.


if sy-subrc eq 0.
wa_final-avail_el = wa_pa2001-awart.
else.
wa_final-avail_hpl = wa_pa2001-awart.
endif.
"----------------------------------------------------------------------------"
Calculate closing balances
wa_final-close_el = ( wa_final-grant_el + wa_final-open_bl_el ) - ( wa_final-
avail_el - wa_final-encash_el ).
wa_final-close_hpl = ( wa_final-grant_hpl + wa_final-close_hpl ) - wa_final-
avail_hpl.
"----------------------------------------------------------------------------"
Append processed data to final table
append wa_final to lt_final.
endloop.

read table lt_pa2006 into wa_pa2006 with key ktart = 14.


if sy-subrc eq 0.
wa_final-open_bl_el = wa_pa2006-anzhl.
else.
wa_final-open_bl_hpl = wa_pa2006-anzhl.
endif.
wa_final-grant_el = '15'.
wa_final-grant_hpl = '10'.
loop at lt_pa0416 into wa_pa0416.
lv_total = wa_pa0416-numbr + lv_total.
endloop.
if wa_final-encash_el gt '300'.
wa_final-lapse_el = wa_final-encash_el.
else.
wa_final-encash_el = lv_total.
endif.
* wa_final-avail_el
* wa_final-avail_hpl

"----------------------------------------------------------------------------"
Calculate closing balances
wa_final-close_el = ( wa_final-grant_el + wa_final-open_bl_el ) - ( wa_final-
avail_el - wa_final-encash_el ).
wa_final-close_hpl = ( wa_final-grant_hpl + wa_final-close_hpl ) - wa_final-
avail_hpl.
"----------------------------------------------------------------------------"
Append processed data to final table

* wa_final-trans_date
* wa_final-user_id
append wa_final to lt_final.

You might also like