Текущее время: Ср, июл 23 2025, 09:53

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Запрет на редактирование отдельных ячеек в REUSE_ALV_GRID_DISPLAY
СообщениеДобавлено: Пн, фев 11 2008, 11:18 
Специалист
Специалист

Зарегистрирован:
Вт, мар 07 2006, 15:56
Сообщения: 137
Пол: Мужской
Добрый день.
Можно ли в REUSE_ALV_GRID_DISPLAY закрыть некоторые ячейки на редактирование? :?:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 11 2008, 11:21 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Ср, ноя 03 2004, 14:51
Сообщения: 1912
Откуда: КраснАдар
Пол: Мужской
В REUSE_ALV_GRID_DISPLAY_LVC точно можно, заполнение поля STYLEFNAME в филдкаталоге поспособствует.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 11 2008, 11:41 
Специалист
Специалист

Зарегистрирован:
Вт, мар 07 2006, 15:56
Сообщения: 137
Пол: Мужской
John Doe написал:
В REUSE_ALV_GRID_DISPLAY_LVC точно можно, заполнение поля STYLEFNAME в филдкаталоге поспособствует.

Не очень хочется переписывать на REUSE_ALV_GRID_DISPLAY_LVC. Сроки поджимают. Через REUSE_ALV_GRID_DISPLAY ника нельзя :?:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 11 2008, 11:52 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Ср, ноя 03 2004, 14:51
Сообщения: 1912
Откуда: КраснАдар
Пол: Мужской
Нет вроде. Аналогичная тема.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запрет на редактирование отдельных ячеек в REUSE_ALV_GRID_DISPLAY
СообщениеДобавлено: Вт, май 15 2012, 16:23 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, янв 14 2009, 09:24
Сообщения: 69
Откуда: Санкт-Петербург
Пол: Женский
luka_rus написал:
Добрый день.
Можно ли в REUSE_ALV_GRID_DISPLAY закрыть некоторые ячейки на редактирование? :?:


Можно. Я сделала так:
Code:
DATA: gt_fieldcat TYPE slis_t_fieldcat_alv,
      gs_fieldcat LIKE LINE OF gt_fieldcat,
      gt_events   TYPE slis_t_event,
      gs_events   LIKE LINE OF gt_events,
      gs_layout   TYPE slis_layout_alv,
      gs_grid_settings TYPE lvc_s_glay.

...
  gs_events-name = 'END_OF_PAGE'.
  gs_events-form = 'END_OF_PAGE'.
  APPEND gs_events TO gt_events.
...
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      i_callback_program       = gv_repid
      i_callback_pf_status_set = gv_status
      i_grid_settings          = gs_grid_settings
      is_layout                = gs_layout
      it_fieldcat              = gt_fieldcat[]
      it_events                = gt_events[]
    TABLES
      t_outtab                 = gt_zcheck[].
...
FORM end_of_page.

  DATA: ref1 TYPE REF TO cl_gui_alv_grid,
        layout TYPE lvc_s_layo.
       
  CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
    IMPORTING
      e_grid = ref1.

  ref1->get_frontend_layout(
    IMPORTING
      es_layout = layout
         ).

  IF layout-stylefname IS INITIAL.

    layout-stylefname = 'CELLSTYLE'.
    ref1->set_frontend_layout( is_layout = layout ).

    PERFORM set_cells_style.

    ref1->refresh_table_display( ).

  ENDIF.

ENDFORM.                    "end_of_page
...
FORM set_cells_style .

  DATA: ls_style TYPE lvc_s_styl,
        lt_style TYPE TABLE OF lvc_s_styl.

  ls_style-fieldname = 'STATUS'.
  APPEND ls_style TO lt_style.
  ls_style-fieldname = 'SUM_PART'.
  APPEND ls_style TO lt_style.
  ls_style-fieldname = 'SH_PART'.
  APPEND ls_style TO lt_style.
  ls_style-fieldname = 'WAERS'.
  APPEND ls_style TO lt_style.
  ls_style-fieldname = 'TEXT'.
  APPEND ls_style TO lt_style.

  SORT lt_style BY fieldname. "ВАЖНО!!!

  CLEAR ls_style.

  LOOP AT gt_zcheck.

    CLEAR gt_zcheck-cellstyle[].

    IF gt_zcheck-status IS INITIAL.
      ls_style-style = cl_gui_alv_grid=>mc_style_enabled. " Включено редактирование
    ELSE.
      ls_style-style = cl_gui_alv_grid=>mc_style_disabled. " Выключено редактирование
    ENDIF.

    MODIFY lt_style FROM ls_style TRANSPORTING style WHERE style <> ls_style-style.
    gt_zcheck-cellstyle[] = lt_style[].

    MODIFY gt_zcheck.

  ENDLOOP.

ENDFORM.                    " SET_CELLS_STYLE

...
FORM user_command USING ls_ucomm    LIKE sy-ucomm
                        ls_selfield TYPE slis_selfield.
...
  ls_selfield-refresh     = 'X'.
  ls_selfield-col_stable  = 'X'.
  ls_selfield-row_stable  = 'X'.
...
  PERFORM set_cells_style.

ENDFORM.                    "user_command


_________________
Пессимисты, глядя на стакан, содержащий 50% воды и 50% воздуха, говорят, что он наполовину пуст.
Оптимисты, наоборот, считают, что наполовину полон.
А разработчики понимают, что просто сам стакан в два раза больше, чем должен быть.

(c) Боб Льюис


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB