Code:
loop at gt_outtab assigning <fs_outtab>.
clear: <fs_outtab>-celltab, lt_alv_style_list.
loop at gt_fieldcat[] assigning <fs_fieldcat>.
ls_alv_cell_style-fieldname = <fs_fieldcat>-fieldname.
if sy-uname = <fs_outtab>-whocreate.
ls_alv_cell_style-style = cl_gui_alv_grid=>mc_style_enabled.
else.
ls_alv_cell_style-style = cl_gui_alv_grid=>mc_style_disabled.
endif.
[s] if <fs_outtab>-fieldname = id.
ls_alv_cell_style-style = cl_gui_alv_grid=>mc_style_disabled.
endif.[/s]
insert ls_alv_cell_style into table lt_alv_style_list.
endloop.
append lines of lt_alv_style_list to <fs_outtab>-celltab.
endloop.
все заполняется, все работает.
только нужно исключить некоторые поля, чтобы закрыть редактирование навсегда.
Code:
if <fs_outtab>-fieldname = id.
ls_alv_cell_style-style = cl_gui_alv_grid=>mc_style_disabled.
endif.
здесь ругается sap
Цитата:
The data object <fs_outtab> does not have a component called "FIELDNAME
я бы тут через or перечислил все поля, но что-то не так.
пробовал через:
Code:
case ls_alv_cell_style-fieldname.
when 'ID'.
ls_alv_cell_style-style = cl_gui_alv_grid=>mc_style_enabled.
when 'DATECREATE'.
ls_alv_cell_style-style = cl_gui_alv_grid=>mc_style_enabled.
when 'WHOCREATE'.
ls_alv_cell_style-style = cl_gui_alv_grid=>mc_style_enabled.
when 'DATECHANGE'.
ls_alv_cell_style-style = cl_gui_alv_grid=>mc_style_enabled.
when 'WHOTECHANGE'.
ls_alv_cell_style-style = cl_gui_alv_grid=>mc_style_enabled.
when 'PODRAZD'.
ls_alv_cell_style-style = cl_gui_alv_grid=>mc_style_enabled.
when 'DEPART'.
ls_alv_cell_style-style = cl_gui_alv_grid=>mc_style_enabled.
endcase.
но и здесь не сработало.