SAPфорум.RU https://sapboard.ru/forum/ |
|
Выбор значений для поля в динамиском alv grid https://sapboard.ru/forum/viewtopic.php?f=13&t=69529 |
Страница 1 из 1 |
Автор: | evggen [ Ср, май 18 2011, 15:50 ] |
Заголовок сообщения: | Выбор значений для поля в динамиском alv grid |
Добрый день. Есть динамически формируемый редактируемый alv grid. Для некоторых полей нужно сделать возможность выбора значений из списка. Делаю это так: Code: form main_attr_set_grid_drdn using attr_id type z_head-attr_id changing ct_fcat type lvc_t_fcat. TYPES: begin of z_attr_type, atnam like cabn-atnam, atwtb like cawnt-atwtb, atwrt like cawn-atwrt, end of z_attr_type. field-symbols: <ls_outtab> type any, <ls_fcat> type lvc_s_fcat, <fs>. data: lt_drdn type lvc_t_drop, "#EC NEEDED ls_drdn type lvc_s_drop, "#EC NEEDED lt_dral type lvc_t_dral, "#EC NEEDED ls_dral type lvc_s_dral, "#EC NEEDED l_count type i. define mac_get_drdn. ls_drdn-handle = 1. ls_drdn-value = &1. append ls_drdn to lt_drdn. add 1 to l_count. ls_dral-handle = 1. ls_dral-value = &1. write l_count to ls_dral-int_value left-justified. append ls_dral to lt_dral. end-of-definition. loop at t_attr_val. mac_get_drdn t_attr_val-atwrt. endloop. call method g_grid->set_drop_down_table exporting it_drop_down_alias = lt_dral. read table ct_fcat assigning <ls_fcat> with key fieldname = attr_id. if sy-subrc eq 0. <ls_fcat>-drdn_field = 'HANDLE_DRDN'. <ls_fcat>-drdn_alias = 'X'. endif. loop at <dyn_table> assigning <ls_outtab>. ASSIGN COMPONENT 'HANDLE_DRDN' OF STRUCTURE <ls_outtab> TO <fs>. * <ls_outtab>-handle_drdn = 1. <fs> = 1. endloop. endform. Проблема в том, что значения в списке не отображаются. Табличка lt_dral на выходе непустая. Если делать тоже самое для alv grid, в котором все поля руками создаю, то список значений отображается нормально. С чем это может быть связано? |
Автор: | Besa [ Чт, май 19 2011, 07:44 ] |
Заголовок сообщения: | Re: Выбор значений для поля в динамиском alv grid |
По моему тут не хватает заполнения ls_fieldcat_obj-drdn_hndl. См примеры, никаких проблем быть не должно... BCALV_EDIT_06 Раскр. окно списка на уровне столбца BCALV_EDIT_07 Раскрыв. окно списка на уровне ячейки |
Автор: | evggen [ Пн, май 23 2011, 12:32 ] |
Заголовок сообщения: | Re: Выбор значений для поля в динамиском alv grid |
Besa написал: По моему тут не хватает заполнения ls_fieldcat_obj-drdn_hndl. Заполнение идет тут: Code: if sy-subrc eq 0. <ls_fcat>-drdn_field = 'HANDLE_DRDN'. <ls_fcat>-drdn_alias = 'X'. endif. Проблему так и не решил. Может быть есть еще какие-то особенности в случае, когда грид динамически формируется? |
Автор: | evggen [ Пн, май 23 2011, 14:25 ] |
Заголовок сообщения: | Re: Выбор значений для поля в динамиском alv grid |
разобрался |
Автор: | evggen [ Вт, май 24 2011, 07:17 ] |
Заголовок сообщения: | Re: Выбор значений для поля в динамиском alv grid |
Вопрос в эту же тему, сделал списки для ячеек. При обновлении данных в ячейках вместо выбранных значений подствляются цифры. Филд каталог заполняю так: Code: FORM CreateFieldNames USING f_name TYPE zozm_wf_obl_attr-attr_id
f_text TYPE zozm_wf_obl_attr-attr_name. ls_fcat-fieldname = f_name. ls_fcat-seltext = f_text. ls_fcat-coltext = f_text. ls_fcat-outputlen = 100. ls_fcat-no_zero = 'X'. ls_fcat-lowercase = 'X'. ls_fcat-checktable = '!'. * ls_fcat-no_out = 'X'. append ls_fcat to gt_fieldcat2. ENDFORM. |
Автор: | evggen [ Вт, май 24 2011, 08:19 ] |
Заголовок сообщения: | Re: Выбор значений для поля в динамиском alv grid |
Разобрался. не нужно было указывать Code: <ls_fcat>-drdn_alias = 'X'.
|
Автор: | Igor_Beruk [ Ср, июл 31 2019, 17:02 ] |
Заголовок сообщения: | Re: Выбор значений для поля в динамиском alv grid |
Подскажите,существует ли следующая возможность. Есть грид. Нажимаю кнопку какую-то и хочу ,чтобы после этого изменилось количество полей на экране. Сделал большую структуру-где есть поля все. Пытаюсь менять в mt_fieldcat no_out после нажатия кнопки,потом делаю refresh_alv() и...ничего..может кто подскажет в чем может быть проблема? |
Автор: | LAT [ Ср, июл 31 2019, 22:10 ] |
Заголовок сообщения: | Re: Выбор значений для поля в динамиском alv grid |
Что такое refresh_alv()? Code: grid->get_frontend_fieldcatalog( IMPORTING et_fieldcatalog = vt_catalog ).
* сокрытие колонок с использованием no_out = 'X' или даже tech = 'X' grid->set_frontend_fieldcatalog( vt_catalog ) DATA: stable TYPE lvc_s_stbl. stable-row = 'X'. stable-col = 'X'. vref_grid->refresh_table_display( i_soft_refresh = iflag_soft_refresh is_stable = stable ). |
Автор: | Igor_Beruk [ Чт, авг 01 2019, 09:17 ] |
Заголовок сообщения: | Re: Выбор значений для поля в динамиском alv grid |
Да,это работает,спасибо! |
Автор: | Igor_Beruk [ Чт, авг 01 2019, 10:09 ] |
Заголовок сообщения: | Re: Выбор значений для поля в динамиском alv grid |
Может подскажите метод тоже самое для кнопки на гриде,если я хочу сделать? |
Автор: | Igor_Beruk [ Чт, авг 01 2019, 14:42 ] |
Заголовок сообщения: | Re: Выбор значений для поля в динамиском alv grid |
Igor_Beruk написал(а): Может подскажите метод тоже самое для кнопки на гриде,если я хочу сделать? Спасибо.нашел сам |
Автор: | Besa [ Ср, авг 07 2019, 09:13 ] |
Заголовок сообщения: | Re: Выбор значений для поля в динамиском alv grid |
Igor_Beruk написал(а): Igor_Beruk написал(а): Может подскажите метод тоже самое для кнопки на гриде,если я хочу сделать? Спасибо.нашел сам Для других, событие грида - toolbar. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |