插件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;