powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / OEBS персонализация формы и when-button-pressed
7 сообщений из 7, страница 1 из 1
OEBS персонализация формы и when-button-pressed
    #37718496
Irhen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Долго гуглил, читал доки...

Правильно ли я понимаю, что персонализацией невозможно отследить нажатие кнопки на форме?

Или возможны варианты?

Условием задачи предполагается, что саму форму изменять нельзя.
Форма стандартная, изменять ее не хотелось бы.
Необходимо по нажатию кнопки на форме выполнить проверку. Если результат отрицательный - не выполнять действие, назначенное кнопке.
Спасибо
...
Рейтинг: 0 / 0
OEBS персонализация формы и when-button-pressed
    #37718636
Irhen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
OEBS персонализация формы и when-button-pressed
    #37718751
Тупой Пух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Irhen,

По ссылке методика внятно описана: через "Справка->Диагностика->Пользовательский код->Пользовательские события" включаешь отображение перехватываемых событий. Далее выполняешь действия на форме, и, если какое-то из событий подходит по твоей логике для выполнения проверки - вешаешь на это событие индивидуализацию. Не подходит ни одно - значит не судьба.
...
Рейтинг: 0 / 0
OEBS персонализация формы и when-button-pressed
    #37719374
va_kochnev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Irhen,
Иногда могут помочь следующие приемы:
1. Если по нажатию на кнопку происходит переход в другое окно. Например, в форме ввода заказов на приобретение по нажатию кнопки "Утвердить".
В этом случае можно повесить персонализацию на событие входа в данное окно(WHEN-NEW-ITEM-INSTANCE, WHEN-NEW-BLOCK-INSTANCE и т.п.). При попытке утверждения заказа на приобретение с помощью персонализации выполнял дополнительную проверку и в случае необходимости отключал кнопку "ОК" в окне утверждения, чтобы пользователь не смог продолжить утверждение заказа.

2. С помощью персонализации кнопка, на которую надо повесить дополнительную проверку, делается неактивной. Зато в меню "Сервис" или "Действия" добавляется новый пункт меню. В нем выполняется доп.проверка и запускается процедура, которая указана в триггере WHEN-BUTTON-PRESSED отключенной кнопки.
Для пользователя, конечно, инструкция работы с формой меняется, но иногда можно пойти на это, если другие способы не помогают.
...
Рейтинг: 0 / 0
OEBS персонализация формы и when-button-pressed
    #37719675
Irhen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
va_kochnev,

Я как раз склоняюсь к 2-му варианту - с пунктом меню и отключением кнопки.
1-й пункт не подходит, поскольку по нажатию кнопки инициируются те же события, что и при открытии кнопки. То есть однозначно определить, что это имено нажатие кнопки не представляется возможным.

Спасибо всем.
...
Рейтинг: 0 / 0
OEBS персонализация формы и when-button-pressed
    #37720250
crazy_hands
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Irhen,

Еще есть кастомизация т.е. custom.pll. Справка->Диагностика->Пользовательский код->Пользовательские события и если есть там эта кнопка, то можно в custom.pll подвесить под нее код.

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
procedure event(event_name varchar2) is
    form_name      varchar2(30) := name_in('system.current_form'); 
    block_name     varchar2(30) := name_in('system.cursor_block'); 
If(event_name='WHEN-VALIDATE-RECORD') Then
  		If(form_name='POXBWVRP') Then
  			If(block_name='NEW_DOCUMENT' And name_in('action.document_type')='RELEASE') Then
                                --Нажатие на кнопку
  				If(name_in('system.cursor_item')='NEW_DOCUMENT.OK') Then
...
Рейтинг: 0 / 0
OEBS персонализация формы и when-button-pressed
    #37720312
Irhen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
crazy_hands,
спасибо
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / OEBS персонализация формы и when-button-pressed
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]