2009 Nov 06 1:13 PM
in the code my event subtot_text is not getting triggered .... any solution plz
REPORT zver_alv_basic.
TYPE-POOLS slis.
DATA: BEGIN OF itab OCCURS 0,
vbeln LIKE vbap-vbeln,
posnr LIKE vbap-posnr,
matnr LIKE vbap-matnr,
netwr LIKE vbap-netwr,
END OF itab.
DATA: fcat TYPE slis_t_fieldcat_alv,
wa_fcat TYPE slis_fieldcat_alv,
i_sort TYPE slis_t_sortinfo_alv WITH HEADER LINE,
i_event TYPE slis_t_event.
SELECT vbeln
posnr
matnr
netwr
FROM vbap
INTO TABLE itab
UP TO 30 ROWS.
I_SORT-FIELDNAME = 'POSNR'.
I_SORT-TABNAME = 'ITAB'.
I_SORT-UP = 'X'.
I_SORT-SUBTOT = 'X'.
APPEND I_SORT.
Perform to populate ALV event
PERFORM sub_get_event.
To prepare field catalog
PERFORM sub_field_catalog.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-cprog
it_fieldcat = fcat
it_events = i_event
it_sort = i_sort[]
TABLES
t_outtab = itab.
&----
*& Form SUB_FIELD_CATALOG
FORM sub_field_catalog .
PERFORM sub_fill_alv_field_catalog USING:
'01' 'VBELN' 'ITAB' 'VBELN' 'VBAP' ,
'02' 'POSNR' 'ITAB' 'POSNR' 'VBAP' ,
'03' 'MATNR' 'ITAB' 'MATNR' 'VBAP' ,
'04' 'NETWR' 'ITAB' 'NETWR' 'VBAP' .
ENDFORM. " SUB_FIELD_CATALOG
&----
*& Form SUB_FILL_ALV_FIELD_CATALOG
FORM sub_fill_alv_field_catalog USING p_rowpos
p_fldnam p_tabnam p_ref_fieldname p_ref_tabname .
wa_fcat-col_pos = p_rowpos.
wa_fcat-fieldname = p_fldnam .
wa_fcat-tabname = p_tabnam .
wa_fcat-ref_fieldname = p_ref_fieldname .
wa_fcat-ref_tabname = p_ref_tabname.
IF P_FLDNAM = 'NETWR'.
wa_fcat-do_sum = 'X'.
ENDIF.
APPEND wa_fcat TO fcat.
CLEAR wa_fcat.
ENDFORM. " SUB_FILL_ALV_FIELD_CATALOG
&----
*& Form SUB_GET_EVENT
FORM sub_get_event .
DATA: wa_event TYPE slis_alv_event.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 4
IMPORTING
et_events = i_event.
READ TABLE i_event INTO wa_event
WITH KEY name = 'SUBTOTAL_TEXT'.
IF sy-subrc = 0.
MOVE 'SUBTOT_TEXT ' TO wa_event-form.
MODIFY i_event FROM wa_event INDEX sy-tabix.
ENDIF.
ENDFORM. " SUB_GET_EVENT
&----
*& Form subtotal_text
&----
Build subtotal text
----
P_total Total
p_subtot_text Subtotal text info
----
FORM subtot_text CHANGING
p_total TYPE any
p_subtot_text TYPE slis_subtot_text.
Material level sub total
IF p_subtot_text-criteria = 'VBELN'.
p_subtot_text-display_text_for_subtotal
= 'VENDOR level total'(009).
ENDIF.
Plant level sub total
IF p_subtot_text-criteria = 'POSNR'.
p_subtot_text-display_text_for_subtotal = 'POSNR level total'(010).
ENDIF.
ENDFORM. "subtotal_text
in the code my event subtot_text is not getting triggered .... any solution plz
REPORT zver_alv_basic.
TYPE-POOLS slis.
DATA: BEGIN OF itab OCCURS 0,
vbeln LIKE vbap-vbeln,
posnr LIKE vbap-posnr,
matnr LIKE vbap-matnr,
netwr LIKE vbap-netwr,
END OF itab.
DATA: fcat TYPE slis_t_fieldcat_alv,
wa_fcat TYPE slis_fieldcat_alv,
i_sort TYPE slis_t_sortinfo_alv WITH HEADER LINE,
i_event TYPE slis_t_event.
SELECT vbeln
posnr
matnr
netwr
FROM vbap
INTO TABLE itab
UP TO 30 ROWS.
I_SORT-FIELDNAME = 'POSNR'.
I_SORT-TABNAME = 'ITAB'.
I_SORT-UP = 'X'.
I_SORT-SUBTOT = 'X'.
APPEND I_SORT.
Perform to populate ALV event
PERFORM sub_get_event.
To prepare field catalog
PERFORM sub_field_catalog.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-cprog
it_fieldcat = fcat
it_events = i_event
it_sort = i_sort[]
TABLES
t_outtab = itab.
&----
*& Form SUB_FIELD_CATALOG
FORM sub_field_catalog .
PERFORM sub_fill_alv_field_catalog USING:
'01' 'VBELN' 'ITAB' 'VBELN' 'VBAP' ,
'02' 'POSNR' 'ITAB' 'POSNR' 'VBAP' ,
'03' 'MATNR' 'ITAB' 'MATNR' 'VBAP' ,
'04' 'NETWR' 'ITAB' 'NETWR' 'VBAP' .
ENDFORM. " SUB_FIELD_CATALOG
&----
*& Form SUB_FILL_ALV_FIELD_CATALOG
FORM sub_fill_alv_field_catalog USING p_rowpos
p_fldnam p_tabnam p_ref_fieldname p_ref_tabname .
wa_fcat-col_pos = p_rowpos.
wa_fcat-fieldname = p_fldnam .
wa_fcat-tabname = p_tabnam .
wa_fcat-ref_fieldname = p_ref_fieldname .
wa_fcat-ref_tabname = p_ref_tabname.
IF P_FLDNAM = 'NETWR'.
wa_fcat-do_sum = 'X'.
ENDIF.
APPEND wa_fcat TO fcat.
CLEAR wa_fcat.
ENDFORM. " SUB_FILL_ALV_FIELD_CATALOG
&----
*& Form SUB_GET_EVENT
FORM sub_get_event .
DATA: wa_event TYPE slis_alv_event.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 4
IMPORTING
et_events = i_event.
READ TABLE i_event INTO wa_event
WITH KEY name = 'SUBTOTAL_TEXT'.
IF sy-subrc = 0.
MOVE 'SUBTOT_TEXT ' TO wa_event-form.
MODIFY i_event FROM wa_event INDEX sy-tabix.
ENDIF.
ENDFORM. " SUB_GET_EVENT
&----
*& Form subtotal_text
&----
Build subtotal text
----
P_total Total
p_subtot_text Subtotal text info
----
FORM subtot_text CHANGING
p_total TYPE any
p_subtot_text TYPE slis_subtot_text.
Material level sub total
IF p_subtot_text-criteria = 'VBELN'.
p_subtot_text-display_text_for_subtotal
= 'VENDOR level total'(009).
ENDIF.
Plant level sub total
IF p_subtot_text-criteria = 'POSNR'.
p_subtot_text-display_text_for_subtotal = 'POSNR level total'(010).
ENDIF.
ENDFORM. "subtotal_text
2009 Nov 06 1:40 PM
Please search the topic 'how to post code', then try again.
after 130 posts, you should know howto.
If I can read it, I'll have a look.
Regards,
Clemens
2009 Nov 09 5:53 AM
2009 Nov 09 5:55 AM
{&----
*& Report ZVER_ALV_BASIC
*&
&----
*&
*&
&----
REPORT zver_alv_basic.
TYPE-POOLS slis.
DATA: BEGIN OF itab OCCURS 0,
vbeln LIKE vbap-vbeln,
posnr LIKE vbap-posnr,
matnr LIKE vbap-matnr,
netwr LIKE vbap-netwr,
END OF itab.
DATA: fcat TYPE slis_t_fieldcat_alv,
wa_fcat TYPE slis_fieldcat_alv,
i_sort TYPE slis_t_sortinfo_alv ,
wa_sort TYPE slis_sortinfo_alv,
i_event TYPE slis_t_event.
START-OF-SELECTION.
SELECT vbeln
posnr
matnr
netwr
FROM vbap
INTO TABLE itab
UP TO 30 ROWS.
wa_sort-spos = '01' .
wa_sort-fieldname = 'VBELN'.
wa_sort-tabname = 'ITAB'.
wa_sort-up = 'X'.
wa_sort-subtot = 'X'.
APPEND wa_sort TO i_sort .
CLEAR wa_sort.
Wa_sort-spos = '02' .
wa_sort-fieldname = 'POSNR'.
wa_sort-tabname = 'ITAB'.
wa_sort-up = 'X'.
wa_sort-subtot = 'X'.
APPEND wa_sort TO i_sort .
CLEAR wa_sort.
Perform to populate ALV event
PERFORM sub_get_event.
To prepare field catalog
PERFORM sub_field_catalog.
END-OF-SELECTION.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-cprog
it_fieldcat = fcat
it_events = i_event
it_sort = i_sort[]
TABLES
t_outtab = itab.
&----
*& Form SUB_FIELD_CATALOG
FORM sub_field_catalog .
PERFORM sub_fill_alv_field_catalog USING:
'01' 'VBELN' 'ITAB' 'VBELN' 'VBAP' ,
'02' 'POSNR' 'ITAB' 'POSNR' 'VBAP' ,
'03' 'MATNR' 'ITAB' 'MATNR' 'VBAP' ,
'04' 'NETWR' 'ITAB' 'NETWR' 'VBAP' .
ENDFORM. " SUB_FIELD_CATALOG
&----
*& Form SUB_FILL_ALV_FIELD_CATALOG
FORM sub_fill_alv_field_catalog USING p_rowpos
p_fldnam p_tabnam p_ref_fieldname p_ref_tabname .
wa_fcat-col_pos = p_rowpos.
wa_fcat-fieldname = p_fldnam .
wa_fcat-tabname = p_tabnam .
wa_fcat-ref_fieldname = p_ref_fieldname .
wa_fcat-ref_tabname = p_ref_tabname.
IF p_fldnam = 'NETWR'.
wa_fcat-do_sum = 'X'.
ENDIF.
APPEND wa_fcat TO fcat.
CLEAR wa_fcat.
ENDFORM. " SUB_FILL_ALV_FIELD_CATALOG
&----
*& Form SUB_GET_EVENT
FORM sub_get_event .
DATA: wa_event TYPE slis_alv_event.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 4
IMPORTING
et_events = i_event.
READ TABLE i_event INTO wa_event
WITH KEY name = 'SUBTOTAL_TEXT'.
IF sy-subrc = 0.
MOVE 'SUBTOT_TEXT ' TO wa_event-form.
MODIFY i_event FROM wa_event INDEX sy-tabix.
ENDIF.
ENDFORM. " SUB_GET_EVENT
&----
*& Form subtotal_text
&----
Build subtotal text
----
P_total Total
p_subtot_text Subtotal text info
----
FORM subtot_text CHANGING
p_total TYPE any
p_subtot_text TYPE slis_subtot_text.
Material level sub total
IF p_subtot_text-criteria = 'VBELN'.
p_subtot_text-display_text_for_subtotal
= 'VENDOR level total'(009).
ENDIF.
Plant level sub total
IF p_subtot_text-criteria = 'POSNR'.
p_subtot_text-display_text_for_subtotal = 'POSNR level total'(010).
ENDIF.
WRITE 😕 'cow'.
ENDFORM. "subtotal_text }
2009 Nov 09 5:58 AM
Please check this and format your code to make it readable. Else its difficult to read your code and suggest you
2009 Nov 09 6:22 AM
2009 Nov 20 8:51 AM