‎2006 Dec 01 7:15 PM
Hi all,
when you see the idoc in we05 againt the current status field in techinical short info,you see 3 round kind of things right,
the color of which depend on the status.
does anyone have an idea as to how to get those things in an alv report
Thanks
venki
‎2006 Dec 01 7:19 PM
Hi
I think you are asking the ALV traffic light.
Here is a code sample for the same,
One more forum thread
Regards
Kathirvel
‎2006 Dec 01 7:19 PM
Hi
I think you are asking the ALV traffic light.
Here is a code sample for the same,
One more forum thread
Regards
Kathirvel
‎2006 Dec 01 7:41 PM
Hi guys ,
thanks for that.
But should i determine the type of lights , is there a fixed light for each status in we05
say for status 56 you have redfollowed byy 2 grey ones. so how should be i able determine those.
i need to display the status and the corresponding lights in my alv
Thanks
‎2006 Dec 01 7:58 PM
There are 3 icons
1.icon_yellow_light
2. icon_green_light
3.icon_red_light
‎2006 Dec 02 2:51 AM
Hi,
Based on your COndition you need to fill your <b>Itab</b> with respective Icons which i mentioned below. You can display any one of the Lights like Green, Yellow or Red.
The ICON Names are icon_yellow_light, icon_green_light and icon_red_light.
Each icon will have 3 Lights.
icon_yellow_light - It will look like Grey Light,Yellow, Grey Light
icon_green_light - Green Light, Grey Light, Grey Light
icon_red_light - Grey Light, Grey Light and Red lightRaja T
Message was edited by:
Raja T
‎2006 Dec 01 7:22 PM
Hi,
Please check demo program BCALV_GRID_04.
Regards,
Ferry Lianto
‎2006 Dec 01 7:32 PM
Here is the code:
Report ZALV.
TYPE-POOLS: icon.
TABLES: zc6_employee.
CLASS lcl_event_receiver DEFINITION DEFERRED.
*----------------------------------------------------------------*
DATA: BEGIN OF i_employee OCCURS 0.
INCLUDE STRUCTURE zc6_employee.
DATA: traffic_light TYPE c.
DATA: line_color(4) TYPE c.
DATA: END OF i_employee.
*-----------------------------------------------------------------*
DATA: ok_code LIKE sy-ucomm,
wa_employee LIKE LINE OF i_employee,
gs_layout TYPE lvc_s_layo.
DATA: grid1 TYPE REF TO cl_gui_alv_grid,
i_custom_container TYPE REF TO cl_gui_custom_container,
o_event_receiver TYPE REF TO lcl_event_receiver.
DATA: wa_change LIKE zc6_employee.
DATA:
* Data for storing information about selected rows in the grid
gi_index_rows TYPE lvc_t_row, " Internal table
g_selected_row LIKE lvc_s_row. " Information about 1 row
*--------------------------------------------------------------------*
* C L A S S E S
*--------------------------------------------------------------------*
CLASS lcl_event_receiver DEFINITION.
PUBLIC SECTION.
METHODS:
handle_toolbar FOR EVENT toolbar OF cl_gui_alv_grid
IMPORTING
e_object e_interactive,
handle_user_command FOR EVENT user_command OF cl_gui_alv_grid
IMPORTING e_ucomm.
ENDCLASS.
*---------------------------------------------------------------------*
* CLASS lcl_event_receiver IMPLEMENTATION
*---------------------------------------------------------------------*
CLASS lcl_event_receiver IMPLEMENTATION.
METHOD handle_toolbar. " Event handler method for event toolbar.
CONSTANTS: " Constants for button type.
c_button_normal TYPE i VALUE 0,
c_separator TYPE i VALUE 3.
DATA:
ls_toolbar TYPE stb_button.
MOVE c_separator TO ls_toolbar-butn_type.
APPEND ls_toolbar TO e_object->mt_toolbar.
* Append a new button that to the toolbar. Use E_OBJECT of
* event toolbar. E_OBJECT is of type CL_ALV_EVENT_TOOLBAR_SET.
* This class has one attribute MT_TOOLBAR which is of table type
* TTB_BUTTON. The structure is STB_BUTTON
CLEAR ls_toolbar.
MOVE 'CHANGE' TO ls_toolbar-function.
MOVE icon_change TO ls_toolbar-icon.
MOVE 'Change Details' TO ls_toolbar-quickinfo.
MOVE 'Change' TO ls_toolbar-text.
MOVE ' ' TO ls_toolbar-disabled.
APPEND ls_toolbar TO e_object->mt_toolbar.
ENDMETHOD.
METHOD handle_user_command." Handleown functions defined in thetoolbar
CASE e_ucomm.
WHEN 'CHANGE'.
PERFORM change_details.
ENDCASE.
ENDMETHOD.
ENDCLASS.
*---------------------------------------------------------------------*
* S T A R T - O F - S E L E C T I O N.
*---------------------------------------------------------------------*
START-OF-SELECTION.
SELECT-OPTIONS: s_empid FOR zc6_employee-s1empid.
SELECT * FROM zc6_employee INTO CORRESPONDING FIELDS OF TABLE
i_employee WHERE s1empid IN s_empid.
CALL SCREEN '100'.
*&---------------------------------------------------------------------*
*& Module USER_COMMAND_0100 INPUT
*&---------------------------------------------------------------------*
MODULE user_command_0100 INPUT.
CASE ok_code.
WHEN 'EXIT'.
LEAVE PROGRAM.
ENDCASE.
ENDMODULE. " USER_COMMAND_0100 INPUT
*&---------------------------------------------------------------------*
*& Module STATUS_0100 OUTPUT
*&---------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
DATA:
v_layout TYPE disvariant.
IF i_custom_container IS INITIAL.
* Create objects for container and ALV grid
CREATE OBJECT i_custom_container
EXPORTING container_name ='ALV_CONTAINER'.
CREATE OBJECT grid1
EXPORTING
i_parent = i_custom_container.
* Create object for event_receiver class
* and set handlers
CREATE OBJECT o_event_receiver.
SET HANDLER o_event_receiver->handle_user_command FOR grid1.
SET HANDLER o_event_receiver->handle_toolbar FOR grid1.
* Layout (Variant) for ALV grid
v_layout-report = sy-repid. "Layout fo report
*---------------------------------------------------------------------*
* Setup the grid layout using a variable of structure lvc_s_layo
*---------------------------------------------------------------------*
* Set grid title
gs_layout-grid_title = 'ALV Grid Display-Employee Details'.
* Selection mode B- Single row without buttons.
* This is the default mode
gs_layout-sel_mode = 'B'.
gs_layout-excp_fname = 'TRAFFIC_LIGHT'.
gs_layout-info_fname = 'LINE_COLOR'.
LOOP AT i_employee INTO wa_employee.
wa_employee-traffic_light = '3'.
* Value of color field:
* C = Color, 6=Color 1=Intesified on, 0: Inverse display off
MODIFY i_employee FROM wa_employee.
ENDLOOP.
* Grid setup for first display
CALL METHOD grid1->set_table_for_first_display
EXPORTING i_structure_name = 'ZC6_EMPLOYEE'
is_variant = v_layout
i_save = 'A'
is_layout = gs_layout
CHANGING it_outtab = i_employee[].
* End of grid setup
ENDIF.
ENDMODULE. " STATUS_0100 OUTPUT
*&---------------------------------------------------------------------*
*& Form change_details
*&---------------------------------------------------------------------*
* Reads the contents of the selected row in the grid, and transfers
* the data to screen 200, where it can be changed and saved.
*----------------------------------------------------------------------*
FORM change_details.
ENDFORM.
Message was edited by:
Raja T