复选框值在 Oracle Forms 中不起作用

Check Box Value Not Working in Oracle Forms

我在 oracle 表单上有复选框

选中时的值 = 'Y'

未选中时的值 = 'N'

默认值未选中

我创建按钮并在复选框值 'N' 显示消息时编写代码。但是当我按下按钮时没有显示消息。当我将值更改为 'Y' 然后显示消息

代码:

IF :WE_GROUP.CHECK_BOX_HOF = 'N' THEN
 MESSAGE('PLEASE CHECK THE BOX');
 MESSAGE(' ');
END IF;

Forms - 据我所知 - 关于默认复选框值的行为奇怪。虽然你说(如果不勾选)它等于N,但实际上它是empty(null)。我建议您尝试在表单启动时设置默认值,例如在 WHEN-NEW-FORM-INSTANCE 触发器中,例如

:we_group.check_box_hof := 'N';

Alternatively/aditionally,在您发布其代码的触发器中,使用 NVL 函数作为

if nvl(:we_group.check_box_hof, 'N') = 'N' then
   ...
end if;