从 Oracle Forms 12C 中的所需项目向后处理选项卡

用户6186249

我已将 Oracle Forms 10g 迁移到 12c,并在 12c 中出现了异常问题。这是用户反馈的问题之一。

我有一个包含某些必填字段的表单。当用户将项目留空时,表单状态栏上会显示错误消息“需要字段”。通常用户无法进入下一个字段,直到将某些内容放入所需的项目中。

在 10g 中,用户可以向后 Tab 键将必填字段留空而不会出错,但在 12c 中不再如此。

我提出了一个类似的方法(根本不能说它是解决方案):

步骤1。项目属性面板中的初始项为“是”

第2步。为需要的项目创建key-prev-item并输入以下代码:

If get_item_property(:system.cursor_name, required) = ‘true’ then
  Set_item_property(:system.cursor_name, required, property_false);  
End if;

第三步。为所需项目创建key-next-item并将 required 属性重置为 true。

它看起来很愚蠢和不可靠,因为您创建的代码越多,出现的错误就越多。

Oracle Form 12c 中是否有任何内置函数处理这种情况?

非常感谢

夜狐79

我认为最好DEFER_REQUIRED_ENFORCEMENT在那个时候使用。我们这样做,如果我们导航出项目,我们将其设置为 true,导航后设置为 false。

oracle formsbuilder 的使用说明有助于解释选项 Yes 和 4.5 之间的区别:

  • 此属性仅在项目级验证生效时适用。默认情况下,当某个项目的Required 设置为true 时,在输入有效值之前,Oracle Forms 将不允许导航出该项目。如果您将 Defer Required Enforcement 设置为 No,则此行为将生效(当项目实例不允许最终用户更新时会出现异常;在这种不寻常的情况下,No 的延迟所需强制执行设置将被忽略并且项目级别不进行验证。)
  • 如果您将 Defer Required Enforcement 设置为 Yes(运行时为 PROPERTY_TRUE)或 4.5(运行时为 PROPERTY_4_5),您允许最终用户在记录中的项目之间自由移动,即使它们为空,将必需属性的实施推迟到验证发生在记录级别。
  • 当 Defer Required Enforcement 设置为 Yes 时,导航出时不会验证空值的必需项。也就是说,WHEN-VALIDATE-ITEM 触发器(如果有)不会触发,并且项目的 Item Is Valid 属性没有改变。如果稍后进行记录级验证时项目值仍为空,则 Oracle Forms 将发出错误。
  • 当 Defer Required Enforcement 设置为 4.5 时,导航出时不验证空值必需项,并且该项的 Item Is Valid 属性保持不变。但是,WHEN-VALIDATE-ITEM 触发器(如果有)确实会触发。如果失败(引发 Form_Trigger_Failure),则认为该项目验证失败,Oracle Forms 将发出错误。如果触发器正常结束,处理将继续正常进行。如果稍后进行记录级验证时项目值仍然为空,则 Oracle Forms 将在那时发出错误。
  • 将 Defer Required Enforcement 的值设置为 4.5 允许您在 WHEN-VALIDATE-ITEM 触发器中编写逻辑代码,只要最终用户更改项目的值(甚至为空)然后导航出来,就会立即执行该触发器。例如,这种逻辑可能会更新其他项目的值。(此设置的名称“4.5”反映了在 4.5 版和以 4.5 模式运行的后续版本中,WHEN-VALIDATE-ITEM 触发器始终在项目级验证期间触发的事实。)
  • 迁移说明:如果您的 Forms 应用程序使用“4.5”作为运行时兼容模式属性设置,Oracle Forms 迁移助手将自动将 Defer Required Enforcement 属性设置为“4.5”,因为运行时兼容模式属性在 Oracle Forms 中已过时。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

具有外部联接的查询在Oracle 12c中的行为有所不同

来自分类Dev

Mac OSX上的VM中的Oracle Database 12c

来自分类Dev

在oracle 12c中以JSON形式返回SQL查询的结果

来自分类Dev

如何在Oracle 12c中还原转储文件

来自分类Dev

连接到Oracle 12c中可插拔数据库的会话

来自分类Dev

为什么Oracle 12c的数据字典中缺少我的plsql代码?

