powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Set_Item_Instance_Property не работает
5 сообщений из 5, страница 1 из 1
Set_Item_Instance_Property не работает
    #37197154
_eldar_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет всем.

Есть LOV и поле TEXT_ITEM на многострочном блоке. Мне необходимо в зависимости от выбранного значения из LOV-а установить свойство UPDATE_ALLOWED в PROPERTY_FALSE для поля TEXT_ITEM в конкретной строке.
Попробовал создать триггер KEY_LISTVAL на LOV и вызвать в нем Set_Item_Instance_Property.
Не могу понять почему Set_Item_Instance_Property не работает. Точнее процедура работает, т.е. свойство устанавливается (проверил отладочным сообщением), но на форме поле TEXT_ITEM по прежнему можно изменять (и не меняется цвет поля, в моем случае на серый). Только после сохранения строки поле TEXT_ITEM блокируется.

Модератор: Тема перенесена из форума "Oracle".
...
Рейтинг: 0 / 0
Set_Item_Instance_Property не работает
    #37203059
spb_kostya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
странно.

все работает именно так как вы и хотите

создал блок BLK, в нем два поля. LOV_ITEM и TEXT_ITEM
для LOV_ITEM определён LOV и привязан к этому полю.
далее на поле LOV_ITEM создаю триггер KEY_LISTVAL с таким содержимым:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
list_values;
IF :blk.lov_item =  1  THEN
	SET_ITEM_INSTANCE_PROPERTY('BLK.TEXT_ITEM',CURRENT_RECORD,UPDATE_ALLOWED,PROPERTY_FALSE);
ELSE
	SET_ITEM_INSTANCE_PROPERTY('BLK.TEXT_ITEM',CURRENT_RECORD,UPDATE_ALLOWED,PROPERTY_TRUE);
END IF;


как только устанавливаю значение 1, так запрещается ввод в другое поле.

правда это работает только после F9, в общем случае надо создавать триггер POST-TEXT-ITEM
и там уже писать это:
Код: plaintext
1.
2.
3.
4.
5.
6.
IF :blk.lov_item =  1  THEN
	SET_ITEM_INSTANCE_PROPERTY('BLK.TEXT_ITEM',CURRENT_RECORD,UPDATE_ALLOWED,PROPERTY_FALSE);
ELSE
	SET_ITEM_INSTANCE_PROPERTY('BLK.TEXT_ITEM',CURRENT_RECORD,UPDATE_ALLOWED,PROPERTY_TRUE);
END IF;

...
Рейтинг: 0 / 0
Set_Item_Instance_Property не работает
    #37203763
_eldar_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
spb_kostya,

Спасибо за ответ.
Хочу спросить в какой версии формсов ты это делал?
Какое событие у тебя происходит после нажатия клавиши F9
...
Рейтинг: 0 / 0
Set_Item_Instance_Property не работает
    #37203766
_eldar_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
spb_kostya,

И блок у тебя какой? многострочный?
...
Рейтинг: 0 / 0
Set_Item_Instance_Property не работает
    #37203945
spb_kostya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
шестые формсы
блок многострочный и запрет редактирования распространяется только на одну запись
по F9 вызыается стандартная функция LOV
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Set_Item_Instance_Property не работает
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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