Oracle APEX - изменение состояния сеанса элементов, которые являются столбцами базы данных - PullRequest
0 голосов
/ 06 марта 2020

У меня есть форма DML, где большинство полей являются столбцами базы данных. Одно из этих полей - Пользователь, является необязательным в базе данных и является элементом отображения только на странице. На странице также есть элемент управления переключателем, и когда для него установлено значение «Да», элемент P4_USER заполняется текущим именем пользователя, а при переключении на «Нет» поле должно быть очищено.

Я установил динамическое действие c при смене переключателя, чтобы установить значение элемента P4_USER и показать или скрыть его соответствующим образом, и оно работает нормально. Но когда я отправляю форму, я получаю сообщение об ошибке:

Session state protection violation: This may be caused by manual alteration of protected page item P4_USER. If you are unsure what caused this error, please contact the application administrator for assistance.

Я хотел установить атрибут Value Protected на No, но этот атрибут доступен только для скрытых полей, мое это Display Only. Есть ли обходные пути?

Ответы [ 2 ]

0 голосов
/ 06 марта 2020

Элемент защищен, если установлен флажок «Отправить на страницу отправки»

enter image description here

, но вы хотите отправить данные элемента, я рекомендую используя два элемента, один из которых отображается только для отображения данных, а другой - как скрытый элемент для отправки данных

0 голосов
/ 06 марта 2020

Вам необходимо изменить атрибут Защита состояния сеанса для элемента на «Неограниченный». Это в разделе «Безопасность» в атрибутах предмета.

...