【Oracle APEX开发小技巧4】在使用插件Badage List的基础上,实现点击对应基地跳出对应模式对话框

插件Badage List →属性 Link Target→设置目标跳转页 → 设置项

错误案例:&P138_BASE_NAME.

使用后会全查(找不到对应基地)

正确方法:&BASE_NAME.

跳转正确基地

【扩展】

在Oracle APEX中,`&BASE_NAME.` 和 `&P138_BASE_NAME.` 是两种不同的用法,它们的主要区别在于它们如何获取和表示值。

&BASE_NAME.

- **全局变量**:`&BASE_NAME.` 是一个特殊的全局变量,用于表示当前应用程序的根URL。它通常用于构建动态的URL或链接,确保这些链接在不同的环境中(如开发、测试、生产环境)都能正确工作。

- **自动解析**:APEX在运行时会自动将 `&BASE_NAME.` 替换为当前应用程序的根URL,这通常是 `http://hostname:port/ords/f?p=APP_ID` 这样的格式。

 &P138_BASE_NAME.

- **页面项值**:`&P138_BASE_NAME.` 看起来像是一个页面项(page item)的值,其中 `P138` 可能是页面项的名称,`BASE_NAME` 是它的值。页面项可以是文本框、隐藏字段等,用于存储数据。

- **引用值**:如果你在应用程序中使用了名为 `P138` 的页面项来存储特定的值(比如某个特定的URL或其他信息),那么 `&P138_BASE_NAME.` 就是引用这个页面项的值。

 总结

`&BASE_NAME.` 是一个全局变量,用于获取当前应用程序的根URL。

`&P138_BASE_NAME.` 则更像是一个特定的页面项值,其具体内容取决于该页面项被赋予的值

在使用这些变量时,需要根据实际的需求和上下文来决定使用哪一个。如果需要构建动态URL,通常会使用 `&BASE_NAME.`。如果需要引用页面上的某个特定数据项,则会使用类似 `&P138_BASE_NAME.` 这样的表达式。

如果点击总人数禁用a标签

人才分布应用程序组件展示下新建动态操作→执行JavaScript代码

$('.t-BadgeList-item').eq(0).find('a').attr({
    onclick: '',
    href: 'javascript:void(0);'
});

之前点击空白

人才分布页使用的应用程序组件Badge List跳转到模式对话框是基于全局项 &BASE_NAME.筛选的,点击总人数是获取不到基地的,

之后点击总人数禁用打开对话框

正式环境个人技能统计页面左侧报表第一次打开页面加载的时候没有数据

查看开发环境发现一切正常

原因:

默认值给的1,但是正式环境此大类被删除了,当然找不到

开发环境:

生产环境:

真正想要解决这个问题,只有将静态的默认值改成动态查询的id,这样才能确保无论对大类进行什么编辑都有默认值↓

--DESCRIBE:W28 人才分布雷达图动态展示默认类型
select * from JAS_EMP_SKILL_NEW where SKILL_PARENT_ID = 0 and IS_SHOW = 1;

select min(SKILL_ID) from JAS_EMP_SKILL_NEW where SKILL_PARENT_ID = 0 and IS_SHOW = 1;

  • 15
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值