Текущее время: Вт, июл 22 2025, 02:37

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 17 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Webdynpro, компонент SALV_WD_TABLE, сделать редактируемый Dropdown
СообщениеДобавлено: Вт, ноя 17 2009, 11:07 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, дек 15 2008, 16:22
Сообщения: 72
Добрый день, коллеги.
Очень необходимо сделать в компоненте-таблицы Webdynpro ALV SALV_WD_TABLE
чтоб один из столбцов представлял из себя Dropdown доступный для редактирования.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Webdynpro, компонент SALV_WD_TABLE, сделать редактируемый Dropdown
СообщениеДобавлено: Вт, ноя 17 2009, 11:12 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, сен 23 2005, 11:11
Сообщения: 963
звучит подозрительно :)


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Webdynpro, компонент SALV_WD_TABLE, сделать редактируемый Dropdown
СообщениеДобавлено: Вт, ноя 17 2009, 12:18 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Ср, ноя 01 2006, 22:58
Сообщения: 794
Откуда: Заарбрюкен
Пол: Мужской
Возможно копать стоит начать отсюда...
http://wiki.sdn.sap.com/wiki/display/Sn ... nent+cells


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Webdynpro, компонент SALV_WD_TABLE, сделать редактируемый Dropdown
СообщениеДобавлено: Вт, ноя 17 2009, 12:29 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, дек 15 2008, 16:22
Сообщения: 72
Konstantin Anikeev написал:
Возможно копать стоит начать отсюда...
http://wiki.sdn.sap.com/wiki/display/Sn ... nent+cells

Не совсем то что требуется.
Т.к. Dropdown в этом примере нет.

Совсем не понимаю как устанавливать множество значений для Dropdown в SALV_WD_TABLE и как отслеживать событие изменения.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Webdynpro, компонент SALV_WD_TABLE, сделать редактируемый Dropdown
СообщениеДобавлено: Вт, ноя 17 2009, 13:03 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Ср, ноя 01 2006, 22:58
Сообщения: 794
Откуда: Заарбрюкен
Пол: Мужской
Я же неговорил, что там готовый ответ... Зато там есть интеграция CHECKBOX и IMAGE, я думаю, что по аналогии сделать будет несложно...
Code:
CREATE OBJECT lr_link.
        lr_link->set_text_fieldname( <fs_column>-id ).
        <fs_column>-r_column->set_cell_editor( lr_link ).


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Webdynpro, компонент SALV_WD_TABLE, сделать редактируемый Dropdown
СообщениеДобавлено: Вт, ноя 17 2009, 13:08 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, дек 15 2008, 16:22
Сообщения: 72
Konstantin Anikeev написал:
Я же неговорил, что там готовый ответ... Зато там есть интеграция CHECKBOX и IMAGE, я думаю, что по аналогии сделать будет несложно...
Code:
CREATE OBJECT lr_link.
        lr_link->set_text_fieldname( <fs_column>-id ).
        <fs_column>-r_column->set_cell_editor( lr_link ).

Больше всего не понимаю как для Dropdown передавать множество возможных значений.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Webdynpro, компонент SALV_WD_TABLE, сделать редактируемый Dropdown
СообщениеДобавлено: Вт, ноя 17 2009, 13:27 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Ср, ноя 01 2006, 22:58
Сообщения: 794
Откуда: Заарбрюкен
Пол: Мужской
Привязываете его не к аттрибуту, а к ноде (табличной) они автоматом будут подогнаны, если нода заполнена значениями...
Я вот другой косяк нашел... DropDown вроде как не редактируемый...


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Webdynpro, компонент SALV_WD_TABLE, сделать редактируемый Dropdown
СообщениеДобавлено: Вт, ноя 17 2009, 14:00 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, дек 15 2008, 16:22
Сообщения: 72
Konstantin Anikeev написал:
DropDown вроде как не редактируемый...

Такое бывает если весь ALV закрыт на редактирование, сначала нужно открыть.
Code:
lr_config        = lr_if_controller->get_model( ).
lr_config->if_salv_wd_table_settings~set_read_only( abap_false ).


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Webdynpro, компонент SALV_WD_TABLE, сделать редактируемый Dropdown
СообщениеДобавлено: Вт, ноя 17 2009, 14:30 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Ср, ноя 01 2006, 22:58
Сообщения: 794
Откуда: Заарбрюкен
Пол: Мужской
Я к тому, что новое зачение нельзя в него вписать... Только выбрать из списка...


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Webdynpro, компонент SALV_WD_TABLE, сделать редактируемый Dropdown
СообщениеДобавлено: Ср, ноя 18 2009, 02:27 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, июн 02 2009, 22:28
Сообщения: 228
Откуда: MOW
Пол: Мужской
Если я правильно понял и не нужно чего-то сверхординарного (типа и dropdown-список и еще свои значения можно вводить), то просто combobox с фиксированными значениями в гриде можно сделать примерно так, надеюсь по этой куче кода будет понятно, куда копать:

