Oracle 形式的 FRM-40501
FRM-40501 in oracle forms
从子句查询我提出了一个查询以从两个表中获取数据检查代码
select empno,ename,job,mgr,hiredate,sal,comm,deptno,grade gr
from emp
left outer join salgrade on ( emp.sal between losal and hisal)
我也像代码一样将属性更改为可见和不可见
if get_item_property('text_item17', visible) = 'TRUE' then
set_item_property('text_item17', visible, property_false);
else
set_item_property('text_item17', visible, property_true);
set_item_property('text_item17',enabled,property_true);
set_item_property('text_item17',enabled,property_true);
set_item_property('text_item17',NAVIGABLE ,property_true);
set_item_property('text_item17',UPDATE_ALLOWED,property_true);
set_item_property('text_item17',QUERYABLE,property_true);
set_item_property('text_item17',UPDATE_NULL,property_true);
end if;
当我 运行 表单时,我收到无法更新数据的错误
Forms 不知道这些列属于哪个 table,因此无法执行更新。
我建议您创建一个视图,该视图的基础数据块,创建一个 INSTEAD OF
触发器,它可以处理从两个 table 中正确插入、更新和删除行的问题。
SET_ITEM_PROPERTY
您发布的电话与此无关(即不会解决您的问题)。
[编辑]
说你想不看就解决,我建议你不要花太多时间在这上面。如果您打开联机表单帮助并搜索 "Guidelines for choosing block data sources",您将看到 FROM 子句 作为数据源允许查询,但 NOT 允许 DML(插入、更新和删除)。
从 dml 数据目标类型中选择 table 并输入 table 名称然后转到项目 text_item17 属性仅将查询更改为 yes
从子句查询我提出了一个查询以从两个表中获取数据检查代码
select empno,ename,job,mgr,hiredate,sal,comm,deptno,grade gr
from emp
left outer join salgrade on ( emp.sal between losal and hisal)
我也像代码一样将属性更改为可见和不可见
if get_item_property('text_item17', visible) = 'TRUE' then
set_item_property('text_item17', visible, property_false);
else
set_item_property('text_item17', visible, property_true);
set_item_property('text_item17',enabled,property_true);
set_item_property('text_item17',enabled,property_true);
set_item_property('text_item17',NAVIGABLE ,property_true);
set_item_property('text_item17',UPDATE_ALLOWED,property_true);
set_item_property('text_item17',QUERYABLE,property_true);
set_item_property('text_item17',UPDATE_NULL,property_true);
end if;
当我 运行 表单时,我收到无法更新数据的错误
Forms 不知道这些列属于哪个 table,因此无法执行更新。
我建议您创建一个视图,该视图的基础数据块,创建一个 INSTEAD OF
触发器,它可以处理从两个 table 中正确插入、更新和删除行的问题。
SET_ITEM_PROPERTY
您发布的电话与此无关(即不会解决您的问题)。
[编辑]
说你想不看就解决,我建议你不要花太多时间在这上面。如果您打开联机表单帮助并搜索 "Guidelines for choosing block data sources",您将看到 FROM 子句 作为数据源允许查询,但 NOT 允许 DML(插入、更新和删除)。
从 dml 数据目标类型中选择 table 并输入 table 名称然后转到项目 text_item17 属性仅将查询更改为 yes