Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oracle表单-基于查询数据启用/禁用表格列表项行_Oracle_Oracle10g_Oracleforms - Fatal编程技术网

Oracle表单-基于查询数据启用/禁用表格列表项行

Oracle表单-基于查询数据启用/禁用表格列表项行,oracle,oracle10g,oracleforms,Oracle,Oracle10g,Oracleforms,我有一个文本项('TXT_EG_PER')和一个列表项('LI_p')作为数据块('DB')中的表格,如图所示。 我想根据行数据单独启用/禁用列表项 我使用了“TXT”的WHEN-VALIDATE-ITEM触发器。我在其中的代码: IF smt.. THEN SET_ITEM_PROPERTY ('DB.LI_P', ENABLED, property_true); ELSE SET_IT

我有一个文本项('TXT_EG_PER')和一个列表项('LI_p')作为数据块('DB')中的表格,如图所示。 我想根据行数据单独启用/禁用列表项

我使用了“TXT”的WHEN-VALIDATE-ITEM触发器。我在其中的代码:

IF smt..    THEN
    SET_ITEM_PROPERTY  ('DB.LI_P',
                     ENABLED,
                     property_true);
ELSE
    SET_ITEM_PROPERTY  ('DB.LI_P',
                     ENABLED,
                     property_false);
END IF;

但它使所有列表项都处于启用或禁用状态。我想基于行执行此操作。

使用
设置项目\u实例\u属性。表单联机帮助系统中描述了它的用法。请看一看,因为它的参数与内置的
SET\u ITEM\u属性不同,例如

set_item_instance_property(item, record, property value);
在你的情况下,那可能是


我得到了“太多与此调用匹配的'SET\u ITEM\u INSTANCE\u PROPERTY'声明”错误。这意味着您可能误用了它。检查文档。我将:system.trigger_记录分配给一个变量并使用该变量。这个错误消失了。然后我检查了文档。我可能的相关属性(10g):“插入允许的、可导航的、可视的属性”。我都试过了,但都没用。我应该用哪一个?我在LI_P的“WHEN-NEW-ITEM-INSTANCE”触发器中使用了这个,它错了吗?我的财产价值应该是多少?我是Oracle FormNAVIGABLE的新手,它可能是最接近您需要的,也就是说,如果满足某些条件,用户无法导航到该项目(因此无法修改)。我不知道为什么它不起作用;应该是的。我知道我不能很好地解释它。记录实际上已经满了。文本字段已满。列表项(“LI_P”)为空。所以我在相关数据块的“POST-QUERY”触发器中使用了允许的UPDATE_,它成功了。这是最终情况:设置项目实例属性('DB.LI\u P',当前记录,允许更新,属性为真);
SET_ITEM_INSTANCE_PROPERTY  ('DB.LI_P',
                             :system.trigger_record,
                             ENABLED,
                             property_true);