来自分类Dev

PreparedStatement +选择要更新+ Oracle 12c + ORA-01461在主键列中

来自分类Dev

如何创建可以在Oracle 12c中创建用户的用户?

来自分类Dev

为什么“描述”命令在oracle 12c的netbeans中不起作用

来自分类Dev

如何使用Oracle 12c获取存储为CLOB的JSON数组中的元素数?

来自分类Dev

取消选择Oracle Forms(12C)中的所有单选值

来自分类Dev

如何确认Oracle 12C中的连接数?

来自分类Dev

关联子查询在Oracle 12c和11g中的工作方式不同

来自分类Dev

Oracle 12c如何处理DATE数据类型中的时区数据

来自分类Dev

如何在oracle 12c中更改SYS和SYSTEM密码?

来自分类Dev

oracle 12c中不支持的功能的列表是什么

来自分类Dev

基于功能的索引在oracle 12c中不起作用

来自分类Dev

无法在Oracle 12c中删除GTT

来自分类Dev

具有外部联接的查询在Oracle 12c中的行为有所不同

来自分类Dev

为什么“描述”命令在oracle 12c的netbeans中不起作用

来自分类Dev

Windows 7 64位中的Oracle SOA 12c安装-问题

来自分类Dev

如何将数据库从磁盘加载到ORACLE 12c的内存中

来自分类Dev

Oracle 12c中的JSON_VALUE和JSON_TEXTCONTAINS有什么区别?

来自分类Dev

XMLTYPE更新替换Oracle 12c中最后一个标记中的值

来自分类Dev

Oracle 12c 设置?

来自分类Dev

更新 Oracle 12c 中的非架构 XMLType 列?

来自分类Dev

在 oracle 12c 中拆分范围分区的问题

来自分类Dev

oracle 12c中缺少右括号

来自分类Dev

从 XML 到 Oracle 12c 中的路径列表

Related 相关文章

  1. 1

    具有外部联接的查询在Oracle 12c中的行为有所不同

  2. 2

    Mac OSX上的VM中的Oracle Database 12c

  3. 3

    在oracle 12c中以JSON形式返回SQL查询的结果

  4. 4

    如何在Oracle 12c中还原转储文件

  5. 5

    连接到Oracle 12c中可插拔数据库的会话

  6. 6

    为什么Oracle 12c的数据字典中缺少我的plsql代码?

  7. 7

    PreparedStatement +选择要更新+ Oracle 12c + ORA-01461在主键列中

  8. 8

    如何创建可以在Oracle 12c中创建用户的用户?

  9. 9

    为什么“描述”命令在oracle 12c的netbeans中不起作用

  10. 10

    如何使用Oracle 12c获取存储为CLOB的JSON数组中的元素数?

  11. 11

    取消选择Oracle Forms(12C)中的所有单选值

  12. 12

    如何确认Oracle 12C中的连接数?

  13. 13

    关联子查询在Oracle 12c和11g中的工作方式不同

  14. 14

    Oracle 12c如何处理DATE数据类型中的时区数据

  15. 15

    如何在oracle 12c中更改SYS和SYSTEM密码?

  16. 16

    oracle 12c中不支持的功能的列表是什么

  17. 17

    基于功能的索引在oracle 12c中不起作用

  18. 18

    无法在Oracle 12c中删除GTT

  19. 19

    具有外部联接的查询在Oracle 12c中的行为有所不同

  20. 20

    为什么“描述”命令在oracle 12c的netbeans中不起作用

  21. 21

    Windows 7 64位中的Oracle SOA 12c安装-问题

  22. 22

    如何将数据库从磁盘加载到ORACLE 12c的内存中

  23. 23

    Oracle 12c中的JSON_VALUE和JSON_TEXTCONTAINS有什么区别?

  24. 24

    XMLTYPE更新替换Oracle 12c中最后一个标记中的值

  25. 25

    Oracle 12c 设置?

  26. 26

    更新 Oracle 12c 中的非架构 XMLType 列?

  27. 27

    在 oracle 12c 中拆分范围分区的问题

  28. 28

    oracle 12c中缺少右括号

  29. 29

    从 XML 到 Oracle 12c 中的路径列表

热门标签

归档