Open all | Close all

Getting the LATEST information!

To ensure you are getting the latest information please vist this page on the new domain for SAP Development


Retrieve comment texts from cluster table for infotype 19



*......................................................................*
*: Report  ZIT0019_TXT                                                :*
*: Author  SAPdev.co.uk                                               :*
*:.....................................................................*
*: Description :                                                      :*
*:.............:                                                      :*
*: Retrieves comment text for infotype 0019 form PCL1 cluster table   :*
*:                                                                    :*
*: Please visit www.sapdev.co.uk for further info                     :*
*:....................................................................:*
REPORT  zp191rep_txt.                                               .

NODES: pernr.
INFOTYPES: 0019.
TYPE-POOLS: slis.

*---------------------------------------------------------------------*
*        Daten zu Cluster TX (Infotyptexte)                           *
*---------------------------------------------------------------------*
INCLUDE RPC1TX00.

*INCLUDE rpcitx00.
*INCLUDE rpcitd00.


TYPES: BEGIN OF t_reptab,
  pernr TYPE pernr-pernr,
  subty TYPE p0019-subty,
  termn TYPE p0019-termn,
  text  LIKE ptext-line,
 END OF t_reptab.
DATA: it_reptab TYPE STANDARD TABLE OF t_reptab INITIAL SIZE 0,
      wa_reptab TYPE t_reptab.

*ALV data declarations
DATA: fieldcatalog TYPE slis_t_fieldcat_alv WITH HEADER LINE,
      gd_tab_group TYPE slis_t_sp_group_alv,
      gd_layout    TYPE slis_layout_alv,
      gd_repid     LIKE sy-repid,
      it_sortcat   TYPE slis_sortinfo_alv OCCURS 1,
      wa_sort LIKE LINE OF it_sortcat.


SELECTION-SCREEN BEGIN OF BLOCK subtyp WITH FRAME TITLE text-001.
SELECT-OPTIONS: so_sub FOR p0019-subty.
SELECTION-SCREEN END OF BLOCK subtyp.



************************************************************************
*START-OF-SELECTION.
START-OF-SELECTION.

GET pernr.

*rp_provide_from_last p0019 space pn-begda pn-endda.
  PROVIDE * FROM p0019 BETWEEN pn-begda AND pn-endda.
    CHECK p0019-subty IN so_sub.
    MOVE-CORRESPONDING p0019 TO tx-key.
    tx-key-infty = '0019'.
    rp-imp-c1-tx.
    IF sy-subrc = 0.

      LOOP AT ptext.
        MOVE-CORRESPONDING p0019 TO wa_reptab.
        wa_reptab-text = ptext-line.
        APPEND wa_reptab TO it_reptab.
        CLEAR: wa_reptab.
      ENDLOOP.
    ENDIF.
  ENDPROVIDE.

  SORT it_reptab BY pernr subty.

************************************************************************
*END-OF-SELECTION.
END-OF-SELECTION.

  PERFORM build_fieldcatalog.
  PERFORM build_layout.
  PERFORM build_sortcat.
  PERFORM display_alv_report.



*&---------------------------------------------------------------------*
*&      Form  BUILD_FIELDCATALOG
*&---------------------------------------------------------------------*
*       Build Fieldcatalog for ALV Report
*----------------------------------------------------------------------*
FORM build_fieldcatalog.
  fieldcatalog-fieldname   = 'PERNR'.
  fieldcatalog-seltext_m   = 'Personnel Num'.
  fieldcatalog-col_pos     = 0.
  fieldcatalog-outputlen   = 10.
  fieldcatalog-emphasize   = 'X'.
  fieldcatalog-key         = 'X'.
*  fieldcatalog-do_sum      = 'X'.
*  fieldcatalog-no_zero     = 'X'.
  APPEND fieldcatalog TO fieldcatalog.
  CLEAR  fieldcatalog.

  fieldcatalog-fieldname   = 'SUBTY'.
  fieldcatalog-seltext_m   = 'Sub Type'.
  fieldcatalog-col_pos     = 1.
  APPEND fieldcatalog TO fieldcatalog.
  CLEAR  fieldcatalog.

  fieldcatalog-fieldname   = 'TERMN'.
  fieldcatalog-seltext_m   = 'Sub Type'.
  fieldcatalog-col_pos     = 1.
  APPEND fieldcatalog TO fieldcatalog.
  CLEAR  fieldcatalog.

  fieldcatalog-fieldname   = 'TEXT'.
  fieldcatalog-seltext_m   = 'Text'.
  fieldcatalog-col_pos     = 2.
  APPEND fieldcatalog TO fieldcatalog.
  CLEAR  fieldcatalog.
ENDFORM.                    " BUILD_FIELDCATALOG


*&---------------------------------------------------------------------*
*&      Form  BUILD_LAYOUT
*&---------------------------------------------------------------------*
*       Build layout for ALV grid report
*----------------------------------------------------------------------*
FORM build_layout.
  gd_layout-no_input          = 'X'.
  gd_layout-colwidth_optimize = 'X'.
  gd_layout-totals_text       = 'Totals'(201).
*  gd_layout-totals_only        = 'X'.
*  gd_layout-f2code            = 'DISP'.  "Sets fcode for when double
*                                         "click(press f2)
*  gd_layout-zebra             = 'X'.
*  gd_layout-group_change_edit = 'X'.
*  gd_layout-header_text       = 'helllllo'.
ENDFORM.                    " BUILD_LAYOUT


*&---------------------------------------------------------------------*
*&      Form  DISPLAY_ALV_REPORT
*&---------------------------------------------------------------------*
*       Display report using ALV grid
*----------------------------------------------------------------------*
FORM display_alv_report.
  gd_repid = sy-repid.
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
       EXPORTING
            i_callback_program      = gd_repid
*            i_callback_top_of_page   = 'TOP-OF-PAGE'  "see FORM
*            i_callback_user_command = 'USER_COMMAND'
*            i_grid_title           = outtext
            is_layout               = gd_layout
            it_fieldcat             = fieldcatalog[]
            it_sort                 = it_sortcat
*            it_special_groups       = gd_tabgroup
*            IT_EVENTS                = GT_XEVENTS
            i_save                  = 'X'
*            is_variant              = z_template

       TABLES
            t_outtab                = it_reptab
       EXCEPTIONS
            program_error           = 1
            OTHERS                  = 2.
  IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
ENDFORM.                    " DISPLAY_ALV_REPORT


*&---------------------------------------------------------------------*
*&      Form  build_sortcat
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM build_sortcat .
  wa_sort-spos      = 1.
  wa_sort-fieldname = 'PERNR'.
*  gd_sortcat-tabname
  APPEND wa_sort TO it_sortcat.

  wa_sort-spos      = 2.
  wa_sort-fieldname = 'SUBTY'.
*  gd_sortcat-tabname
  APPEND wa_sort TO it_sortcat.

  wa_sort-spos      = 3.
  wa_sort-fieldname = 'TERMN'.
*  gd_sortcat-tabname
  APPEND wa_sort TO it_sortcat.
ENDFORM.                    " build_sortcat