REPORT ZRQ1.
TYPES:
BEGIN OF ty_alv,
lights(1) TYPE c, "Exception, Holding the value of the lights
text(20) TYPE c, "some text
END OF ty_alv.
DATA: gs_alv TYPE ty_alv,
gt_alv TYPE TABLE OF ty_alv,
gr_alv TYPE REF TO cl_salv_table,
gr_columns TYPE REF TO cl_salv_columns_table.
START-OF-SELECTION.
gs_alv-lights = '1'. "Color red
gs_alv-text = 'RED SIGNAL'.
APPEND gs_alv TO gt_alv.
gs_alv-lights = '2'. "Color yellow
gs_alv-text = 'YELLOW SIGNAL'.
APPEND gs_alv TO gt_alv.
gs_alv-lights = '3'. "Color green
gs_alv-text = 'GREEN SIGNAL'.
APPEND gs_alv TO gt_alv.
CALL METHOD cl_salv_table=>factory
IMPORTING
r_salv_table = gr_alv
CHANGING
t_table = gt_alv.
gr_columns = gr_alv->get_columns( ).
gr_columns->set_exception_column( value = 'LIGHTS' ).
CALL METHOD gr_alv->display.
report zrq2.
tABLES: ekko.
TYPE-POOLS: slis.
TYPES: BEGIN OF t_ekko,
sel,
ebeln TYPE ekpo-ebeln,
ebelp TYPE ekpo-ebelp,
statu TYPE ekpo-statu,
aedat TYPE ekpo-aedat,
matnr TYPE ekpo-matnr,
menge TYPE ekpo-menge,
meins TYPE ekpo-meins,
netpr TYPE ekpo-netpr,
peinh TYPE ekpo-peinh,
END OF t_ekko.
DATA: it_ekko TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
wa_ekko TYPE t_ekko.
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.
************************************************************************
*Start-of-selection.
START-OF-SELECTION.
PERFORM data_retrieval.
PERFORM build_fieldcatalog.
PERFORM build_layout.
PERFORM display_alv_report.
*&---------------------------------------------------------------------*
*& Form BUILD_FIELDCATALOG
*&---------------------------------------------------------------------*
* Build Fieldcatalog for ALV Report
*----------------------------------------------------------------------*
FORM build_fieldcatalog.
fieldcatalog-fieldname = 'EBELN'.
fieldcatalog-seltext_m = 'Purchase Order'.
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 = 'EBELP'.
fieldcatalog-seltext_m = 'PO Item'.
fieldcatalog-col_pos = 1.
APPEND fieldcatalog TO fieldcatalog.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'STATU'.
fieldcatalog-seltext_m = 'Status'.
fieldcatalog-col_pos = 2.
APPEND fieldcatalog TO fieldcatalog.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'AEDAT'.
fieldcatalog-seltext_m = 'Item change date'.
fieldcatalog-col_pos = 3.
APPEND fieldcatalog TO fieldcatalog.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'MATNR'.
fieldcatalog-seltext_m = 'Material Number'.
fieldcatalog-col_pos = 4.
APPEND fieldcatalog TO fieldcatalog.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'MENGE'.
fieldcatalog-seltext_m = 'PO quantity'.
fieldcatalog-col_pos = 5.
APPEND fieldcatalog TO fieldcatalog.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'MEINS'.
fieldcatalog-seltext_m = 'Order Unit'.
fieldcatalog-col_pos = 6.
APPEND fieldcatalog TO fieldcatalog.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'NETPR'.
fieldcatalog-seltext_m = 'Net Price'.
fieldcatalog-col_pos = 7.
fieldcatalog-outputlen = 15.
fieldcatalog-do_sum = 'X'. "Display column total
fieldcatalog-datatype = 'CURR'.
APPEND fieldcatalog TO fieldcatalog.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'PEINH'.
fieldcatalog-seltext_m = 'Price Unit'.
fieldcatalog-col_pos = 8.
APPEND fieldcatalog TO fieldcatalog.
CLEAR fieldcatalog.
ENDFORM. " BUILD_FIELDCATALOG
*&---------------------------------------------------------------------*
*& Form BUILD_LAYOUT
*&---------------------------------------------------------------------*
* Build layout for ALV grid report
*----------------------------------------------------------------------*
FORM build_layout.
gd_layout-box_fieldname = 'SEL'.
"set field name to store row selection
gd_layout-edit = 'X'. "makes whole ALV table editable
gd_layout-zebra = 'X'.
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_user_command = 'USER_COMMAND'
is_layout = gd_layout
it_fieldcat = fieldcatalog[]
i_save = 'X'
TABLES
t_outtab = it_ekko
EXCEPTIONS
program_error = 1
OTHERS = 2.
IF sy-subrc <> 0.
ENDIF.
ENDFORM. " DISPLAY_ALV_REPORT
*&---------------------------------------------------------------------*
*& Form DATA_RETRIEVAL
*&---------------------------------------------------------------------*
* Retrieve data form EKPO table and populate itab it_ekko
*----------------------------------------------------------------------*
FORM data_retrieval.
SELECT ebeln ebelp statu aedat matnr menge meins netpr peinh
UP TO 10 ROWS
FROM ekpo
INTO CORRESPONDING FIELDS OF TABLE it_ekko.
ENDFORM. " DATA_RETRIEVAL
*------------------------------------------------------------------*
* FORM USER_COMMAND *
*------------------------------------------------------------------*
FORM user_command USING r_ucomm LIKE sy-ucomm
rs_selfield TYPE slis_selfield.
* Check function code
CASE r_ucomm.
WHEN '&IC1'.
* Check field clicked on within ALVgrid report
IF rs_selfield-fieldname = 'EBELN'.
* Read data table, using index of row user clicked on
READ TABLE it_ekko INTO wa_ekko INDEX rs_selfield-tabindex.
* Set parameter ID for transaction screen field
SET PARAMETER ID 'BES' FIELD wa_ekko-ebeln.
* Sxecute transaction ME23N, and skip initial data entry screen
CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.
ENDIF.
WHEN '&DATA_SAVE'. "user presses SAVE
LOOP AT it_ekko INTO wa_ekko.
IF wa_ekko-sel EQ 'X'.
* Process records that have been selected
ENDIF.
ENDLOOP.
ENDCASE.
ENDFORM. "user_command*&---------------------------------------------------------------------*
REPORT ZRQ4.
tables: pa0008.
type-pools: slis.
types: begin of ty_pa0008,
pernr type PERSNO,
begda type begda,
endda type endda,
OBJPS type OBJPS,
ansal type ansal,
lga01 type LGART,
bet01 type PAD_AMT7S,
END OF ty_pa0008.
DATA: gs_pa0008 type ty_pa0008,
gi_pa0008 type table of ty_pa0008.
DATA: gi_fieldcat type slis_t_fieldcat_alv,
gs_fieldcat type slis_fieldcat_alv,
gi_layout type slis_layout_alv.
start-of-selection.
SELECT pernr
begda
endda
objps
ansal
lga01
bet01
FROM pa0008
INTO TABLE gi_pa0008
UP TO 10 ROWS .
SORT gi_pa0008 BY pernr begda DESCENDING.
gs_fieldcat-fieldname = 'PERNR'.
gs_fieldcat-reptext_ddic = 'Personnel no'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'BEGDA'.
gs_fieldcat-reptext_ddic = 'Start date'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'ENDDA'.
gs_fieldcat-reptext_ddic = 'End date'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'OBJPS'.
gs_fieldcat-reptext_ddic = 'Object Identification'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'ANSAL'.
gs_fieldcat-reptext_ddic = 'Annula salary'.
gs_fieldcat-do_sum = 'X'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'LGA01'.
gs_fieldcat-reptext_ddic = 'Wage Type'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'BET01'.
gs_fieldcat-reptext_ddic = 'Amount for wagetype'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gi_layout-totals_text = 'total text'.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = sy-repid
I_CALLBACK_TOP_OF_PAGE = 'TOP_OF_PAGE'
IS_LAYOUT = gi_layout
IT_FIELDCAT = gi_fieldcat
TABLES
T_OUTTAB = gi_pa0008.
IF SY-SUBRC <> 0.
ENDIF.
***************************************************************
form top_of_page.
data:gi_header type slis_t_listheader,
gs_header type slis_listheader.
gS_header-typ = 'S'.
gS_header-key = 'USER'.
gS_header-info = sy-uname.
APPEND gS_header TO gi_header.
gS_header-typ = 'S'.
gS_header-key = 'DATE'.
gS_header-info = sy-datum.
APPEND gS_header TO gi_header.
gs_header-typ = 'H'.
gs_header-info = 'Employee Year to Date Salaries'.
APPEND gS_header TO gi_header.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = gi_header.
endform.
TYPES:
BEGIN OF ty_alv,
lights(1) TYPE c, "Exception, Holding the value of the lights
text(20) TYPE c, "some text
END OF ty_alv.
DATA: gs_alv TYPE ty_alv,
gt_alv TYPE TABLE OF ty_alv,
gr_alv TYPE REF TO cl_salv_table,
gr_columns TYPE REF TO cl_salv_columns_table.
START-OF-SELECTION.
gs_alv-lights = '1'. "Color red
gs_alv-text = 'RED SIGNAL'.
APPEND gs_alv TO gt_alv.
gs_alv-lights = '2'. "Color yellow
gs_alv-text = 'YELLOW SIGNAL'.
APPEND gs_alv TO gt_alv.
gs_alv-lights = '3'. "Color green
gs_alv-text = 'GREEN SIGNAL'.
APPEND gs_alv TO gt_alv.
CALL METHOD cl_salv_table=>factory
IMPORTING
r_salv_table = gr_alv
CHANGING
t_table = gt_alv.
gr_columns = gr_alv->get_columns( ).
gr_columns->set_exception_column( value = 'LIGHTS' ).
CALL METHOD gr_alv->display.
*&---------------------------------------------------------------------*
*& Report ZRQ3
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZRQ3.
TABLES:pa0008.
TYPE-POOLS:slis.
TYPES:BEGIN OF ty_pa0008,
pernr LIKE pa0008-pernr,
begda LIKE pa0008-begda,
endda LIKE pa0008-endda,
ansal LIKE pa0008-ansal,
lga01 LIKE pa0008-lga01,
bet01 LIKE pa0008-bet01,
END OF ty_pa0008.
DATA: it_pa0008 TYPE STANDARD TABLE OF ty_pa0008 WITH HEADER LINE.
DATA: it_fieldcat TYPE slis_t_fieldcat_alv,
wa_fieldcat TYPE slis_fieldcat_alv,
it_layout TYPE slis_layout_alv,
wa_events TYPE slis_alv_event,
it_events TYPE slis_t_event.
START-OF-SELECTION.
PERFORM getd_data.
PERFORM disp_alv.
*&---------------------------------------------------------------------*
*& Form getD_data
*----------------------------------------------------------------------*
FORM getd_data .
SELECT pernr
begda
endda
ansal
lga01
bet01
FROM pa0008
INTO TABLE it_pa0008
UP TO 10 ROWS .
SORT it_pa0008 BY pernr begda DESCENDING.
ENDFORM. " getD_data
*&---------------------------------------------------------------------*
*& Form disp_alv
*----------------------------------------------------------------------*
FORM disp_alv .
wa_fieldcat-fieldname = 'PERNR'.
wa_fieldcat-reptext_ddic = 'Personnel no'.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'BEGDA'.
wa_fieldcat-reptext_ddic = 'Start date'.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'ENDDA'.
wa_fieldcat-reptext_ddic = 'End date'.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'ANSAL'.
wa_fieldcat-reptext_ddic = 'Annula salary'.
wa_fieldcat-do_sum = 'X'.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'LGA01'.
wa_fieldcat-reptext_ddic = 'Wage Type'.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'BET01'.
wa_fieldcat-reptext_ddic = 'Amount for wagetype'.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
it_layout-totals_text = 'total text'.
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
i_callback_program = sy-repid
is_layout = it_layout
it_fieldcat = it_fieldcat
TABLES
t_outtab = it_pa0008.
ENDFORM. " disp_alv
*& Report ZRQ3
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZRQ3.
TABLES:pa0008.
TYPE-POOLS:slis.
TYPES:BEGIN OF ty_pa0008,
pernr LIKE pa0008-pernr,
begda LIKE pa0008-begda,
endda LIKE pa0008-endda,
ansal LIKE pa0008-ansal,
lga01 LIKE pa0008-lga01,
bet01 LIKE pa0008-bet01,
END OF ty_pa0008.
DATA: it_pa0008 TYPE STANDARD TABLE OF ty_pa0008 WITH HEADER LINE.
DATA: it_fieldcat TYPE slis_t_fieldcat_alv,
wa_fieldcat TYPE slis_fieldcat_alv,
it_layout TYPE slis_layout_alv,
wa_events TYPE slis_alv_event,
it_events TYPE slis_t_event.
START-OF-SELECTION.
PERFORM getd_data.
PERFORM disp_alv.
*&---------------------------------------------------------------------*
*& Form getD_data
*----------------------------------------------------------------------*
FORM getd_data .
SELECT pernr
begda
endda
ansal
lga01
bet01
FROM pa0008
INTO TABLE it_pa0008
UP TO 10 ROWS .
SORT it_pa0008 BY pernr begda DESCENDING.
ENDFORM. " getD_data
*&---------------------------------------------------------------------*
*& Form disp_alv
*----------------------------------------------------------------------*
FORM disp_alv .
wa_fieldcat-fieldname = 'PERNR'.
wa_fieldcat-reptext_ddic = 'Personnel no'.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'BEGDA'.
wa_fieldcat-reptext_ddic = 'Start date'.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'ENDDA'.
wa_fieldcat-reptext_ddic = 'End date'.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'ANSAL'.
wa_fieldcat-reptext_ddic = 'Annula salary'.
wa_fieldcat-do_sum = 'X'.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'LGA01'.
wa_fieldcat-reptext_ddic = 'Wage Type'.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'BET01'.
wa_fieldcat-reptext_ddic = 'Amount for wagetype'.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
it_layout-totals_text = 'total text'.
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
i_callback_program = sy-repid
is_layout = it_layout
it_fieldcat = it_fieldcat
TABLES
t_outtab = it_pa0008.
ENDFORM. " disp_alv
report zrq2.
tABLES: ekko.
TYPE-POOLS: slis.
TYPES: BEGIN OF t_ekko,
sel,
ebeln TYPE ekpo-ebeln,
ebelp TYPE ekpo-ebelp,
statu TYPE ekpo-statu,
aedat TYPE ekpo-aedat,
matnr TYPE ekpo-matnr,
menge TYPE ekpo-menge,
meins TYPE ekpo-meins,
netpr TYPE ekpo-netpr,
peinh TYPE ekpo-peinh,
END OF t_ekko.
DATA: it_ekko TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
wa_ekko TYPE t_ekko.
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.
************************************************************************
*Start-of-selection.
START-OF-SELECTION.
PERFORM data_retrieval.
PERFORM build_fieldcatalog.
PERFORM build_layout.
PERFORM display_alv_report.
*&---------------------------------------------------------------------*
*& Form BUILD_FIELDCATALOG
*&---------------------------------------------------------------------*
* Build Fieldcatalog for ALV Report
*----------------------------------------------------------------------*
FORM build_fieldcatalog.
fieldcatalog-fieldname = 'EBELN'.
fieldcatalog-seltext_m = 'Purchase Order'.
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 = 'EBELP'.
fieldcatalog-seltext_m = 'PO Item'.
fieldcatalog-col_pos = 1.
APPEND fieldcatalog TO fieldcatalog.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'STATU'.
fieldcatalog-seltext_m = 'Status'.
fieldcatalog-col_pos = 2.
APPEND fieldcatalog TO fieldcatalog.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'AEDAT'.
fieldcatalog-seltext_m = 'Item change date'.
fieldcatalog-col_pos = 3.
APPEND fieldcatalog TO fieldcatalog.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'MATNR'.
fieldcatalog-seltext_m = 'Material Number'.
fieldcatalog-col_pos = 4.
APPEND fieldcatalog TO fieldcatalog.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'MENGE'.
fieldcatalog-seltext_m = 'PO quantity'.
fieldcatalog-col_pos = 5.
APPEND fieldcatalog TO fieldcatalog.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'MEINS'.
fieldcatalog-seltext_m = 'Order Unit'.
fieldcatalog-col_pos = 6.
APPEND fieldcatalog TO fieldcatalog.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'NETPR'.
fieldcatalog-seltext_m = 'Net Price'.
fieldcatalog-col_pos = 7.
fieldcatalog-outputlen = 15.
fieldcatalog-do_sum = 'X'. "Display column total
fieldcatalog-datatype = 'CURR'.
APPEND fieldcatalog TO fieldcatalog.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'PEINH'.
fieldcatalog-seltext_m = 'Price Unit'.
fieldcatalog-col_pos = 8.
APPEND fieldcatalog TO fieldcatalog.
CLEAR fieldcatalog.
ENDFORM. " BUILD_FIELDCATALOG
*&---------------------------------------------------------------------*
*& Form BUILD_LAYOUT
*&---------------------------------------------------------------------*
* Build layout for ALV grid report
*----------------------------------------------------------------------*
FORM build_layout.
gd_layout-box_fieldname = 'SEL'.
"set field name to store row selection
gd_layout-edit = 'X'. "makes whole ALV table editable
gd_layout-zebra = 'X'.
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_user_command = 'USER_COMMAND'
is_layout = gd_layout
it_fieldcat = fieldcatalog[]
i_save = 'X'
TABLES
t_outtab = it_ekko
EXCEPTIONS
program_error = 1
OTHERS = 2.
IF sy-subrc <> 0.
ENDIF.
ENDFORM. " DISPLAY_ALV_REPORT
*&---------------------------------------------------------------------*
*& Form DATA_RETRIEVAL
*&---------------------------------------------------------------------*
* Retrieve data form EKPO table and populate itab it_ekko
*----------------------------------------------------------------------*
FORM data_retrieval.
SELECT ebeln ebelp statu aedat matnr menge meins netpr peinh
UP TO 10 ROWS
FROM ekpo
INTO CORRESPONDING FIELDS OF TABLE it_ekko.
ENDFORM. " DATA_RETRIEVAL
*------------------------------------------------------------------*
* FORM USER_COMMAND *
*------------------------------------------------------------------*
FORM user_command USING r_ucomm LIKE sy-ucomm
rs_selfield TYPE slis_selfield.
* Check function code
CASE r_ucomm.
WHEN '&IC1'.
* Check field clicked on within ALVgrid report
IF rs_selfield-fieldname = 'EBELN'.
* Read data table, using index of row user clicked on
READ TABLE it_ekko INTO wa_ekko INDEX rs_selfield-tabindex.
* Set parameter ID for transaction screen field
SET PARAMETER ID 'BES' FIELD wa_ekko-ebeln.
* Sxecute transaction ME23N, and skip initial data entry screen
CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.
ENDIF.
WHEN '&DATA_SAVE'. "user presses SAVE
LOOP AT it_ekko INTO wa_ekko.
IF wa_ekko-sel EQ 'X'.
* Process records that have been selected
ENDIF.
ENDLOOP.
ENDCASE.
ENDFORM. "user_command*&---------------------------------------------------------------------*
REPORT ZRQ4.
tables: pa0008.
type-pools: slis.
types: begin of ty_pa0008,
pernr type PERSNO,
begda type begda,
endda type endda,
OBJPS type OBJPS,
ansal type ansal,
lga01 type LGART,
bet01 type PAD_AMT7S,
END OF ty_pa0008.
DATA: gs_pa0008 type ty_pa0008,
gi_pa0008 type table of ty_pa0008.
DATA: gi_fieldcat type slis_t_fieldcat_alv,
gs_fieldcat type slis_fieldcat_alv,
gi_layout type slis_layout_alv.
start-of-selection.
SELECT pernr
begda
endda
objps
ansal
lga01
bet01
FROM pa0008
INTO TABLE gi_pa0008
UP TO 10 ROWS .
SORT gi_pa0008 BY pernr begda DESCENDING.
gs_fieldcat-fieldname = 'PERNR'.
gs_fieldcat-reptext_ddic = 'Personnel no'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'BEGDA'.
gs_fieldcat-reptext_ddic = 'Start date'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'ENDDA'.
gs_fieldcat-reptext_ddic = 'End date'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'OBJPS'.
gs_fieldcat-reptext_ddic = 'Object Identification'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'ANSAL'.
gs_fieldcat-reptext_ddic = 'Annula salary'.
gs_fieldcat-do_sum = 'X'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'LGA01'.
gs_fieldcat-reptext_ddic = 'Wage Type'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'BET01'.
gs_fieldcat-reptext_ddic = 'Amount for wagetype'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gi_layout-totals_text = 'total text'.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = sy-repid
I_CALLBACK_TOP_OF_PAGE = 'TOP_OF_PAGE'
IS_LAYOUT = gi_layout
IT_FIELDCAT = gi_fieldcat
TABLES
T_OUTTAB = gi_pa0008.
IF SY-SUBRC <> 0.
ENDIF.
***************************************************************
form top_of_page.
data:gi_header type slis_t_listheader,
gs_header type slis_listheader.
gS_header-typ = 'S'.
gS_header-key = 'USER'.
gS_header-info = sy-uname.
APPEND gS_header TO gi_header.
gS_header-typ = 'S'.
gS_header-key = 'DATE'.
gS_header-info = sy-datum.
APPEND gS_header TO gi_header.
gs_header-typ = 'H'.
gs_header-info = 'Employee Year to Date Salaries'.
APPEND gS_header TO gi_header.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = gi_header.
endform.
No comments:
Post a Comment