08-02-2006 7:38 AM
hi all,
i want a <b>drop down</b> list in the <b>ALV GRID</b> input field, but i hv no idea for it can anybody gave me some idea or sample program for that,
thanks in advanced
chetan vishnoi
Message was edited by: chetan vishnoi
08-02-2006 8:07 AM
Hi Chetan,
U need to declare the data for drop down.
for ex.
data : drop_down_handle type int4.
then set your dropdown field editable and assign the fieldname
ex..
ls_fcat-edit = 'X'.
ls_fcat-drdn_field = 'DROP_DOWN_HANDLE'.
ls_fcat-outputlen = 5
Then define the drop drown pass it to alv
ex....
form< name u give>
data: lt_dropdown type lvc_t_drop,
ls_dropdown type lvc_s_drop.
ls_dropdown-handle = '1'.
ls_dropdown-value = 'car'.
append ls_dropdown to lt_dropdown.
ls_dropdown-handle = '2'.
ls_dropdown-value = 'fan'.
append ls_dropdown to lt_dropdown.
ls_dropdown-handle = '2'.
ls_dropdown-value = 'pan'.
append ls_dropdown to lt_dropdown.
ls_dropdown-handle = '2'.
ls_dropdown-value = 'can'.
append ls_dropdown to lt_dropdown.
call method g_grid->set_drop_down_table
exporting it_drop_down = lt_dropdown.
endform.
This is how we write the drop down.....
regards,
Deepti.
plz reward if found helpful..
08-02-2006 7:40 AM
Check both the demo programs
BCALV_EDIT_06
BCALV_EDIT_07 and change your code as per your requirement.
08-02-2006 8:08 AM
hi kishan,
thank u very much for that but can u plc tell me how i code in our program ,
<b>my module is this--></b>
MODULE status_0100 OUTPUT.
SET PF-STATUS 'ALV'.
SELECT matnr ernam pstat mtart lvorm FROM mara
INTO CORRESPONDING FIELDS OF TABLE t_mara
WHERE matnr LIKE '100%'.
CREATE OBJECT custom_container
EXPORTING
container_name = 'CONTAINER'
.
CREATE OBJECT alvgrid
EXPORTING
i_parent = custom_container.
fieldcattab-col_pos = 1.
fieldcattab-checkbox = 'X'.
fieldcattab-edit = 'X'.
APPEND fieldcattab.
fieldcattab-col_pos = 2.
fieldcattab-fieldname = 'LVORM'.
fieldcattab-tabname = 'T_MARA'.
fieldcattab-edit = 'X'.
fieldcattab-no_out = 'X'.
APPEND fieldcattab.
CLEAR fieldcattab.
fieldcattab-col_pos = 3.
fieldcattab-fieldname = 'MATNR'.
fieldcattab-tabname = 'T_MARA'.
fieldcattab-coltext = 'Material no'.
fieldcattab-edit = ' '.
APPEND fieldcattab.
CLEAR fieldcattab.
fieldcattab-col_pos = 4.
fieldcattab-fieldname = 'ERNAM'.
fieldcattab-tabname = 'T_MARA'.
fieldcattab-coltext = 'User name'.
APPEND fieldcattab.
CLEAR fieldcattab.
fieldcattab-col_pos = 5.
fieldcattab-fieldname = 'PSTAT'.
fieldcattab-tabname = 'T_MARA'.
fieldcattab-coltext = 'Status'.
APPEND fieldcattab.
CLEAR fieldcattab.
fieldcattab-col_pos = 6.
fieldcattab-fieldname = 'MTART'.
fieldcattab-tabname = 'T_MARA'.
fieldcattab-coltext = 'Material type'.
fieldcattab-edit = 'X'.
fieldcattab-drdn_field = t_mara-MTART.
fieldcattab-outputlen = 5.
APPEND fieldcattab.
CLEAR fieldcattab.
<b>fieldcattab-col_pos = 7.
fieldcattab-fieldname = 'MTART'.
fieldcattab-edit = 'X'.
fieldcattab-drdn_field = 'DROP_DOWN_HANDLE'.
fieldcattab-outputlen = 5.
fieldcattab-checktable = T_MARA.
APPEND fieldcattab.</b>
gs_layout-grid_title = text-003.
gs_layout-no_toolbar = 'X'.
gs_layout-sel_mode = 'A'.
gs_layout-zebra = 'X'.
gs_layout-info_fname = 'C600'.
fcode = '&VCRYSTAL'.
APPEND fcode TO t_print.
CALL METHOD alvgrid->set_table_for_first_display
EXPORTING
I_BYPASSING_BUFFER =
I_BUFFER_ACTIVE =
I_CONSISTENCY_CHECK =
I_STRUCTURE_NAME =
IS_VARIANT =
I_SAVE =
I_DEFAULT = 'X'
is_layout = gs_layout
IS_PRINT =
IT_SPECIAL_GROUPS =
it_toolbar_excluding = t_print[]
IT_HYPERLINK =
IT_ALV_GRAPHICS =
CHANGING
it_outtab = t_mara[]
it_fieldcatalog = fieldcattab[]
IT_SORT =
IT_FILTER =
EXCEPTIONS
INVALID_PARAMETER_COMBINATION = 1
PROGRAM_ERROR = 2
TOO_MANY_LINES = 3
others = 4
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
SET HANDLER lcl_event_receiver=>handle_user_command
lcl_event_receiver=>handle_menu_button
lcl_event_receiver=>handle_toolbar FOR ALL INSTANCES.
*CALL METHOD alvgrid->set_toolbar_interactive.
ENDMODULE. " STATUS_0100 OUTPUT
i want to doo the change in highlighted part, want a drop down here in material filed.
how do this?
thanks in advance
chetan vishnoi
08-02-2006 9:57 AM
Hello,
Just add this form in your code
form DROP_DOWN_HANDLE.
data: lt_dropdown type lvc_t_drop,
ls_dropdown type lvc_s_drop.
loop at itab.
ls_dropdown-handle = sy-tabix.
ls_dropdown-value = itab-matnr.
append ls_dropdown to lt_dropdown.
endloop.
call method g_grid->set_drop_down_table
exporting it_drop_down = lt_dropdown.
endform.
Regards,
Naimesh
08-02-2006 8:07 AM
Hi Chetan,
U need to declare the data for drop down.
for ex.
data : drop_down_handle type int4.
then set your dropdown field editable and assign the fieldname
ex..
ls_fcat-edit = 'X'.
ls_fcat-drdn_field = 'DROP_DOWN_HANDLE'.
ls_fcat-outputlen = 5
Then define the drop drown pass it to alv
ex....
form< name u give>
data: lt_dropdown type lvc_t_drop,
ls_dropdown type lvc_s_drop.
ls_dropdown-handle = '1'.
ls_dropdown-value = 'car'.
append ls_dropdown to lt_dropdown.
ls_dropdown-handle = '2'.
ls_dropdown-value = 'fan'.
append ls_dropdown to lt_dropdown.
ls_dropdown-handle = '2'.
ls_dropdown-value = 'pan'.
append ls_dropdown to lt_dropdown.
ls_dropdown-handle = '2'.
ls_dropdown-value = 'can'.
append ls_dropdown to lt_dropdown.
call method g_grid->set_drop_down_table
exporting it_drop_down = lt_dropdown.
endform.
This is how we write the drop down.....
regards,
Deepti.
plz reward if found helpful..
08-02-2006 8:33 AM
hi deepti,
see my problem again and gave me solution i post my code also
thanks in advance
chetan vishnoi