SAPфорум.RU https://www.sapboard.ru/forum/ |
|
Редактируемые ячейки в cl_salv_table https://www.sapboard.ru/forum/viewtopic.php?f=13&t=96528 |
Страница 1 из 1 |
Автор: | boreich [ Ср, июн 20 2018, 15:51 ] |
Заголовок сообщения: | Редактируемые ячейки в cl_salv_table |
Добрый день. Возник следующий вопрос. Есть разработка, в которой отчёт выводится на экран конструкцией вида: Code: CALL METHOD cl_salv_table=>factory EXPORTING list_display = if_salv_c_bool_sap=>false r_container = lo_cont container_name = 'DOCK_CONT' IMPORTING r_salv_table = lo_alv CHANGING t_table = me->t_data31. Кто-нибудь сталкивался, можно ли задать конкретную ячейку доступной к редактированию (нужны именно диапазоны ячеек - не строки, не столбцы), если отчёт выведен через cl_salv_table=>factory? Я знаю, что существует cl_gui_alv_grid=>mc_style_enabled, который работает для варианта через set_table_for_first_display. Но, к сожалению, не знаю, куда его подавать в случае, если работаем с cl_salv_table (и есть ли вообще такая возможность). Попробовал сделать так - получить филдкаталог, исправить его и установить обратно. Не сработало. Вот часть кода: Code: ..... lo_columns = lo_alv->get_columns( ). DATA: rt_fcat TYPE lvc_t_fcat, wa_fcat TYPE lvc_s_fcat. rt_fcat = cl_salv_controller_metadata=>get_lvc_fieldcatalog( r_columns = lo_columns r_aggregations = lo_alv->get_aggregations( ) ). LOOP AT rt_fcat INTO wa_fcat. IF wa_fcat-fieldname+0(1) EQ 'D' AND strlen( wa_fcat-fieldname ) EQ 3. wa_fcat-edit = 'X'. MODIFY rt_fcat FROM wa_fcat. ENDIF. ENDLOOP. cl_salv_controller_metadata=>set_lvc_fieldcatalog( t_fieldcatalog = rt_fcat r_columns = lo_columns r_aggregations = lo_alv->get_aggregations( ) ). ....... lo_columns->set_optimize( ). lo_alv->display( ). Всё компилится и в отладке видно, что rt_fcat-edit для нужных полей заполнен крестиком, однако отчёт всё равно readonly полностью. |
Автор: | ghost [ Ср, июн 20 2018, 16:12 ] |
Заголовок сообщения: | Re: Редактируемые ячейки в cl_salv_table |
SALV Editable |
Автор: | boreich [ Чт, июн 21 2018, 08:42 ] |
Заголовок сообщения: | Re: Редактируемые ячейки в cl_salv_table |
ghost написал: Спасибо за ссылку. Ранее она мне уже попадалась, но я не очень внимательно вчитался в статью, потому что, на первый взгляд, она не решала мою проблему (сделать редактируемой конкретную ячейку из таблицы). Сейчас вчитался и убедился, что не решает. Вы подразумеваете, что такой возможности в САП не существует? |
Автор: | Rizor [ Чт, июн 21 2018, 10:55 ] |
Заголовок сообщения: | Re: Редактируемые ячейки в cl_salv_table |
boreich написал(а): Вы подразумеваете, что такой возможности в САП не существует? "Официально" SALV - не редактируемый. Всё что описано в статьях - это обходные пути. Может быть легче будет переписать на cl_gui_alv_grid, если ALV не сложный? Ибо хотелки пользователей имеют свойство расти.. |
Автор: | boreich [ Чт, июн 21 2018, 11:02 ] |
Заголовок сообщения: | Re: Редактируемые ячейки в cl_salv_table |
Rizor написал(а): boreich написал(а): Вы подразумеваете, что такой возможности в САП не существует? "Официально" SALV - не редактируемый. Всё что описано в статьях - это обходные пути. Может быть легче будет переписать на cl_gui_alv_grid, если ALV не сложный? Ибо хотелки пользователей имеют свойство расти.. Да, alv довольно замороченный, но, скорее всего, это действительно сэкономит времени в будущем. Спасибо. |
Автор: | Besa [ Чт, июн 21 2018, 14:23 ] |
Заголовок сообщения: | Re: Редактируемые ячейки в cl_salv_table |
По ситуации(например если одно поле) - можно сделать ввод данных через кнопку или линку. Ну например нажали на ячейку, появилось окошко для ввода данных, или по кнопке с тулбара. Можно вывести диалог редактирования записи в отдельное окно в целом. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |