Текущее время: Пт, июн 07 2024, 02:18

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




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: SRM7.1: Обработка событий
СообщениеДобавлено: Чт, июн 09 2011, 08:07 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пн, фев 18 2008, 11:25
Сообщения: 100
Через конфигурацию WDCC_FPM_OIF_RFQ_PR_PU компонента FPM_OIF_COMPONENT, добавил кнопку Print с выпадающим списком. Для каждой строки прописываю событие, по которому необходимо выводить разные формы в RFx. Обработку осуществляю в post-расширении action-метода вьюхи CNR_VIEW - ONACTIONBUTTON_PRESSED. Этот то момент мне и не нравится. К тому же в нем события имеют названия: PRINT_ITEM_1, PRINT_ITEM_2.... не смотря на то, что я их именовал совершенно иначе, что неменуемо приведет к проблема, при необходимости добавить новую форму где-нибудь в середине списка.
Вопрос: как и где правильно обрабатывать пользовательские события возникающие при нажатии кнопок, определенных в конфигурациях компонента FPM_OIF_COMPONENT.
Спасибо!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: SRM7.1: Обработка событий
СообщениеДобавлено: Чт, июн 23 2011, 06:46 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 03 2010, 11:15
Сообщения: 78
мы делали следующим образом. создали свой компонент веб-экрана, с интерфейсами /SAPSRM/WDI_L_FCP_TE, /SAPSRM/WDI_L_FPC_CA_DTLS, /SAPSRM/WDI_L_FPC_GENERAL, IF_FPM_FLOORPLAN_COMP, IF_FPM_UI_BUILDING_BLOCK. его же и использовали при создании UIBB, который разместили на всех вкладках (чтобы отлавливать нажатие кнопок на всех вкладках). в CC есть метод PROCESS_EVENT. вот в нем и отлавливаем нажатия кнопок
Code:
CASE io_event->mv_event_id.
WHEN 'ZBUTTON_1'.
...
WHEN 'ZBUTTON_N'.
ENDCASE.

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


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: SRM7.1: Обработка событий  Тема решена
СообщениеДобавлено: Пт, июн 24 2011, 16:34 
Гуру-модератор
Гуру-модератор
Аватара пользователя

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

Ищете в вашей конфигурации управляющий компонент.
Изображение

Изображение

Идете в его конфигурацию и ищете класс-обработчик.
Изображение

В вашем случае /SAPSRM/CL_FPM_OVRIDE_OIF_RFQ - он обрабатывает только общие события FPM (сменить вкладку, открыть,закрыть и т.д.)
Идете в класс. и обращаете внимание на метод INIT_OBJECTS - который создает экземпляр специального обработчика (на события бизнес объекта). У меня /SAPSRM/CL_CH_WD_IDEN_MAP_RFQ. А у него есть замечательный метод /SAPSRM/IF_CLL_IDENT_MAPPER~HANDLE_EVENT.

Соответсвенно классы наследуются, методы переобъявляются ну и все прелести ООП.

А можете глянуть в сторону BADI /SAPSRM/IF_EX_BDI_PDO_ACT_PROC. Правда я не уверен, что он вызывается.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: SRM7.1: Обработка событий
СообщениеДобавлено: Пн, июл 04 2011, 15:03 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пн, фев 18 2008, 11:25
Сообщения: 100
Почитал гайд по FPM, да коллега подсказал, в итоге сделали вывод такой.
Для обработки событий есть куча методов в интерфейсах IF_FPM_UI_BUILDING_BLOCK, IF_FPM_OIF_CONF_EXIT для работы с событиями. Свой компонент не обязательно создавать, а можно эти интерфесй добавлять в существующие САПовские компоненты и там их имплементировать. Мне показался этот способ самым корректным. Добавлил в компонент /SAPSRM/WDC_FPM_OIF_CONF.
Таким образом получается объеденил 2 ваших ответа.
Спасибо ВАМ!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: SRM7.1: Обработка событий
СообщениеДобавлено: Пт, дек 02 2011, 17:36 
Специалист
Специалист

Зарегистрирован:
Пн, фев 11 2008, 16:17
Сообщения: 122
Пол: Мужской
Добрый день.

Столкнулся с аналогичной проблемой.
Несмотря на достаточно подробное обсуждение в данной теме, разобраться не смог, опыта работы с FPM нет :(

Мне так же неоходимо добавить кнопку на один из экранов стандартного WDA приложения HCM_ECM_PLANNING_UI_GAF.
Собственно, кнопку я добавил через стандартный же конфигуратор ECM_AC_PLANNING_UI_GAF.
Там же присвоил ей ИД FPM события.

Не могу понять, где это событие можно поймать теперь и куда добавлять его обработчик?
Возможно ли это сделать так же через конфигуратор и если да, то как?

Очень надеюсь на Вашу помощь.
Заранее благодарен.

_________________
С Уважением, Danila


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: SRM7.1: Обработка событий
СообщениеДобавлено: Пн, дек 05 2011, 19:14 
Гуру-модератор
Гуру-модератор
Аватара пользователя

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


Это что за модуль? В SRM такого нет.


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

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


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

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


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

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