Oracle apex Oracle Apex开关项值

Oracle apex Oracle Apex开关项值,oracle-apex,Oracle Apex,我有一个数据类型为number(1,0)的列,我决定为这个列使用开关项。 我设置自定义设置。1表示打开,0表示关闭 当我尝试编辑列并使用off(0)时,我得到错误-列名称必须与值1和0匹配。 当我使用On value时,一切正常。小悟空,在apex,最好的学习方法(你说自己是初学者)是在开发环境中编写许多只执行一件事情的小应用程序。这样,您可以隔离问题并详细研究行为。我建议您对这个切换项问题也这样做,以找出问题所在。您没有提供足够的信息供任何人回答,因此用户会给出他们最好的猜测。 这就是我所做的

我有一个数据类型为number(1,0)的列,我决定为这个列使用开关项。 我设置自定义设置。1表示打开,0表示关闭

当我尝试编辑列并使用off(0)时,我得到错误-列名称必须与值1和0匹配。
当我使用On value时,一切正常。

小悟空,在apex,最好的学习方法(你说自己是初学者)是在开发环境中编写许多只执行一件事情的小应用程序。这样,您可以隔离问题并详细研究行为。我建议您对这个切换项问题也这样做,以找出问题所在。您没有提供足够的信息供任何人回答,因此用户会给出他们最好的猜测。 这就是我所做的。创建测试表

create table so_test_with_switch (
    so_test_with_switch_id         number generated by default on null as identity  
                                   constraint so_test_with_switc_id_pk primary key,
    name                           varchar2(255),
    switchval                      number
);
在apex中创建报告和表单,将switchval页面项(P32_switchval)的表单项更改为“Switch”,并使用自定义设置:1表示打开,0表示关闭。我进行了测试,我的状态很好。错误消息表明apex正在获取的值与1或0不匹配,因此它必须从其他地方获取该值。在我的例子中,我添加了一个after submit计算,将P32_SWITCHVAL的值设置为“Y”。保存我的更改,运行表单,单击“应用更改”,我得到了与您相同的错误。 这取决于您确定页面项从何处获取其他值。浏览您的页面,进行调查和调试。找到解决方案的关键在于代码。
--Koen

您是从APEX验证还是从Oracle数据库中获取错误?我从APEX获取错误,在日志表中看不到任何内容确切的错误消息是什么?听起来开关项的验证有问题。日志中将出现数据库错误或更严重的APEX错误。确切的错误-列名称必须与值1和0匹配。我不使用验证,只插入processFrom Oracle已知问题“如果您使用自定义组件设置定义了一个开关项,并且“Off Value”设置为“0”,则不会正确返回零值。”我使用19.2没有必要的补丁,最简单的解决方法是在应用补丁之前使用选择列表。