08-24-2006 6:26 AM
Hi
Please provide me sample code for subtotals using methods.
The code is
DATA: ls_sort TYPE lvc_s_sort.
ls_sort-spos = '1' .
ls_sort-fieldname = 'BWART'.
ls_sort-up = 'X'.
ls_sort-subtot = 'X'.
*ls_sort-group = 'UL'.
APPEND ls_sort TO p_gt_sort.
endform
but it is not working
Please help me
08-24-2006 6:36 AM
HI Alekhya,
Use like this....
Instead of ls_sort-subtot = 'X'. Use
ls_sort-do_sum = 'X'.
Cheers,
priya
08-24-2006 7:10 AM
hi
good
go through this link
http://www.cdg-inc.com/news/WhitePaper_ALV_Reporting_Power.htm
thanks
mrutyun
08-24-2006 7:33 AM
Hi,
U have to do the subtotal column wise.In the field catalog specify the following in addition to the corresponding field name(i.e. Column)
DATA ls_fcat TYPE lvc_s_fcat.
ls_fcat-do_sum = 'X'.
Hope this helps u out.
Regards,
Shalini
08-24-2006 8:00 AM
Hi,
this is how you should do...
CLASS lcl_event_handler DEFINITION DEFERRED.
DATA: dg_events_receiver TYPE REF
TO lcl_event_handler. "event receiver
*---------------------------------------------------------------------*
* CLASS lcl_event_handler DEFINITION
*---------------------------------------------------------------------*
* For Event handling *
*---------------------------------------------------------------------*
CLASS lcl_event_handler DEFINITION.
PUBLIC SECTION.
CLASS-METHODS:
subtotal_text FOR EVENT subtotal_text
OF cl_gui_alv_grid
IMPORTING es_subtottxt_info
ep_subtot_line
e_event_data.
ENDCLASS. "VERIFY_EVENT_HANDLER DEFINITION
*---------------------------------------------------------------------*
* CLASS lcl_event_handler IMPLEMENTATION
*---------------------------------------------------------------------*
* Implementation of event handler method *
*---------------------------------------------------------------------*
CLASS lcl_event_handler IMPLEMENTATION.
METHOD subtotal_text.
PERFORM d0100_event_subtotal_text USING es_subtottxt_info
ep_subtot_line
e_event_data.
ENDMETHOD. "subtotal_text
ENDCLASS. "lcl_event_handler IMPLEMENTATION
*--set event handler
PERFORM set_event_handler.
CALL METHOD dg_grid->set_table_for_first_display
EXPORTING
is_layout = ds_layout
CHANGING
it_outtab = <fs_f>
it_fieldcatalog = dt_alv_cat
it_sort = dt_sort
EXCEPTIONS
invalid_parameter_combination = 1
program_error = 2
too_many_lines = 3
OTHERS = 4.
IF sy-subrc <> 0.
MESSAGE i000 WITH
'Error in calling SET_TABLE_FOR_FIRST_DISPLAY'(026).
ENDIF.
*&---------------------------------------------------------------------*
*& Form set_event_handler
*&---------------------------------------------------------------------*
* event handler
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM set_event_handler .
CREATE OBJECT dg_events_receiver.
SET HANDLER dg_events_receiver->subtotal_text
FOR dg_grid.
ENDFORM. " set_event_handler
*&---------------------------------------------------------------------*
*& Form d0100_event_subtotal_text
*&---------------------------------------------------------------------*
* To handle subtotal text event
*----------------------------------------------------------------------*
* -->P_ES_SUBTOTTXT_INFO text
* -->P_EP_SUBTOT_LINE text
* -->P_E_EVENT_DATA text
*----------------------------------------------------------------------*
FORM d0100_event_subtotal_text USING
p_es_subtottxt_info TYPE lvc_s_stxt
p_ep_subtot_line TYPE REF TO data
p_e_event_data TYPE REF TO cl_alv_event_data .
FIELD-SYMBOLS: <fs> TYPE ANY.
ASSIGN p_e_event_data->m_data->* TO <fs>.
<fs> = 'TOTAL'(027).
ENDFORM. " d0100_event_subtotal_text
Regards
vijay