*&---------------------------------------------------------------------*
*& Report ZSALV_REPORT_SYMBOL
*&
*&---------------------------------------------------------------------*
*& In This Tutorial i will show you how to Display Trafic Signal,
*& Symbol and Tooltrip (Signal Description).
*&---------------------------------------------------------------------*
REPORT ZSALV_REPORT_SYMBOL.
*& Constant Declaration.
DATA : LV_EBELN TYPE EKKO-EBELN.
*& Selection Screen
SELECTION-SCREEN BEGIN OF BLOCK A1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS S_EBELN FOR LV_EBELN.
SELECTION-SCREEN END OF BLOCK A1.
CLASS CL_DATA DEFINITION.
PUBLIC SECTION.
*& Structure for Purchasing Document Header Table
TYPES : BEGIN OF TY_EKKO,
EBELN TYPE EBELN, "Purchasing Document Number
BUKRS TYPE BUKRS, "Company Code
BSTYP TYPE EBSTYP, "Purchasing Document Category
BSART TYPE ESART, "Purchasing Document Type
BEDAT TYPE EBDAT, "Purchasing Document Date
END OF TY_EKKO,
*& Structure for Purchasing Document Item Table
BEGIN OF TY_EKPO,
EBELN TYPE EBELN, "Purchasing Document Number
EBELP TYPE EBELP, "Item Number of Purchasing Document
MATNR TYPE MATNR, "Material Number
MENGE TYPE BSTMG, "Purchase Order Quantity
MEINS TYPE BSTME, "Purchase Order Unit of Measure
NETPR TYPE BPREI, "Net Price in Purchasing Document (in Document Currency)
END OF TY_EKPO.
*& Final Output stucture
TYPES : BEGIN OF TY_FINAL,
STATUS TYPE CHAR10,
EBELN TYPE EBELN, "Purchasing Document Number
BSART TYPE ESART, "Purchasing Document Type
BEDAT TYPE EBDAT, "Purchasing Document Date
MATNR TYPE MATNR, "Material Number
MENGE TYPE BSTMG, "Purchase Order Quantity
MEINS TYPE BSTME, "Purchase Order Unit of Measure
NETPR TYPE BPREI, "Net Price in Purchasing Document (in Document Currency)
END OF TY_FINAL.
*& Internal Table Declration
DATA : GT_EKKO TYPE TABLE OF TY_EKKO INITIAL SIZE 1,
GT_EKPO TYPE TABLE OF TY_EKPO INITIAL SIZE 1,
GT_FINAL TYPE TABLE OF TY_FINAL INITIAL SIZE 1.
*& Workarea Declaration.
DATA : GS_FINAL TYPE TY_FINAL,
GS_EKKO TYPE TY_EKKO,
GS_EKPO TYPE TY_EKPO.
*& Declare Variable for Class.
DATA : LO_ALV TYPE REF TO CL_SALV_TABLE,
LO_COLUMNS TYPE REF TO CL_SALV_COLUMNS,
LO_COLUMN TYPE REF TO CL_SALV_COLUMN_LIST,
LO_FUNCTIONAL_SETTING TYPE REF TO CL_SALV_FUNCTIONAL_SETTINGS,
LO_FUNCTION_LIST TYPE REF TO CL_SALV_FUNCTIONS_LIST,
LO_TOOLTIPS TYPE REF TO CL_SALV_TOOLTIPS,
LV_VALUE TYPE LVC_VALUE.
DATA : LV_NO TYPE INT4.
*& Declare Methods for Get Data and Display Data
METHODS : GET_DATA, "Get data from Data base.
GET_POP_DATA, "Populate Final Display Data
DISPLAY. "Display Data
ENDCLASS.
*& Start of Selection
START-OF-SELECTION.
*& Refence for Cl_DATA
DATA : LO_CL_DATA TYPE REF TO CL_DATA.
*& Object for CL_DATA Class.
CREATE OBJECT LO_CL_DATA.
*& Call the GET_DATA Method.
LO_CL_DATA->GET_DATA( ).
*& Call the GET_POP_DATA Method.
LO_CL_DATA->GET_POP_DATA( ).
*& Call the DISPLAY Method.
LO_CL_DATA->DISPLAY( ).
CLASS CL_DATA IMPLEMENTATION.
*&This Method is used to Get data from Data base
METHOD GET_DATA.
SELECT EBELN
BUKRS
BSTYP
BSART
BEDAT
FROM EKKO INTO TABLE GT_EKKO WHERE EBELN IN S_EBELN.
IF GT_EKKO[] IS NOT INITIAL.
SORT GT_EKKO BY EBELN.
ELSE.
MESSAGE 'Data not Found' TYPE 'E'.
ENDIF.
IF GT_EKKO[] IS NOT INITIAL.
SELECT EBELN
EBELP
MATNR
MENGE
MEINS
NETPR
FROM EKPO INTO TABLE GT_EKPO FOR ALL ENTRIES IN GT_EKKO
WHERE EBELN EQ GT_EKKO-EBELN.
ENDIF.
ENDMETHOD.
*& This Method is used to Populate final display Data
METHOD GET_POP_DATA.
"Not Require
INCLUDE: <icon>.
SORT GT_EKKO BY EBELN.
SORT GT_EKPO BY EBELN.
LOOP AT GT_EKKO INTO GS_EKKO.
GS_FINAL-BSART = GS_EKKO-BSART.
GS_FINAL-BEDAT = GS_EKKO-BEDAT.
IF GS_EKKO-BSART = 'NB'.
"Add Green Signal
GS_FINAL-STATUS = icon_green_light.
ELSEIF GS_EKKO-BSART EQ 'UB'.
"Add Red Signal
GS_FINAL-STATUS = icon_red_light.
ELSEIF GS_EKKO-BSART EQ 'FO'.
"Add Yellow Signal
GS_FINAL-STATUS = icon_yellow_light.
ELSEIF GS_EKKO-BSART EQ 'EC'.
"Add Green Signal
GS_FINAL-STATUS = icon_led_red.
ELSEIF GS_EKKO-BSART EQ 'AN'.
GS_FINAL-STATUS = icon_led_green.
ELSEIF GS_EKKO-BSART EQ 'EUB'.
GS_FINAL-STATUS = icon_led_yellow.
ENDIF.
CLEAR : GS_EKPO, LV_NO.
READ TABLE GT_EKPO INTO GS_EKPO WITH KEY EBELN = GS_EKKO-EBELN BINARY SEARCH.
IF SY-SUBRC EQ 0.
LV_NO = SY-TABIX.
ENDIF.
LOOP AT GT_EKPO INTO GS_EKPO FROM LV_NO.
IF GS_EKPO-EBELN NE GS_EKKO-EBELN.
EXIT.
ENDIF.
GS_FINAL-EBELN = GS_EKPO-EBELN.
GS_FINAL-MATNR = GS_EKPO-MATNR.
GS_FINAL-MENGE = GS_FINAL-MENGE + GS_EKPO-MENGE.
GS_FINAL-MEINS = GS_EKPO-MEINS.
GS_FINAL-NETPR = GS_FINAL-NETPR + GS_EKPO-NETPR.
ENDLOOP.
APPEND GS_FINAL TO GT_FINAL.
CLEAR GS_FINAL.
ENDLOOP.
ENDMETHOD.
*& This Method is used to Display Data
METHOD DISPLAY.
*& We call the Factory Method to get the instance of the ALV.
TRY.
CALL METHOD CL_SALV_TABLE=>FACTORY
* EXPORTING
* LIST_DISPLAY = IF_SALV_C_BOOL_SAP=>FALSE
* R_CONTAINER =
* CONTAINER_NAME =
IMPORTING
R_SALV_TABLE = LO_ALV
CHANGING
T_TABLE = GT_FINAL
.
CATCH CX_SALV_MSG .
ENDTRY.
*& Get the all columns
LO_COLUMNS = LO_ALV->GET_COLUMNS( ).
*& Set Column Optimization.
LO_COLUMNS->SET_OPTIMIZE( 'X' ).
*& Displaying toolbar on alv
LO_ALV->GET_FUNCTIONS( )->SET_ALL( ).
*& Change the Column Heading.
TRY.
LO_COLUMN ?= LO_COLUMNS->GET_COLUMN( 'STATUS' ).
LO_COLUMN->SET_LONG_TEXT( 'Status' ).
LO_COLUMN->SET_MEDIUM_TEXT( 'Status' ).
LO_COLUMN->SET_SHORT_TEXT( 'Status' ).
LO_COLUMN->SET_ICON( 'X' ).
LO_COLUMN->SET_OUTPUT_LENGTH( 10 ).
LO_COLUMN ?= LO_COLUMNS->GET_COLUMN( 'EBELN' ).
LO_COLUMN->SET_LONG_TEXT( 'Purchase Number' ).
LO_COLUMN->SET_MEDIUM_TEXT( 'Pur. Number' ).
LO_COLUMN->SET_SHORT_TEXT( 'PO Number' ).
LO_COLUMN ?= LO_COLUMNS->GET_COLUMN( 'MATNR' ).
LO_COLUMN->SET_LONG_TEXT( 'Material Code' ).
LO_COLUMN->SET_MEDIUM_TEXT( 'Material Number' ).
LO_COLUMN->SET_SHORT_TEXT( 'Material' ).
LO_COLUMN ?= LO_COLUMNS->GET_COLUMN( 'BSART' ).
LO_COLUMN->SET_LONG_TEXT( 'Document Type' ).
LO_COLUMN->SET_MEDIUM_TEXT( 'Document Type' ).
LO_COLUMN->SET_SHORT_TEXT( 'Doc.Type' ).
LO_COLUMN ?= LO_COLUMNS->GET_COLUMN( 'BEDAT' ).
LO_COLUMN->SET_LONG_TEXT( 'Document Date' ).
LO_COLUMN->SET_MEDIUM_TEXT( 'Document Date' ).
LO_COLUMN->SET_SHORT_TEXT( 'Doc. Date' ).
LO_COLUMN ?= LO_COLUMNS->GET_COLUMN( 'MEINS' ).
LO_COLUMN->SET_LONG_TEXT( 'Unit of Mesure' ).
LO_COLUMN->SET_MEDIUM_TEXT( 'UOM' ).
LO_COLUMN->SET_SHORT_TEXT( 'UOM' ).
LO_COLUMN ?= LO_COLUMNS->GET_COLUMN( 'MENGE' ).
LO_COLUMN->SET_LONG_TEXT( 'Po Quantity' ).
LO_COLUMN->SET_MEDIUM_TEXT( 'Quantity' ).
LO_COLUMN->SET_SHORT_TEXT( 'Qty' ).
LO_COLUMN ?= LO_COLUMNS->GET_COLUMN( 'NETPR' ).
LO_COLUMN->SET_LONG_TEXT( 'PO Price' ).
LO_COLUMN->SET_MEDIUM_TEXT( 'Price' ).
LO_COLUMN->SET_SHORT_TEXT( 'Price' ).
CATCH CX_SALV_NOT_FOUND.
ENDTRY.
*& Add Tool Trips
LO_FUNCTIONAL_SETTING = LO_ALV->GET_FUNCTIONAL_SETTINGS( ).
LO_TOOLTIPS = LO_FUNCTIONAL_SETTING->GET_TOOLTIPS( ).
*& Add Symbol Description
TRY.
LV_VALUE = icon_green_light.
CALL METHOD LO_TOOLTIPS->ADD_TOOLTIP
EXPORTING
TYPE = CL_SALV_TOOLTIP=>C_TYPE_ICON
VALUE = LV_VALUE
TOOLTIP = 'NB Doc Type'.
CATCH CX_SALV_EXISTING .
ENDTRY.
TRY.
LV_VALUE = icon_red_light.
CALL METHOD LO_TOOLTIPS->ADD_TOOLTIP
EXPORTING
TYPE = CL_SALV_TOOLTIP=>C_TYPE_ICON
VALUE = LV_VALUE
TOOLTIP = 'UB Doc Type'.
CATCH CX_SALV_EXISTING .
ENDTRY.
TRY.
LV_VALUE = icon_yellow_light.
CALL METHOD LO_TOOLTIPS->ADD_TOOLTIP
EXPORTING
TYPE = CL_SALV_TOOLTIP=>C_TYPE_ICON
VALUE = LV_VALUE
TOOLTIP = 'FO Doc Type'.
CATCH CX_SALV_EXISTING .
ENDTRY.
TRY.
LV_VALUE = icon_led_red.
CALL METHOD LO_TOOLTIPS->ADD_TOOLTIP
EXPORTING
TYPE = CL_SALV_TOOLTIP=>C_TYPE_ICON
VALUE = LV_VALUE
TOOLTIP = 'EC Doc Type'.
CATCH CX_SALV_EXISTING .
ENDTRY.
TRY.
LV_VALUE = icon_led_green.
CALL METHOD LO_TOOLTIPS->ADD_TOOLTIP
EXPORTING
TYPE = CL_SALV_TOOLTIP=>C_TYPE_ICON
VALUE = LV_VALUE
TOOLTIP = 'AN Doc Type'.
CATCH CX_SALV_EXISTING .
ENDTRY.
TRY.
LV_VALUE = icon_led_yellow.
CALL METHOD LO_TOOLTIPS->ADD_TOOLTIP
EXPORTING
TYPE = CL_SALV_TOOLTIP=>C_TYPE_ICON
VALUE = LV_VALUE
TOOLTIP = 'EUN Doc Type'.
CATCH CX_SALV_EXISTING .
ENDTRY.
*& Here we will call the display method to get the output on the screen
LO_ALV->DISPLAY( ).
ENDMETHOD.
ENDCLASS.
Output:
Download Source Code in PDF Format.
Download Source Code in TXT Format.
*& Report ZSALV_REPORT_SYMBOL
*&
*&---------------------------------------------------------------------*
*& In This Tutorial i will show you how to Display Trafic Signal,
*& Symbol and Tooltrip (Signal Description).
*&---------------------------------------------------------------------*
REPORT ZSALV_REPORT_SYMBOL.
*& Constant Declaration.
DATA : LV_EBELN TYPE EKKO-EBELN.
*& Selection Screen
SELECTION-SCREEN BEGIN OF BLOCK A1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS S_EBELN FOR LV_EBELN.
SELECTION-SCREEN END OF BLOCK A1.
CLASS CL_DATA DEFINITION.
PUBLIC SECTION.
*& Structure for Purchasing Document Header Table
TYPES : BEGIN OF TY_EKKO,
EBELN TYPE EBELN, "Purchasing Document Number
BUKRS TYPE BUKRS, "Company Code
BSTYP TYPE EBSTYP, "Purchasing Document Category
BSART TYPE ESART, "Purchasing Document Type
BEDAT TYPE EBDAT, "Purchasing Document Date
END OF TY_EKKO,
*& Structure for Purchasing Document Item Table
BEGIN OF TY_EKPO,
EBELN TYPE EBELN, "Purchasing Document Number
EBELP TYPE EBELP, "Item Number of Purchasing Document
MATNR TYPE MATNR, "Material Number
MENGE TYPE BSTMG, "Purchase Order Quantity
MEINS TYPE BSTME, "Purchase Order Unit of Measure
NETPR TYPE BPREI, "Net Price in Purchasing Document (in Document Currency)
END OF TY_EKPO.
*& Final Output stucture
TYPES : BEGIN OF TY_FINAL,
STATUS TYPE CHAR10,
EBELN TYPE EBELN, "Purchasing Document Number
BSART TYPE ESART, "Purchasing Document Type
BEDAT TYPE EBDAT, "Purchasing Document Date
MATNR TYPE MATNR, "Material Number
MENGE TYPE BSTMG, "Purchase Order Quantity
MEINS TYPE BSTME, "Purchase Order Unit of Measure
NETPR TYPE BPREI, "Net Price in Purchasing Document (in Document Currency)
END OF TY_FINAL.
*& Internal Table Declration
DATA : GT_EKKO TYPE TABLE OF TY_EKKO INITIAL SIZE 1,
GT_EKPO TYPE TABLE OF TY_EKPO INITIAL SIZE 1,
GT_FINAL TYPE TABLE OF TY_FINAL INITIAL SIZE 1.
*& Workarea Declaration.
DATA : GS_FINAL TYPE TY_FINAL,
GS_EKKO TYPE TY_EKKO,
GS_EKPO TYPE TY_EKPO.
*& Declare Variable for Class.
DATA : LO_ALV TYPE REF TO CL_SALV_TABLE,
LO_COLUMNS TYPE REF TO CL_SALV_COLUMNS,
LO_COLUMN TYPE REF TO CL_SALV_COLUMN_LIST,
LO_FUNCTIONAL_SETTING TYPE REF TO CL_SALV_FUNCTIONAL_SETTINGS,
LO_FUNCTION_LIST TYPE REF TO CL_SALV_FUNCTIONS_LIST,
LO_TOOLTIPS TYPE REF TO CL_SALV_TOOLTIPS,
LV_VALUE TYPE LVC_VALUE.
DATA : LV_NO TYPE INT4.
*& Declare Methods for Get Data and Display Data
METHODS : GET_DATA, "Get data from Data base.
GET_POP_DATA, "Populate Final Display Data
DISPLAY. "Display Data
ENDCLASS.
*& Start of Selection
START-OF-SELECTION.
*& Refence for Cl_DATA
DATA : LO_CL_DATA TYPE REF TO CL_DATA.
*& Object for CL_DATA Class.
CREATE OBJECT LO_CL_DATA.
*& Call the GET_DATA Method.
LO_CL_DATA->GET_DATA( ).
*& Call the GET_POP_DATA Method.
LO_CL_DATA->GET_POP_DATA( ).
*& Call the DISPLAY Method.
LO_CL_DATA->DISPLAY( ).
CLASS CL_DATA IMPLEMENTATION.
*&This Method is used to Get data from Data base
METHOD GET_DATA.
SELECT EBELN
BUKRS
BSTYP
BSART
BEDAT
FROM EKKO INTO TABLE GT_EKKO WHERE EBELN IN S_EBELN.
IF GT_EKKO[] IS NOT INITIAL.
SORT GT_EKKO BY EBELN.
ELSE.
MESSAGE 'Data not Found' TYPE 'E'.
ENDIF.
IF GT_EKKO[] IS NOT INITIAL.
SELECT EBELN
EBELP
MATNR
MENGE
MEINS
NETPR
FROM EKPO INTO TABLE GT_EKPO FOR ALL ENTRIES IN GT_EKKO
WHERE EBELN EQ GT_EKKO-EBELN.
ENDIF.
ENDMETHOD.
*& This Method is used to Populate final display Data
METHOD GET_POP_DATA.
"Not Require
INCLUDE: <icon>.
SORT GT_EKKO BY EBELN.
SORT GT_EKPO BY EBELN.
LOOP AT GT_EKKO INTO GS_EKKO.
GS_FINAL-BSART = GS_EKKO-BSART.
GS_FINAL-BEDAT = GS_EKKO-BEDAT.
IF GS_EKKO-BSART = 'NB'.
"Add Green Signal
GS_FINAL-STATUS = icon_green_light.
ELSEIF GS_EKKO-BSART EQ 'UB'.
"Add Red Signal
GS_FINAL-STATUS = icon_red_light.
ELSEIF GS_EKKO-BSART EQ 'FO'.
"Add Yellow Signal
GS_FINAL-STATUS = icon_yellow_light.
ELSEIF GS_EKKO-BSART EQ 'EC'.
"Add Green Signal
GS_FINAL-STATUS = icon_led_red.
ELSEIF GS_EKKO-BSART EQ 'AN'.
GS_FINAL-STATUS = icon_led_green.
ELSEIF GS_EKKO-BSART EQ 'EUB'.
GS_FINAL-STATUS = icon_led_yellow.
ENDIF.
CLEAR : GS_EKPO, LV_NO.
READ TABLE GT_EKPO INTO GS_EKPO WITH KEY EBELN = GS_EKKO-EBELN BINARY SEARCH.
IF SY-SUBRC EQ 0.
LV_NO = SY-TABIX.
ENDIF.
LOOP AT GT_EKPO INTO GS_EKPO FROM LV_NO.
IF GS_EKPO-EBELN NE GS_EKKO-EBELN.
EXIT.
ENDIF.
GS_FINAL-EBELN = GS_EKPO-EBELN.
GS_FINAL-MATNR = GS_EKPO-MATNR.
GS_FINAL-MENGE = GS_FINAL-MENGE + GS_EKPO-MENGE.
GS_FINAL-MEINS = GS_EKPO-MEINS.
GS_FINAL-NETPR = GS_FINAL-NETPR + GS_EKPO-NETPR.
ENDLOOP.
APPEND GS_FINAL TO GT_FINAL.
CLEAR GS_FINAL.
ENDLOOP.
ENDMETHOD.
*& This Method is used to Display Data
METHOD DISPLAY.
*& We call the Factory Method to get the instance of the ALV.
TRY.
CALL METHOD CL_SALV_TABLE=>FACTORY
* EXPORTING
* LIST_DISPLAY = IF_SALV_C_BOOL_SAP=>FALSE
* R_CONTAINER =
* CONTAINER_NAME =
IMPORTING
R_SALV_TABLE = LO_ALV
CHANGING
T_TABLE = GT_FINAL
.
CATCH CX_SALV_MSG .
ENDTRY.
*& Get the all columns
LO_COLUMNS = LO_ALV->GET_COLUMNS( ).
*& Set Column Optimization.
LO_COLUMNS->SET_OPTIMIZE( 'X' ).
*& Displaying toolbar on alv
LO_ALV->GET_FUNCTIONS( )->SET_ALL( ).
*& Change the Column Heading.
TRY.
LO_COLUMN ?= LO_COLUMNS->GET_COLUMN( 'STATUS' ).
LO_COLUMN->SET_LONG_TEXT( 'Status' ).
LO_COLUMN->SET_MEDIUM_TEXT( 'Status' ).
LO_COLUMN->SET_SHORT_TEXT( 'Status' ).
LO_COLUMN->SET_ICON( 'X' ).
LO_COLUMN->SET_OUTPUT_LENGTH( 10 ).
LO_COLUMN ?= LO_COLUMNS->GET_COLUMN( 'EBELN' ).
LO_COLUMN->SET_LONG_TEXT( 'Purchase Number' ).
LO_COLUMN->SET_MEDIUM_TEXT( 'Pur. Number' ).
LO_COLUMN->SET_SHORT_TEXT( 'PO Number' ).
LO_COLUMN ?= LO_COLUMNS->GET_COLUMN( 'MATNR' ).
LO_COLUMN->SET_LONG_TEXT( 'Material Code' ).
LO_COLUMN->SET_MEDIUM_TEXT( 'Material Number' ).
LO_COLUMN->SET_SHORT_TEXT( 'Material' ).
LO_COLUMN ?= LO_COLUMNS->GET_COLUMN( 'BSART' ).
LO_COLUMN->SET_LONG_TEXT( 'Document Type' ).
LO_COLUMN->SET_MEDIUM_TEXT( 'Document Type' ).
LO_COLUMN->SET_SHORT_TEXT( 'Doc.Type' ).
LO_COLUMN ?= LO_COLUMNS->GET_COLUMN( 'BEDAT' ).
LO_COLUMN->SET_LONG_TEXT( 'Document Date' ).
LO_COLUMN->SET_MEDIUM_TEXT( 'Document Date' ).
LO_COLUMN->SET_SHORT_TEXT( 'Doc. Date' ).
LO_COLUMN ?= LO_COLUMNS->GET_COLUMN( 'MEINS' ).
LO_COLUMN->SET_LONG_TEXT( 'Unit of Mesure' ).
LO_COLUMN->SET_MEDIUM_TEXT( 'UOM' ).
LO_COLUMN->SET_SHORT_TEXT( 'UOM' ).
LO_COLUMN ?= LO_COLUMNS->GET_COLUMN( 'MENGE' ).
LO_COLUMN->SET_LONG_TEXT( 'Po Quantity' ).
LO_COLUMN->SET_MEDIUM_TEXT( 'Quantity' ).
LO_COLUMN->SET_SHORT_TEXT( 'Qty' ).
LO_COLUMN ?= LO_COLUMNS->GET_COLUMN( 'NETPR' ).
LO_COLUMN->SET_LONG_TEXT( 'PO Price' ).
LO_COLUMN->SET_MEDIUM_TEXT( 'Price' ).
LO_COLUMN->SET_SHORT_TEXT( 'Price' ).
CATCH CX_SALV_NOT_FOUND.
ENDTRY.
*& Add Tool Trips
LO_FUNCTIONAL_SETTING = LO_ALV->GET_FUNCTIONAL_SETTINGS( ).
LO_TOOLTIPS = LO_FUNCTIONAL_SETTING->GET_TOOLTIPS( ).
*& Add Symbol Description
TRY.
LV_VALUE = icon_green_light.
CALL METHOD LO_TOOLTIPS->ADD_TOOLTIP
EXPORTING
TYPE = CL_SALV_TOOLTIP=>C_TYPE_ICON
VALUE = LV_VALUE
TOOLTIP = 'NB Doc Type'.
CATCH CX_SALV_EXISTING .
ENDTRY.
TRY.
LV_VALUE = icon_red_light.
CALL METHOD LO_TOOLTIPS->ADD_TOOLTIP
EXPORTING
TYPE = CL_SALV_TOOLTIP=>C_TYPE_ICON
VALUE = LV_VALUE
TOOLTIP = 'UB Doc Type'.
CATCH CX_SALV_EXISTING .
ENDTRY.
TRY.
LV_VALUE = icon_yellow_light.
CALL METHOD LO_TOOLTIPS->ADD_TOOLTIP
EXPORTING
TYPE = CL_SALV_TOOLTIP=>C_TYPE_ICON
VALUE = LV_VALUE
TOOLTIP = 'FO Doc Type'.
CATCH CX_SALV_EXISTING .
ENDTRY.
TRY.
LV_VALUE = icon_led_red.
CALL METHOD LO_TOOLTIPS->ADD_TOOLTIP
EXPORTING
TYPE = CL_SALV_TOOLTIP=>C_TYPE_ICON
VALUE = LV_VALUE
TOOLTIP = 'EC Doc Type'.
CATCH CX_SALV_EXISTING .
ENDTRY.
TRY.
LV_VALUE = icon_led_green.
CALL METHOD LO_TOOLTIPS->ADD_TOOLTIP
EXPORTING
TYPE = CL_SALV_TOOLTIP=>C_TYPE_ICON
VALUE = LV_VALUE
TOOLTIP = 'AN Doc Type'.
CATCH CX_SALV_EXISTING .
ENDTRY.
TRY.
LV_VALUE = icon_led_yellow.
CALL METHOD LO_TOOLTIPS->ADD_TOOLTIP
EXPORTING
TYPE = CL_SALV_TOOLTIP=>C_TYPE_ICON
VALUE = LV_VALUE
TOOLTIP = 'EUN Doc Type'.
CATCH CX_SALV_EXISTING .
ENDTRY.
*& Here we will call the display method to get the output on the screen
LO_ALV->DISPLAY( ).
ENDMETHOD.
ENDCLASS.
Output:
Download Source Code in PDF Format.
Download Source Code in TXT Format.
SAP ABAP Training Institute in Gurgaon
ReplyDelete