Tuesday, March 27, 2018

Report Program to convert Payslip List Output to PDF in transaction PC00_M40_CEDT






*&---------------------------------------------------------------------*
*& 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.
TYPESEND OF ty_listm.
TYPESBEGIN OF ty_conf.
    INCLUDE STRUCTURE solisti1.
TYPESEND OF ty_conf.

TYPESBEGIN OF ty_status ,
         slno     TYPE count,
         filename TYPE text150,
       END OF ty_status.
*-- INTERNAL TABLES
DATA:
  mtab_pdf    LIKE tline OCCURS 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.
        CLEARls_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
    DATAlo_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_allabap_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_keylv_key ).
    lit_layout->set_save_restrictioncl_salv_layout=>restrict_none ).
    lo_columns lit_table->get_columns).
    lo_columns->set_optimizeabap_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.
    CLEARmc_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(2sy-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_repidWITH 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.
      CLEARls_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.

      CLEARmc_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(2sy-datum+2(2sy-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_repidWITH 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.
        CLEARls_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'.
      CLEARls_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.
      CLEARlv_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.
  CLEARls_values.

  ls_values-selname 'PNPANSVH'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPBTRTL'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPBUKRS'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPENAME'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPFISTL'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPFKBER'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPGEBER'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPGRANT'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPGSBER'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPJUPER'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPKOKRS'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPKOKTL'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPKOSTL'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPMASNG'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPMASSG'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPMASSN'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPMSTBR'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPORGEH'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.
  ls_values-selname 'PNPOTYPE'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_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.
  CLEARls_values.
*--------------------------------------------------------------------*

  ls_values-selname 'PNPPERSG'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPPERSK'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPPLANS'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPSACHA'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPSACHP'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.


  ls_values-selname 'PNPSACHZ'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPSASBA'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPSASBP'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPSASBZ'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.


  ls_values-selname 'PNPSBMOD'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPSNAME'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPSTAT1'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPSTAT2'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPSTAT3'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPSTATU'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPSTELL'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPVDSK1'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPWERKS'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPXBWBK'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPXPGPK'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'ANDRUCK'.
  ls_values-kind    'P'.
  ls_values-low     'A'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'ANZ-TEST'.
  ls_values-kind    'P'.
  ls_values-low     '0'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'BONDT'.
  ls_values-kind    'P'.
  ls_values-low     '00.00.0000'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'CHK_ESS'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'CUR_ALT'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'CUR_FP'.
  ls_values-kind    'P'.
  ls_values-low     'X'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'CUR_IP'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'CUR_VAL'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'FORMULAR'.
  ls_values-kind    'P'.
  ls_values-low     'ZAMH'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'ONLY'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PAYID'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PAYTY'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPBEGDA'.
  ls_values-kind    'P'.
  ls_values-low    '00.00.0000'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPBEGPS'.
  ls_values-kind    'P'.
  ls_values-low    '00.00.0000'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPDISBD'.
  ls_values-kind    'P'.
  ls_values-low     =  lv_begda.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPDISED'.
  ls_values-kind    'P'.
  ls_values-low     lv_endda .
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPDISPJ'.
  ls_values-kind    'P'.
  ls_values-low     =  pnppabrj.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPDISPP'.
  ls_values-kind    'P'.
  ls_values-low    =  pnppabrp.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPENDDA'.
  ls_values-kind    'P'.
  ls_values-low    '00.00.0000'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPENDPS'.
  ls_values-kind    'P'.
  ls_values-low    '00.00.0000'.
  APPEND ls_values TO lt_values.
  CLEARls_values.
*--------------------------------------------------------------------*
  ls_values-selname 'PNPPABRJ'.
  ls_values-kind    'P'.
  ls_values-low     =  pnppabrj.
  APPEND ls_values TO lt_values.
  CLEARls_values.
*--------------------------------------------------------------------*
  ls_values-selname 'PNPPABRP'.
  ls_values-kind    'P'.
  ls_values-low    =  pnppabrp.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPTIMR1'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPTIMR2'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPTIMR3'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPTIMR4'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPTIMR5'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPTIMR6'.
  ls_values-kind    'P'.
  ls_values-low     'X'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPTIMR9'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPTIMRA'.
  ls_values-kind    'P'.
  ls_values-low     'X'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPXABKR'.
  ls_values-kind    'P'.
  ls_values-low     =  pnpxabkr.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PRT_PROT'.
  ls_values-kind    'P'.
  ls_values-low   'X'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYABRJ0'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYABRJ1'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYABRP0'.
  ls_values-kind    'P'.
  ls_values-low    '00'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYABRP1'.
  ls_values-kind    'P'.
  ls_values-low    '00'.
  APPEND ls_values TO lt_values.
  CLEARls_values.


  ls_values-selname 'PYBEGDA'.
  ls_values-kind    'P'.
  ls_values-low    '00.00.0000'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYENDDA'.
  ls_values-kind    'P'.
  ls_values-low    '00.00.0000'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYPA03R0'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYPA03R1'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYVW0_0'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYVW0_1'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYVW1_0'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYVW1_1'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYVW2_0'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYXABKR'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'RUECKD'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'RUECKR'.
  ls_values-kind    'P'.
  ls_values-low     'J'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'SORT_RR'.
  ls_values-kind    'P'.
  ls_values-low     '1'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'SPRACHE'.
  ls_values-kind    'P'.
  ls_values-low    'B'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPINDEX'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPOBJID'.
  ls_values-kind    'S'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'COMPRESS'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'EXP_FRM'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.


  ls_values-selname 'IMPMEM'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPESSCF'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.


  ls_values-selname 'PNPMCIDE'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.


  ls_values-selname 'PNPMCSTR'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.


  ls_values-selname 'PNPPLVAR'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPSORTF'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPSORTT'.
  ls_values-kind    'P'.
  ls_values-low     'L'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PNPTIMED'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYARCH'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYCT_PER'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYEVAL'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_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.
  CLEARls_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.
  CLEARls_values.

  ls_values-selname 'PYSORTT'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYVW0'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYVW1'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

  ls_values-selname 'PYVW2'.
  ls_values-kind    'P'.
  APPEND ls_values TO lt_values.
  CLEARls_values.

ENDFORM.

2 comments:

  1. Best Online Gambling sites - worrione.com
    Best 제왕 카지노 Online Gambling Sites for Beginners · 1. BetUS – Best Online Casino Overall · 2. Ignition – 인카지노 Best Online Casino for Live Poker 바카라 · 3. BetOnline –

    ReplyDelete
  2. Thanks and that i have a tremendous offer you: Who To Contact For House Renovation small house renovation

    ReplyDelete