Code:
  DATA: lc_node_info     TYPE REF TO if_wd_context_node_info,
        lc_node          TYPE REF TO if_wd_context_node.


  lc_node = wd_context->get_child_node( name = ... ).
  lc_node_info = lr_node->get_node_info( ).
 
  ...

  DATA: lt_values TYPE TABLE OF wdr_context_attr_value
  FIELD-SYMBOLS: <fs_values>   TYPE wdr_context_attr_value.

  APPEND INITIAL LINE TO lt_values ASSIGNING <fs_values>.
  <fs_values>-value = '001'.
  <fs_values>-text = 'Text 1'.

  APPEND INITIAL LINE TO lt_values ASSIGNING <fs_values>.
  <fs_values>-value = '002'.
  <fs_values>-text = 'Text 2'. 

  DATA: l_column_settings          TYPE REF TO if_salv_wd_column_settings,
        lr_dropdown_key TYPE REF TO cl_salv_wd_uie_dropdown_by_key.

  ...
  l_model = l_ref_interfacecontroller->get_model( ).
  l_column_settings ?= l_model.
  lt_columns = l_column_settings->get_columns( ).
 
  LOOP AT lt_colums ASSIGNING <fs_col>.
      ...
      WHEN 'DRDOWN_FIELD'.
        lc_node_info->set_attribute_value_set( name = <fs_col>-id value_set =  lt_values ).
        CREATE OBJECT lr_dropdown_key
          EXPORTING
            selected_key_fieldname = <fs_col>-id.
        <fs_col>-r_column->set_cell_editor( lr_dropdown_key  ).
    ENDCASE.
  endloop.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Webdynpro, компонент SALV_WD_TABLE, сделать редактируемый Dropdown
СообщениеДобавлено: Ср, ноя 18 2009, 10:01 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, дек 15 2008, 16:22
Сообщения: 72
raaleksandr


Спасибо за развернутый ответ.
Еще нужно как то отслеживать событие смены выбранного элемента Dropdown.
У CL_SALV_WD_UIE_DROPDOWN_BY_KEY есть событие IF_SALV_WD_CONFIG~CHANGED
но не понятно, как на него подписаться можно.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Webdynpro, компонент SALV_WD_TABLE, сделать редактируемый Dropdown
СообщениеДобавлено: Чт, ноя 19 2009, 10:17 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, июн 02 2009, 22:28
Сообщения: 228
Откуда: MOW
Пол: Мужской
К сожалению не успел вчера вечером сделать пример.
Но может стоит покопать в эту сторону:

Dynamically Registering an Event Handler to an Event
http://help.sap.com/erp2005_ehp_04/help ... ameset.htm


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Webdynpro, компонент SALV_WD_TABLE, сделать редактируемый Dropdown
СообщениеДобавлено: Чт, ноя 19 2009, 11:52 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Ср, ноя 01 2006, 22:58
Сообщения: 794
Откуда: Заарбрюкен
Пол: Мужской
Можно и вот тут глянуть...
Generating Self-Defined Functions for ALV in Web Dynpro for ABAP


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Webdynpro, компонент SALV_WD_TABLE, сделать редактируемый Dropdown  Тема решена
СообщениеДобавлено: Пт, ноя 20 2009, 01:55 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, июн 02 2009, 22:28
Сообщения: 228
Откуда: MOW
Пол: Мужской
Все оказалось гораздо проще - при изменении значения в DropDown генерится событие ON_DATA_CHECK.
На всякий случай пара слов как это событие ловить:
1. Добавить событие во View для грида, событие ON_DATA_CHECK
2. В коде инициализации грида вызвать:
Code:
data: l_model                     TYPE REF TO cl_salv_wd_config_table,
      ref_interfacecontroller     TYPE REF TO iwci_salv_wd_table.

ref_interfacecontroller = wd_this->wd_cpifc_alv( ).   " Здесь указать правильный ALV, использованный во View
l_model = l_ref_interfacecontroller->get_model( ).

l_model->if_salv_wd_table_settings~set_data_check(
    if_salv_wd_c_table_settings=>data_check_on_cell_event ).


когда поймаете событие - смотрите r_param->t_modified_cells - там все будет


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Webdynpro, компонент SALV_WD_TABLE, сделать редактируемый Dropdown
СообщениеДобавлено: Пт, ноя 20 2009, 12:12 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, дек 15 2008, 16:22
Сообщения: 72
raaleksandr
Сделал все согласно вашему посту. Работает!Я ИДИЁТ, УБЕЙТЕ МИНЯ КТО-НИБУДЬ!


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 17 ]  На страницу 1, 2  След.

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


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

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


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

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