Code: Alles auswählen.
REPORT ZDS_NETTOLOHN.
* Deklarationen
Data:
g_zsum1 type p decimals 2,
g_zsum2 type p decimals 2,
g_netto type p decimals 2,
g_perso type p decimals 2,
g_kst type p decimals 2,
g_soli type p decimals 2,
g_kv type p decimals 2,
g_av type p decimals 2,
g_rv type p decimals 2,
g_pv type p decimals 2.
constants:
c_kst type p value '0.009',
c_soli type p value '0.055',
c_kv type p value '0.07',
c_av type p value '0.014',
c_rv type p value '0.095',
c_pv type p value '0.00975'.
selection-screen begin of block a.
parameters:
p_brutto type p decimals 2 default '2456.00' obligatory,
p_steuer type p decimals 2 default '625.60' obligatory.
selection-screen end of block a.
start-of-selection.
perform verarbeitung.
perform ausgabe.
end-of-selection.
*---------------------------------------------------------------------*
* FORM Verarbeitung
*---------------------------------------------------------------------*
form verarbeitung.
g_kst = p_steuer * c_kst.
g_soli = p_steuer * c_soli.
g_zsum1 = p_steuer + g_kst + g_soli.
g_kv = p_brutto * c_kv.
g_av = p_brutto * c_av.
g_rv = p_brutto * c_rv.
g_pv = p_brutto * c_pv.
g_zsum2 = g_kv + g_av + g_rv + g_pv.
g_netto = p_brutto - g_zsum1 - g_zsum2.
g_perso = p_brutto + g_zsum2.
endform. "verarbeitung
*---------------------------------------------------------------------*
* FORM Ausgabe
*---------------------------------------------------------------------*
form ausgabe.
write: 'Bruttolohn: '.
write at 45 p_brutto.
write /.
write /.
write /.
write: / 'Lohnsteuer (lt. Tabelle): ', p_steuer.
write: / 'Kirchensteuer: ', g_kst under p_steuer.
write: / 'Solidaritätszuschlag: ', g_soli under p_steuer.
write g_zsum1 under p_brutto.
write /.
write /.
write: / 'AN-Anteil zur Sozialversicherung:'.
write: / 'Rentenversicherung: ', g_rv under p_steuer.
write: / 'Krankenversicherung: ', g_kv under p_steuer.
write: / 'Arbeitslosenversicherung: ', g_av under p_steuer.
write: / 'Pflegeversicherung: ', g_pv under p_steuer.
write g_zsum2 under p_brutto.
write /.
write /.
write: / 'Nettolohn: ', g_netto under p_brutto.
write: / 'Personalaufwand: ', g_perso under p_brutto.
endform. "ausgabe