*&---------------------------------------------------------------------*
*& Report ZHR_PAYSLIP_TO_PDF_LIST
*&---------------------------------------------------------------------*
*&Author: Sreenith Sathian
*&---------------------------------------------------------------------*
REPORT zhr_payslip_to_pdf_list.
TABLES:tsp01,pa0001.
TYPES : BEGIN OF ty_listm.
INCLUDE STRUCTURE abaplist.
TYPES: END OF ty_listm.
TYPES: BEGIN OF ty_conf.
INCLUDE STRUCTURE solisti1.
TYPES: END OF ty_conf.
TYPES: BEGIN OF ty_status ,
slno TYPE count,
filename TYPE text150,
END OF ty_status.
*-- INTERNAL TABLES
DATA:
mtab_pdf LIKE tline OCCURS 0 WITH HEADER LINE,
mc_filename LIKE rlgrap-filename,
lt_0001 TYPE TABLE OF pa0001,
ls_0001 TYPE pa0001,
lt_status TYPE TABLE OF ty_status,
ls_status TYPE ty_status,
lt_emps TYPE TABLE OF bapiout_001,
lt_empsx TYPE TABLE OF bapiout_001,
ls_emps TYPE bapiout_001,
lt_paydata TYPE TABLE OF hrpy_rgdir,
ls_paydata TYPE hrpy_rgdir,
ls_return TYPE bapireturn1,
lr_pernr TYPE TABLE OF selopt,
ls_pernr TYPE selopt,
lv_pernr_s TYPE string,
lv_file TYPE authb-filename
VALUE '/usr/sap/trans/SAP/PAYSLIP/',
lt_values TYPE TABLE OF rsparams,
ls_values TYPE rsparams,
lt_listm TYPE TABLE OF ty_listm,
ls_listm TYPE ty_listm,
lt_conf TYPE TABLE OF ty_conf,
ls_conf TYPE ty_conf,
lt_bin TYPE solix_tab,
ls_bin TYPE solix,
lt_dum TYPE soli_tab,
lv_count TYPE i,
lv_yr_mn TYPE faper,
lv_bool TYPE sx_boolean,
lv_leng TYPE so_obj_len,
lv_repid TYPE sy-repid VALUE 'HINCEDT0',
lv_date_e TYPE char10,
lv_date_i TYPE datum,
lv_begda TYPE datum,
lv_endda TYPE datum,
lv_permo TYPE permo,
lv_pabrj TYPE pabrj,
lv_pabrp TYPE pabrp,
lv_per_dt TYPE datum,
lv_year TYPE t549q-pabrj,
lv_month TYPE t549q-pabrp,
lv_year_p TYPE t549q-pabrj,
lv_month_p TYPE t549q-pabrp.
FIELD-SYMBOLS: <fs_values> TYPE rsparams.
*--------------------------------------------------------------------*
*-- SELECTION SCREEN
*--------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-001.
PARAMETERS : pnpxabkr TYPE pnpxabkr MATCHCODE OBJECT h_t549a, "Pay.Area
rb_cur RADIOBUTTON GROUP g1 MODIF ID abc
USER-COMMAND xyz DEFAULT 'X' ,"Current Period
rb_oth RADIOBUTTON GROUP g1. "Other Period
PARAMETERS : pnppabrp TYPE pnppabrp MODIF ID aaa, "Month
pnppabrj TYPE pnppabrj MODIF ID aaa. "Year
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE TEXT-002.
SELECT-OPTIONS : p_pernr FOR pa0001-pernr NO INTERVALS ."Personnel No
SELECTION-SCREEN END OF BLOCK b2.
*--------------------------------------------------------------------*
AT SELECTION-SCREEN OUTPUT.
*--------------------------------------------------------------------*
LOOP AT SCREEN.
IF rb_cur = abap_true.
IF screen-group1 = 'AAA'.
screen-active = 0.
ENDIF.
ELSE.
IF screen-group1 = 'AAA'.
screen-active = 1.
ENDIF.
ENDIF.
MODIFY SCREEN.
ENDLOOP.
*--------------------------------------------------------------------*
AT SELECTION-SCREEN.
*--------------------------------------------------------------------*
IF sy-ucomm = 'ONLI'.
IF pnpxabkr IS INITIAL.
MESSAGE 'Please enter Payroll area' TYPE 'E'.
ELSE.
IF rb_oth = abap_true .
IF pnppabrp IS INITIAL OR
pnppabrj IS INITIAL.
MESSAGE 'Please enter Period' TYPE 'E'.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
*--------------------------------------------------------------------*
START-OF-SELECTION.
*--------------------------------------------------------------------*
*Current period
*--------------------------------------------------------------------*
IF rb_cur = abap_true.
*--------------------------------------------------------------------*
CALL FUNCTION 'HR_PAYROLL_PERIOD_GET'
EXPORTING
payroll_area = pnpxabkr
date = sy-datum
IMPORTING
payroll_year = lv_year
payroll_period = lv_month
EXCEPTIONS
no_entry_t549a = 1
no_entry_t549q = 2
OTHERS = 3.
IF sy-subrc <> 0.
* Implement suitable error handling here
ELSE.
pnppabrp = lv_month.
pnppabrj = lv_year.
ENDIF.
ENDIF.
*--------------------------------------------------------------------*
*Start and end date of Pay Period
*--------------------------------------------------------------------*
* lv_permo = '01'.
* lv_pabrj = pnppabrj.
* lv_pabrp = pnppabrp.
* CALL FUNCTION 'HR_NL_GET_DATES_OF_PERIOD'
* EXPORTING
* im_permo = lv_permo
* im_year = lv_pabrj
* im_period = lv_pabrp
* IMPORTING
* ex_begda = lv_begda
* ex_endda = lv_endda
* EXCEPTIONS
* error_reading_t549q = 1
* OTHERS = 2.
* IF sy-subrc <> 0.
** Implement suitable error handling here
* ENDIF.
*--------------------------------------------------------------------*
PERFORM prepare_variant.
*--------------------------------------------------------------------*
*Year and month combined
CONCATENATE pnppabrj pnppabrp INTO lv_yr_mn.
*--------------------------------------------------------------------*
*if p_pernr is initial - fetch employees based on payroll area
*--------------------------------------------------------------------*
IF p_pernr IS INITIAL.
CALL FUNCTION 'BAPI_OUTEMPLOYEE_GETLIST'
EXPORTING
iabkrs = pnpxabkr
IMPORTING
return = ls_return
TABLES
outemployee_list = lt_emps.
IF lt_emps IS NOT INITIAL.
SELECT * FROM hrpy_rgdir
INTO TABLE lt_paydata
FOR ALL ENTRIES IN lt_emps
WHERE pernr = lt_emps-employeenumber
AND fpper = lv_yr_mn. .
ENDIF.
LOOP AT lt_emps INTO ls_emps.
READ TABLE lt_paydata WITH KEY pernr = ls_emps-employeenumber
fpper = lv_yr_mn TRANSPORTING NO FIELDS.
IF sy-subrc = 0.
APPEND ls_emps TO lt_empsx.
CLEAR: ls_emps.
ENDIF.
ENDLOOP.
*--------------------------------------------------------------------*
ELSE."Pernr entered
*--------------------------------------------------------------------*
SELECT * FROM pa0001
INTO TABLE lt_0001
WHERE pernr IN p_pernr
AND begda LE sy-datum
AND endda GE sy-datum.
IF sy-subrc = 0.
SELECT * FROM hrpy_rgdir
INTO TABLE lt_paydata
FOR ALL ENTRIES IN lt_0001
WHERE pernr = lt_0001-pernr
AND fpper = lv_yr_mn."period
ENDIF.
ENDIF.
*--------------------------------------------------------------------*
PERFORM change_selection_paramerters.
*--------------------------------------------------------------------*
CALL FUNCTION 'LIST_FREE_MEMORY'.
IF p_pernr IS INITIAL.
*Loop PA0001
PERFORM pernr_is_initial.
ELSE.
*Loop LT_EMPX
PERFORM pernr_is_not_initial.
ENDIF.
*--------------------------------------------------------------------*
* Status Report display
*--------------------------------------------------------------------*
IF lt_status IS NOT INITIAL.
DATA:lit_layout TYPE REF TO cl_salv_layout,
lv_key TYPE salv_s_layout_key,
lo_functions TYPE REF TO cl_salv_functions_list,
lo_columns TYPE REF TO cl_salv_columns_table,
lit_table TYPE REF TO cl_salv_table,
lo_column TYPE REF TO cl_salv_column_table.
* Get the event object
DATA: lo_events TYPE REF TO cl_salv_events_table.
TRY.
cl_salv_table=>factory(
IMPORTING
r_salv_table = lit_table
CHANGING
t_table = lt_status )."data table
CATCH cx_salv_msg. "#EC NO_HANDLER
ENDTRY.
* activate ALV generic Functions
lo_functions = lit_table->get_functions( ).
lo_functions->set_all( abap_true ).
**Allow the user to manage layouts of the ALV grid
lit_layout = lit_table->get_layout( ).
lv_key-report = sy-repid.
lit_layout->set_key( lv_key ).
lit_layout->set_save_restriction( cl_salv_layout=>restrict_none ).
lo_columns = lit_table->get_columns( ).
lo_columns->set_optimize( abap_true ).
* lo_columns->set_key_fixation( ).
*Check box click event
lo_events = lit_table->get_event( ).
*Change the properties of the Columns
*display the table
lit_table->display( ).
ENDIF.
*&---------------------------------------------------------------------*
*& Form PERNR_IS_INITIAL
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& --> p1 text
*& <-- p2 text
*&---------------------------------------------------------------------*
FORM pernr_is_initial .
LOOP AT lt_empsx INTO ls_emps.
CLEAR: mc_filename.
lv_pernr_s = ls_emps-employeenumber .
CONDENSE lv_pernr_s.
SHIFT lv_pernr_s LEFT DELETING LEADING '0'.
*Prepare file name
CONCATENATE lv_file 'HRIS_' lv_pernr_s sy-datum+4(2)
sy-datum+6(2) sy-datum+2(2)'.pdf'
INTO mc_filename.
*Check Paydata found or not
READ TABLE lt_paydata INTO ls_paydata
WITH KEY pernr = ls_emps-employeenumber
fpper = lv_yr_mn .
IF sy-subrc = 0.
READ TABLE lt_values ASSIGNING <fs_values>
WITH KEY selname = 'PNPPERNR'.
IF sy-subrc = 0.
<fs_values>-low = ls_emps-employeenumber .
ENDIF.
UNASSIGN <fs_values>.
READ TABLE lt_values ASSIGNING <fs_values>
WITH KEY selname = 'PNPDISBD'.
IF sy-subrc = 0.
<fs_values>-low = ls_paydata-fpbeg .
ENDIF.
UNASSIGN <fs_values>.
READ TABLE lt_values ASSIGNING <fs_values>
WITH KEY selname = 'PNPDISED'.
IF sy-subrc = 0.
<fs_values>-low = ls_paydata-fpend .
ENDIF.
UNASSIGN <fs_values>.
ENDIF.
*--------------------------------------------------------------------*
SUBMIT (lv_repid) WITH SELECTION-TABLE lt_values
EXPORTING LIST TO MEMORY AND RETURN.
*--------------------------------------------------------------------*
CALL FUNCTION 'LIST_FROM_MEMORY'
TABLES
listobject = lt_listm
EXCEPTIONS
not_found = 1
OTHERS = 2.
IF sy-subrc = 0.
CALL FUNCTION 'LIST_FREE_MEMORY'.
CALL FUNCTION 'RCF_CONVERT_ALI_PRT'
EXPORTING
format_dst = 'PDF'
devtype = 'PDF1'
CHANGING
abaplist = lt_listm
content_bin = lt_bin
objhead = lt_dum
len = lv_leng
EXCEPTIONS
compress_error = 1
conversion_error = 2
not_supported = 3
OTHERS = 4.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.
OPEN DATASET mc_filename FOR OUTPUT IN BINARY MODE .
IF sy-subrc NE 0.
ELSE.
LOOP AT lt_bin INTO ls_bin .
TRANSFER ls_bin TO mc_filename.
ENDLOOP.
CLOSE DATASET mc_filename.
ENDIF.
CLEAR:lv_leng,lt_dum[],lt_bin[],lt_listm[].
lv_count = lv_count + 1.
ls_status-slno = lv_count.
ls_status-filename = mc_filename.
APPEND ls_status TO lt_status.
CLEAR: ls_status.
ELSE.
CALL FUNCTION 'LIST_FREE_MEMORY'.
ENDIF.
ENDLOOP.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form PERNR_IS_NOT_INITIAL
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& --> p1 text
*& <-- p2 text
*&---------------------------------------------------------------------*
FORM pernr_is_not_initial .
LOOP AT lt_0001 INTO ls_0001.
READ TABLE lt_paydata INTO ls_paydata
WITH KEY pernr = ls_0001-pernr
fpper = lv_yr_mn.
IF sy-subrc = 0.
CLEAR: mc_filename.
lv_pernr_s = ls_0001-pernr .
CONDENSE lv_pernr_s.
SHIFT lv_pernr_s LEFT DELETING LEADING '0'.
CONCATENATE lv_file 'HRIS_' lv_pernr_s '_' sy-datum+4(2)
sy-datum+6(2) sy-datum+2(2) sy-uzeit '.pdf'
INTO mc_filename.
READ TABLE lt_values ASSIGNING <fs_values>
WITH KEY selname = 'PNPPERNR'.
IF sy-subrc = 0.
<fs_values>-low = ls_0001-pernr .
ENDIF.
SUBMIT (lv_repid) WITH SELECTION-TABLE lt_values
EXPORTING LIST TO MEMORY AND RETURN.
CALL FUNCTION 'LIST_FROM_MEMORY'
TABLES
listobject = lt_listm
EXCEPTIONS
not_found = 1
OTHERS = 2.
IF sy-subrc = 0.
CALL FUNCTION 'RCF_CONVERT_ALI_PRT'
EXPORTING
format_dst = 'PDF'
devtype = 'PDF1'
CHANGING
abaplist = lt_listm
content_bin = lt_bin
objhead = lt_dum
len = lv_leng
EXCEPTIONS
compress_error = 1
conversion_error = 2
not_supported = 3
OTHERS = 4.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.
OPEN DATASET mc_filename FOR OUTPUT IN BINARY MODE .
IF sy-subrc NE 0.
ELSE.
LOOP AT lt_bin INTO ls_bin .
TRANSFER ls_bin TO mc_filename.
ENDLOOP.
CLOSE DATASET mc_filename.
ENDIF.
CLEAR:lv_leng,lt_dum[],lt_bin[],lt_listm[].
CALL FUNCTION 'LIST_FREE_MEMORY'.
lv_count = lv_count + 1.
ls_status-slno = lv_count.
ls_status-filename = mc_filename.
APPEND ls_status TO lt_status.
CLEAR: ls_status.
ENDIF.
ENDIF.
ENDLOOP.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form CHANGE_SELECTION_PARAMERTERS
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& --> p1 text
*& <-- p2 text
*&---------------------------------------------------------------------*
FORM change_selection_paramerters .
LOOP AT lt_values INTO ls_values WHERE selname = 'BONDT' OR
selname = 'PNPBEGDA' OR
selname = 'PNPBEGPS' OR
selname = 'PNPENDDA' OR
selname = 'PNPENDPS' OR
selname = 'PYBEGDA' OR
selname = 'PYENDDA' .
IF ls_values-low = '00.00.0000'.
CLEAR: ls_values-low.
ls_values-low = '00000000'.
ELSE.
lv_date_e = ls_values-low.
CALL FUNCTION 'CONVERT_DATE_TO_INTERNAL'
EXPORTING
date_external = lv_date_e
IMPORTING
date_internal = lv_date_i.
ls_values-low = lv_date_i.
CLEAR: lv_date_i.
ENDIF.
MODIFY lt_values FROM ls_values TRANSPORTING low.
ENDLOOP.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form PREPARE_VARIANT
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& --> p1 text
*& <-- p2 text
*&---------------------------------------------------------------------*
FORM prepare_variant .
ls_values-selname = 'PNPABKRS'.
ls_values-kind = 'S'.
ls_values-sign = 'I'.
ls_values-low = pnpxabkr.
ls_values-option = 'EQ'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPANSVH'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPBTRTL'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPBUKRS'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPENAME'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPFISTL'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPFKBER'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPGEBER'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPGRANT'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPGSBER'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPJUPER'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPKOKRS'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPKOKTL'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPKOSTL'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPMASNG'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPMASSG'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPMASSN'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPMSTBR'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPORGEH'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPOTYPE'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
*--------------------------------------------------------------------*
ls_values-selname = 'PNPPERNR'.
ls_values-kind = 'S'.
ls_values-sign = 'I'.
* ls_values-low = .
ls_values-option = 'EQ'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
*--------------------------------------------------------------------*
ls_values-selname = 'PNPPERSG'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPPERSK'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPPLANS'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPSACHA'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPSACHP'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPSACHZ'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPSASBA'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPSASBP'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPSASBZ'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPSBMOD'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPSNAME'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPSTAT1'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPSTAT2'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPSTAT3'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPSTATU'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPSTELL'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPVDSK1'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPWERKS'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPXBWBK'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPXPGPK'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'ANDRUCK'.
ls_values-kind = 'P'.
ls_values-low = 'A'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'ANZ-TEST'.
ls_values-kind = 'P'.
ls_values-low = '0'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'BONDT'.
ls_values-kind = 'P'.
ls_values-low = '00.00.0000'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'CHK_ESS'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'CUR_ALT'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'CUR_FP'.
ls_values-kind = 'P'.
ls_values-low = 'X'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'CUR_IP'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'CUR_VAL'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'FORMULAR'.
ls_values-kind = 'P'.
ls_values-low = 'ZAMH'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'ONLY'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PAYID'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PAYTY'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPBEGDA'.
ls_values-kind = 'P'.
ls_values-low = '00.00.0000'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPBEGPS'.
ls_values-kind = 'P'.
ls_values-low = '00.00.0000'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPDISBD'.
ls_values-kind = 'P'.
ls_values-low = lv_begda.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPDISED'.
ls_values-kind = 'P'.
ls_values-low = lv_endda .
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPDISPJ'.
ls_values-kind = 'P'.
ls_values-low = pnppabrj.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPDISPP'.
ls_values-kind = 'P'.
ls_values-low = pnppabrp.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPENDDA'.
ls_values-kind = 'P'.
ls_values-low = '00.00.0000'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPENDPS'.
ls_values-kind = 'P'.
ls_values-low = '00.00.0000'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
*--------------------------------------------------------------------*
ls_values-selname = 'PNPPABRJ'.
ls_values-kind = 'P'.
ls_values-low = pnppabrj.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
*--------------------------------------------------------------------*
ls_values-selname = 'PNPPABRP'.
ls_values-kind = 'P'.
ls_values-low = pnppabrp.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPTIMR1'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPTIMR2'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPTIMR3'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPTIMR4'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPTIMR5'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPTIMR6'.
ls_values-kind = 'P'.
ls_values-low = 'X'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPTIMR9'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPTIMRA'.
ls_values-kind = 'P'.
ls_values-low = 'X'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPXABKR'.
ls_values-kind = 'P'.
ls_values-low = pnpxabkr.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PRT_PROT'.
ls_values-kind = 'P'.
ls_values-low = 'X'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYABRJ0'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYABRJ1'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYABRP0'.
ls_values-kind = 'P'.
ls_values-low = '00'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYABRP1'.
ls_values-kind = 'P'.
ls_values-low = '00'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYBEGDA'.
ls_values-kind = 'P'.
ls_values-low = '00.00.0000'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYENDDA'.
ls_values-kind = 'P'.
ls_values-low = '00.00.0000'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYPA03R0'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYPA03R1'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYVW0_0'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYVW0_1'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYVW1_0'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYVW1_1'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYVW2_0'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYXABKR'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'RUECKD'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'RUECKR'.
ls_values-kind = 'P'.
ls_values-low = 'J'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'SORT_RR'.
ls_values-kind = 'P'.
ls_values-low = '1'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'SPRACHE'.
ls_values-kind = 'P'.
ls_values-low = 'B'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPINDEX'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPOBJID'.
ls_values-kind = 'S'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'COMPRESS'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'EXP_FRM'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'IMPMEM'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPESSCF'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPMCIDE'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPMCSTR'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPPLVAR'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPSORTF'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPSORTT'.
ls_values-kind = 'P'.
ls_values-low = 'L'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PNPTIMED'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYARCH'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYCT_PER'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYEVAL'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYPARAID'.
ls_values-kind = 'P'.
ls_values-sign = ' '.
ls_values-low = '000000000000000000000000000000000000'.
ls_values-option = ' '.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYSCREEN'.
ls_values-kind = 'P'.
ls_values-sign = ' '.
ls_values-low = 'T'.
ls_values-option = ' '.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYSORTT'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYVW0'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYVW1'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ls_values-selname = 'PYVW2'.
ls_values-kind = 'P'.
APPEND ls_values TO lt_values.
CLEAR: ls_values.
ENDFORM.