Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Report for wage type from infotype 0014

anupam_srivastava2
Participant
0 Kudos

Hi All

I am trying developing a report , where selection criteria is payroll area which is GM, wage type between 8107 - 8212, for current payroll period.

the out put require

urn - p0014-zuord

amt - p0014-betrg

frst_name- p0002-vorna

etc

I want the records to be displayed per wagetype .

I have written the follwoing code.......... but it doesnt displays the records which full fill the criteria per wage tyep.

&----


*& Report ZSAYE

*&

&----


*&

*&

&----


REPORT ZSAYE.

nodes pernr.

tables : t512t.

infotypes : 0002, 0014, 0000.

data : f_datum like sy-datum.

data : l_datum like sy-datum.

types: begin of header,

head(6) type c,

clnt_code(10) type c,

Contact_Name(70) type c,

Contact_number(20) type c,

fadte(16) type c,

no_of_recs(6) type c,

cont_src_unit(40) type c,

due_dt(9) type c,

locate_type type c,

file_type_ind(2) type c,

curr(3) type c,

file_freq(1) type c,

total_funds(15) type c,

end of header.

data : t_fh type standard table of header,

h_fh type header.

types : begin of t_det,

party_urn like p0014-zuord,

hold_urn like p0014-zuord,

contr_amt(15) type c,

prefix(20) type c,

frst_name like p0002-vorna,

last_name like p0002-nachn,

ni like p0002-perid,

tax_id(50) type c,

pay_ref like p0000-pernr,

payroll_unit(20) type c,

corp_unit(20) type c,

legacy_acc_no(7) type c,

legacy_seccd(3) type c,

end of t_det.

data : t_tab type standard table of t_det,

wa_tab type t_det.

data : wa_p0002 LIKE p0002,

wa_p0014 like p0014.

data : v_atext type t522t-atext.

*SELECT-OPTIONS: language FOR p0002-sprsl.

PARAMETERS: p_lgart NO-DISPLAY DEFAULT '1'. " radiobutton group rg1

PARAMETERS: p_pernr NO-DISPLAY. "radiobutton group rg1

SELECT-OPTIONS: s_lgart FOR t512t-lgart.

SELECTION-SCREEN: SKIP.

parameters: p_file(128) TYPE c DEFAULT '
Tlasapd1\Intrface\saye\test.txt'.

initialization.

PERFORM initial_values.

&----


*& Form INITIAL_VALUES

&----


  • Set initial values for selection criteria *

----


FORM initial_values.

  • Payroll Period

MOVE 'GM' TO pnpxabkr.

  • Payroll Areas

CLEAR pnpabkrs.

MOVE: 'GM' TO pnpabkrs-low,

'I' TO pnpabkrs-sign,

'EQ' TO pnpabkrs-option.

APPEND pnpabkrs.

  • Wage Types

CLEAR pnpabkrs.

MOVE: '8100' TO s_lgart-low,

'8212' TO s_lgart-high,

'I' TO s_lgart-sign,

'BT' TO s_lgart-option.

APPEND s_lgart.

ENDFORM. " INITIAL_VALUES

start-of-selection.

*FILE HEADER SEGMENT

***********************

h_fh-head = 'HEADER'.

h_fh-clnt_code = 'CLIENTCODE'.

h_fh-Contact_Name = 'LYNSEY CORDER'.

h_fh-Contact_number = '(+44)207-540-1400'.

h_fh-fadte = SY-DATUM.

h_fh-no_of_recs = 'OPTIONAL' .

h_fh-cont_src_unit = 'MANDATORY'.

h_fh-due_dt = 'MANDATORY'.

h_fh-locate_type = 'P'.

h_fh-file_type_ind = 'EF'.

h_fh-curr = 'GBP'.

h_fh-file_freq = 'W'.

h_fh-total_funds = 'TOTALFUNDS'.

Append H_FH TO T_FH.

  • cl_abap_file_utilities=>create_utf8_file_with_bom(

*EXPORTING file_name = p_file ).

*

open dataset p_file for output in text mode ENCODING UTF-8.

transfer H_FH TO p_file.

  • CALL FUNCTION 'HR_JP_MONTH_BEGIN_END_DATE'

  • EXPORTING

  • IV_DATE = sy-datum

  • IMPORTING

  • EV_MONTH_BEGIN_DATE = f_datum

  • EV_MONTH_END_DATE = l_datum.

get pernr.

RP-PROVIDE-FROM-LAST P0014 SPACE PN-BEGDA PN-ENDDA.

RP-PROVIDE-FROM-LAST P0002 SPACE PN-BEGDA PN-ENDDA.

if pernr-abkrs = 'GM'.

if p0014-lgart between s_lgart-low and s_lgart-high.

sort s_lgart.

  • provide * into wa_p0014 from p0014 between pn-begda and pn-endda.

  • wa_tab-party_urn = wa_p0014-zuord.

  • wa_tab-hold_urn = wa_p0014-zuord.

  • wa_tab-contr_amt = wa_p0014-betrg.

  • endprovide.

*

  • provide * into wa_p0002 from p0002 between pn-begda and pn-endda.

*

  • wa_tab-prefix = wa_p0002-anred.

  • wa_tab-frst_name = wa_p0002-vorna.

  • wa_tab-last_name = wa_p0002-nachn.

  • wa_tab-ni = wa_p0002-perid.

  • wa_tab-pay_ref = wa_p0002-pernr.

  • endprovide.

IF pnp-sw-found EQ '1'.

wa_tab-party_urn = p0014-zuord.

wa_tab-hold_urn = p0014-zuord.

wa_tab-contr_amt = p0014-betrg.

select single atext from t522t into v_atext where sprsl = 'E' and anred = p0002-anred.

wa_tab-prefix = v_atext.

wa_tab-frst_name = p0002-vorna.

wa_tab-last_name = p0002-nachn.

wa_tab-ni = wa_p0002-perid.

wa_tab-tax_id = ''.

wa_tab-pay_ref = wa_p0002-pernr.

wa_tab-payroll_unit = ''.

wa_tab-corp_unit = ''.

wa_tab-legacy_acc_no = ''.

wa_tab-legacy_seccd = ''.

if sy-subrc = 0.

append wa_tab to t_tab.

transfer wa_tab TO p_file.

write : / wa_tab.

clear wa_tab.

endif.

endif.

endif.

endif.

*end-of-selection.

*open dataset p_file for output in text mode ENCODING UTF-8.

*transfer wa_tab TO p_file .

*CLOSE DATASET p_file.

1 REPLY 1

anupam_srivastava2
Participant
0 Kudos

thanks