Professional Documents
Culture Documents
OOALV HotSpot
OOALV HotSpot
OOALV HotSpot
REPORT ZMR_CUSTOM_OOALV_HOTSPOT.
CLASS lcl_event_receiver DEFINITION DEFERRED.
types : begin of ty_vbak,
vbeln type vbeln_va,
erdat type erdat,
netwr type netwr_ak,
end of ty_vbak.
data : lt_vbak type table of ty_vbak,
wa_vbak type ty_vbak.
*
CLASS lcl_event_receiver DEFINITION.
PUBLIC SECTION.
methods hotspot_click for event HOTSPOT_CLICK of CL_GUI_ALV_GRID importing
es_row_no.
endclass.
CLASS lcl_event_receiver implementation.
method hotspot_click.
read table lt_vbak into wa_vbak index ES_ROW_NO-ROW_ID.
if sy-subrc = 0.
set parameter id 'AUN' field wa_vbak-vbeln.
call transaction 'VA03' AND SKIP FIRST SCREEN.
endif.
endmethod.
start-of-selection.
perform data_fetch.
call screen 100.
form DATA_FETCH .
select vbeln erdat netwr from vbak into table lt_vbak where kunnr = p_kunnr.
endform. " DATA_FETCH
wa_fldcat-COL_POS = 1.
wa_fldcat-FIELDNAME = 'VBELN'.
wa_fldcat-TABNAME = 'LT_VBAK'.
wa_fldcat-SCRTEXT_S = 'Sales Ord'.
wa_fldcat-SCRTEXT_M = 'Sales Order No'.
wa_fldcat-SCRTEXT_L = 'Sales Order Number'.
WA_FLDCAT-hotspot = 'X'.
APPEND WA_FLDCAT TO LT_FLDCAT.
CLEAR WA_FLDCAT.
wa_fldcat-COL_POS = 2.
wa_fldcat-FIELDNAME = 'ERDAT'.
wa_fldcat-TABNAME = 'LT_VBAK'.
wa_fldcat-REF_FIELD = 'ERDAT'.
wa_fldcat-REF_TABLE = 'VBAK'.
APPEND WA_FLDCAT TO LT_FLDCAT.
CLEAR WA_FLDCAT.
wa_fldcat-COL_POS = 3.
wa_fldcat-FIELDNAME = 'NETWR'.
wa_fldcat-TABNAME = 'LT_VBAK'.
wa_fldcat-REF_FIELD = 'NETWR'.
wa_fldcat-REF_TABLE = 'VBAK'.
WA_FLDCAT-do_sum = 'Y'."ABAP_TRUE.
APPEND WA_FLDCAT TO LT_FLDCAT.
CLEAR WA_FLDCAT.