You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle Apex 如何根据当前时间自动设置复选框的选中值

Oracle Apex 按时间段自动设置班次复选框实现方案

前提确认

你已配置的P4_TIME_RECORDED字段默认值SQL是正确的,可在页面加载时返回24小时制格式为hh:mm的当前时间:

select to_char(systimestamp,'hh24:mm') as timestamp from dual

动态动作配置步骤

  • 触发时机选择页面加载后(After Refresh),如果P4_TIME_RECORDED字段会被页面其他操作修改,可额外增加触发事件为P4_TIME_RECORDED的「更改」事件,保证时间修改时班次自动同步。
  • 动作类型选择「执行JavaScript代码」,填入以下代码:
// 读取已获取的当前时分值
const timeVal = apex.item('P4_TIME_RECORDED').getValue();
// 拆分时分转为数值计算总分钟数,简化区间判断
const [hour, minute] = timeVal.split(':').map(Number);
const currentTotal = hour * 60 + minute;
// 班次A时间区间:07:00(420分钟)~17:50(1070分钟)
const aStart = 420;
const aEnd = 1070;

// 给复选框赋值
if (currentTotal >= aStart && currentTotal <= aEnd) {
  apex.item('P4_SHIFT').setValue('A');
} else {
  apex.item('P4_SHIFT').setValue('B');
}

可选配置

如果你的P4_SHIFT复选框为允许多选的组,将setValue的参数改为数组格式即可,例如apex.item('P4_SHIFT').setValue(['A'])。
可以在动态动作的「受影响元素」栏选择P4_SHIFT字段,进一步提升代码执行效率。

内容的提问来源于stack exchange,提问作者DeltaD32

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 20:54:06