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

Oracle Apex 22.2及以上是否支持创建类似Application Items的工作区级全局项?

在Oracle Apex 22.2+中实现工作区级全局项的方案

针对你提出的跨应用共享全局项、支持替换字符串访问且不依赖会话共享的需求,Oracle Apex 22.2及以上版本可以通过以下几种原生或自定义方案实现:

1. 工作区级替换字符串(原生方案)

这是最贴合需求的实现方式,完全支持你需要的&MY_VAR.替换语法:

  • 设置路径:工作区管理 → 应用程序构建器 → 工作区实用程序 → 替换字符串 → 创建工作区级替换字符串
  • 核心特性:
    • 工作区内所有应用均可直接访问,无需共享会话
    • 支持静态值或基于SQL查询的动态值
    • 可通过APEX_UTIL.SET_WORKSPACE_SUBSTITUTION_VALUE API动态更新值
  • 适用场景:全局静态配置、低频更新的动态值

2. 自定义全局配置表+应用级封装

适合需要复杂逻辑(如权限控制、按应用分组)的场景:

  • 第一步:创建全局配置表
    CREATE TABLE WORKSPACE_GLOBALS (
        NAME VARCHAR2(100) PRIMARY KEY,
        VALUE VARCHAR2(4000),
        LAST_UPDATED DATE DEFAULT SYSDATE
    );
    
  • 第二步:在每个应用中创建应用计算项,源类型设为SQL查询,例如:
    SELECT VALUE FROM WORKSPACE_GLOBALS WHERE NAME = 'MY_GLOBAL_VAR'
    
  • 第三步:通过&MY_GLOBAL_VAR.在页面项、SQL或PL/SQL中直接访问

3. 封装PL/SQL包模拟工作区设置

如果需要兼容现有应用设置体系,可以通过PL/SQL包统一管理全局值:

  • 创建WORKSPACE_SETTINGS包,提供GET_SETTING函数,实现工作区默认值与应用自定义值的优先级逻辑
  • 在各应用中创建应用项,源类型设为PL/SQL表达式:WORKSPACE_SETTINGS.GET_SETTING('MY_SETTING')
  • 最终通过&MY_APP_ITEM.的替换语法访问

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 14:17:13