Oracle Apex 日期选择器行为异常

Posted

技术标签:

【中文标题】Oracle Apex 日期选择器行为异常【英文标题】:Oracle Apex Date Picker behaving strangely 【发布时间】:2020-04-23 06:59:43 【问题描述】:

我正在使用 Oracle Apex 19.2。我正在尝试基于经典报告和返回 SQL 语句的 PL/SQL 函数体构建动态报告。简单地说,我有两个日期选择器,我在其中设置默认值 sysdate - 21(通过页面刷新时的动态操作设置)然后我使用以下 PL/SQL 构造一个简单的报告

declare
  clsd_snc date:= :P5_CLOSED_SINCE;
  ignrd_snc date := :P5_IGNORED_SINCE;
begin
  return 'select ' || clsd_snc || ',' || ignrd_snc || ' from dual';
end;

我有两个问题:

    当表单加载时,我在日期选择器中看到以下设置: 12/15/2019 当我手动将日期设置为正确的日期时,我在报告中看到以下输出: .000495049504950495049504950495049504950495

我尝试在 PL/SQL 中使用 to_date 和 to_char 并更改选择器的日期格式,但没有任何效果。非常感谢您的帮助。

【问题讨论】:

我尝试按照您的描述进行操作,但无法重现 - 对我来说可以。请在 apex.oracle.com 上创建一个示例页面,提供登录凭据,以便我们查看您的操作以及 Apex 的响应方式。 请登录以下账号 Workspace:TRACKING_WS 用户名:test@user.com 密码:APEX1234 报告中的第3页 【参考方案1】:

感谢您提供示例页面。我将您的第 3 页复制到第 4 页(以便您的“原始”保持不变)并这样做:

动态动作:关闭OFF“转义特殊字符” 这解决了12/15/2019 问题

报告查询:将clsd_snc 括在单引号中(chr(39)

这解决了.000495049504950 问题

declare
  clsd_snc date := :P4_CLSD_SINCE;
begin
  return 'select ' || chr(39) || clsd_snc || chr(39) || ' from dual';
end;

我想就是这样;所以 - 检查第 4 页。

【讨论】:

以上是关于Oracle Apex 日期选择器行为异常的主要内容,如果未能解决你的问题,请参考以下文章

Oracle Apex - 如何使用动态操作更新更改操作的值列表?

为啥日期时间选择器的行为?

如何在页眉 oracle apex 中设置项目值

在 Oracle APEX 中基于“行选择器”插入记录

日期选择器滚动到过去的日期,即使最小日期设置为当前日期

在 jQuery UI 日期选择器中在日期旁边显示附加文本