powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / FRM-41032
6 сообщений из 6, страница 1 из 1
FRM-41032
    #37182023
_Светка_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
При попытке запретить изменять значение checkbox
SET_ITEM_PROPERTY('blk1.mark_s', ENABLED, PROPERTY_FALSE);
выводится сообщение: "FRM-41032 - невозможно установить атрибут ENABLED текущего элемента blk1.mark_s".
как можно устранить проблему?
...
Рейтинг: 0 / 0
FRM-41032
    #37182040
spb_kostya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ENABLED - это активность или не авктивность, когда элемент не активен, в него нельзя заходить, поэтому надо выйти из элемента в другой элемент, и потом сделать его неактивным.

или повесить триггер WHEN-CHECKBOX-CHANGED и проверять возможность изменения значения. если нельзя - ругаться...
...
Рейтинг: 0 / 0
FRM-41032
    #37182056
_Светка_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я пытаюсь в триггере WHEN-CHECKBOX-CHANGED запретить изменение этого элемента по условию. Получаю ошибку. Причем если сделать принудительный переход на другой элемент, ошибка повторяется. Как мне запретить в него заходить?
...
Рейтинг: 0 / 0
FRM-41032
    #37182084
_Светка_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
попыталась сделать наоборот: сначала перейти в другой элемент, а потом запретить изменение этого. Но тогда получается забавная ситуация: изменение элемента запрещено, сообщение выдается, и элемент делается неактивным, но ДО ЭТОГО он меняет значение. Надо это где-то в другом триггере делать, наверное.
...
Рейтинг: 0 / 0
FRM-41032
    #37182107
spb_kostya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SET_ITEM_PROPERTY('blk1.mark_s', ENABLED, PROPERTY_FALSE);
это не есть запрещение изменения элемента. это вообще запрет входить в него.
запрет изменения элемента - UPDATE_ALLOWED, но его надо делать до входа в элемент. или в моменит входа (WHEN-NEW-ITEM-INSTANCE)


можно пойти ещё и другим путем
сделайте 2 триггера
WHEN-NEW-ITEM-INSTANCE

в нем: :global.check_value := :block_name.check_name;

потом WHEN-CHECKBOX-CHANGED

if to_number(to_char(sysdate,'SS')) < 30 THEN -- любое ваше условие
message('Менять нельзя!!');
:block_name.check_name :=:global.check_value;
END IF;


то есть при входе в элемент - копируйте значение в некоторую глобальную переменную, а при попытке измененя - возвращайте старое значение.
...
Рейтинг: 0 / 0
FRM-41032
    #37182110
_Светка_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо!
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / FRM-41032
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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