Open all | Close all
|
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
|
|
|