【发布时间】:2017-04-04 12:23:55
【问题描述】:
我正在开发一个 Oracle Application express (APEX 4.2) 应用程序。
其中一个页面控件(文本框,title)具有“PL/SQL 表达式”只读条件::APP_PROJECT_READ_ONLY = 'YES'
:APP_PROJECT_READ_ONLY 是一个应用程序项,它是通过在页面加载时触发的动态操作 on_load 设置的:
DECLARE
CURR_USER VARCHAR2(50);
BEGIN
IF :REQUEST = 'NEW' THEN
:APP_PROJECT_ID := 0;
:APP_PROJECT_READ_ONLY := 'NO';
ELSE
:APP_PROJECT_ID := :P2_ID;
SELECT OWNER INTO CURR_USER
FROM PROJECTS
WHERE ID = :APP_PROJECT_ID;
IF CURR_USER = :APP_USER THEN
:APP_PROJECT_READ_ONLY := 'NO';
ELSE
:APP_PROJECT_READ_ONLY := 'YES';
END IF;
END IF;
EXCEPTION WHEN NO_DATA_FOUND THEN
NULL;
END;
检查会话状态表明:APP_PROJECT_READ_ONLY 的值是正确的,但似乎并不能驱动title 是否为只读:
- 如果我将
on_load的“要返回的页面项目”留空,那么title始终是可编辑的。 - 但是,如果我将其设置为
title,那么title将始终是只读的,而且它的源代码控制不起作用,它留空(在以前的情况下它工作正常)。
我该如何解决?
【问题讨论】:
标签: oracle-apex