Текущее время: Чт, мар 28 2024, 19:58

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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