События нажатия кнопки с динамическими действиями в Oracle Apex - PullRequest
0 голосов
/ 27 июня 2019

Я создал кнопку «Редактировать» со связанным динамическим действием. В динамическом действии установите его на событие Click кнопки Edit. Я создал реальное действие, ссылаясь на исполняемый код JavaScript. А потом обновление области.

В коде JavaScript я хотел включить элементы, которые только для чтения, нажав кнопку редактирования.

APEX_UTIL.PUBLIC_CHECK_AUTHORIZATION('ADMIN')

Это была проверка, которую я сделал в коде JavaScript. Таким образом, я включил режим редактирования для региона, в который я подаю заявку. АДМИН - это роль.

Как сделать нажатие кнопки, чтобы элементы, связанные с областью, которые доступны только для чтения, при нажатии отображались в редактируемом виде?

Ответы [ 2 ]

1 голос
/ 27 июня 2019

По-моему, вы заново изобретаете колесо.

ОК, есть роль ADMIN (возможно, и некоторые другие роли). Если вы знаете, какой пользователь (обозначенный :APP_USER) имеет какую роль, используйте

  • условие на стороне сервера (чтобы решить, следует ли отображать (или обрабатывать) определенный компонент страницы (элементы, кнопки, ...)
  • свойство только для чтения (чтобы решить, сможет ли пользователь изменять значение или нет)
  • схема авторизации (в разделе «Безопасность»)

Итак, вам не нужна кнопка EDIT, которая у вас есть. Все можно сделать декларативно, установив определенные свойства в Apex.

0 голосов
/ 27 июня 2019

эта функция

APEX_UTIL.PUBLIC_CHECK_AUTHORIZATION('ADMIN')

- это функция plsql, вы использовали ее в своем коде javascript или в качестве условия на стороне сервера?

вы можете сделать ajax-запрос, чтобы получить роль пользователя, используя эту функцию, и после получения роли в вашем коде javascript вы можете отключить / включить элементы, используя javascript api.

apex.item( "P1_ITEM" ).enable() ;
...