Текущее время: Вт, июн 04 2024, 01:02

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Редактируемые ячейки грида
СообщениеДобавлено: Вт, фев 14 2017, 13:44 
Начинающий
Начинающий

Зарегистрирован:
Пт, фев 10 2017, 09:33
Сообщения: 13
Добрый день.
У меня такая проблема. На экране есть alv grid. пользователь выбирает заявку и видит в гриде информацию. Если он переходит в режим редактирования мне нужно открыть определенные ячейки на редактирование.

грид создается в пбо экрана и в филд каталоге поля открыты для редактирования.

Code:
gs_layout-stylefname = 'CELLSTYLES'.
      call method g_grid_300->set_table_for_first_display
        exporting
          i_structure_name = gr_structure
          is_layout        = gs_layout
          is_variant       = g_variant
          i_save           = 'A'
        changing
          it_outtab        = gt_outtab_300
          it_fieldcatalog  = lt_fcat.


потом когда переходят в режим редактирования при определенных условиях хочу запретить редактирование некоторых ячеек

в лоопе по таблице

Code:
ls_style-fieldname = 'ABLAD'.
        ls_style-style = cl_gui_alv_grid=>mc_style_disabled. "
        insert ls_style into TABLE <ls_outtab_300>-cellstyles.


после лупа

Code:
    g_grid_300->refresh_table_display( ).
    g_grid_300->set_ready_for_input( 1 ).


поле с табилцей стилей заполняеться нормально, но ячейки доступны для ввода.
Не понимаю в чем проблема.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Редактируемые ячейки грида
СообщениеДобавлено: Вт, фев 14 2017, 16:58 
Начинающий
Начинающий

Зарегистрирован:
Пт, фев 10 2017, 09:33
Сообщения: 13
Если я заполняю таблицу включая поле стилей и делаю set_table_for_first_display, то ячейки становятся не редактируемыми и все нормально.
А вот если сделал set_table_for_first_display, потом поменял таблицу стилей и сделал refresh_table_display то ячейки так и остаются доступными для редактирования.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Редактируемые ячейки грида
СообщениеДобавлено: Ср, фев 15 2017, 11:03 
Специалист
Специалист

Зарегистрирован:
Чт, дек 16 2010, 15:23
Сообщения: 131
Откуда: Набережные Челны
Пол: Мужской
Таблицу стилей вы один раз заполняете или несколько раз? Если несколько, вы чистите таблицу стилей от старых значений?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Редактируемые ячейки грида
СообщениеДобавлено: Ср, фев 15 2017, 12:05 
Специалист
Специалист

Зарегистрирован:
Пн, июл 11 2011, 10:50
Сообщения: 197
Может как-то по другому делать :)

открывать только те ячейки, которые будут редактировать пользователи, остальные оставлять закрытыми

смотрите методы SET_READY_FOR_INPUT и REGISTER_EDIT_EVENT


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Редактируемые ячейки грида
СообщениеДобавлено: Ср, фев 15 2017, 12:25 
Специалист
Специалист

Зарегистрирован:
Чт, мар 25 2010, 09:02
Сообщения: 207
У меня работает, отличия в том что если грид уже в режиме редактирования то я повторно не вызываю

Code:
    call method mo_grid->set_ready_for_input
      exporting
        i_ready_for_input = 1.

Но, рефреш грида делаю так:
Code:
    data: ls_stable type lvc_s_stbl.
    ls_stable-row = abap_true.
    ls_stable-col = abap_true.


    mo_grid->refresh_table_display(
       exporting
         is_stable      = ls_stable
       exceptions
         finished       = 1
         others         = 2
           ).


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Редактируемые ячейки грида
СообщениеДобавлено: Чт, фев 16 2017, 04:08 
Специалист
Специалист

Зарегистрирован:
Вт, июн 10 2014, 09:41
Сообщения: 179
simatik написал(а):
Code:
ls_style-fieldname = 'ABLAD'.
        ls_style-style = cl_gui_alv_grid=>mc_style_disabled. "
        insert ls_style into TABLE <ls_outtab_300>-cellstyles.


Может быть, в <ls_outtab_300>-cellstyles уже есть запись с fieldname = 'ABLAD' и insert возвращает sy-subrc <> 0?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Редактируемые ячейки грида
СообщениеДобавлено: Чт, фев 16 2017, 17:04 
Начинающий
Начинающий

Зарегистрирован:
Пт, фев 10 2017, 09:33
Сообщения: 13
AFH, спасибо большое, так работает.

Можно закрывать тему.


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

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


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

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


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

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