给列表加上序号
实现:Oracle有自带序号rownum,加上这个字段即可
【开发细节1】更新人可通过共享组件获取
【开发细节2】存入部门ID,想让其展示部门名,使用了共享组件,但是没显示,这是为什么呢?
【原因及解决方法】虽然引入了值列表,但是基于Item Value下无法展示NAME,必须选择Display Value of List of Values
【开发细节3】明明是交互式网格,但是没有复选框
【解决方法】将交互式网格中【属性】-【编辑】-取消【允许的操作】勾选
【通过中间表查询数据】
通过中间表CHECK_OBJECT_DEVICE_ASSO
来实现点检对象和点检设备表code_device
数据查询
with area_v as (
select a.area_id, a.name, a.del_flag
from fnd_areas a
where tenant_id = :usertenant
)
select rownum,
c.device_id,
c.tenant_id,
c.device_code,
c.device_name,
decode(f.del_flag, 1, '', f.name) fab_name,
decode(a1.del_flag, 1, '', a1.name) area_name,
decode(a2.del_flag, 1, '', a2.name) line_name
from code_device c
left join fnd_fab f on c.fab_id = f.fab_id and c.tenant_id = f.tenant_id
left join area_v a1 on a1.area_id = c.area_id
left join area_v a2 on a2.area_id = c.line_id
where c.device_id in (select device_id
from check_object_device_asso d
where object_id = :p20_object_id)
and c.tenant_id = :usertenant
and c.del_flag = 0;
【问题记录】点击“查看”设置跳转到P21的查看表单,但事与愿违,每次都报错然后跳转到P20
很疑惑到底是那一步出了问题
查看会话:
Exception in "final_exception_handler": Error Stack: ORA-20987: APEX - 没有为表单区域 点检对象_查看 定义主键项。
定义主键
定义主键
【开发细节4】搜索栏无法使用
【原因】属性未配置
【解决方法】进行配置
APEX Fancy Tree Select[插件]所在位置→【属性】→【Search Item】选择搜索框
【APEX Fancy Tree Select[插件]使用小细节】
selectMode为2时,选中父项并不会选中其下的子项,但是可以单独选中子项(父子之间独立)
“selectMode”控制父子级联,2为选中父级不会关联子,但选中子级会让父级变色,
改成3就能选中父的同时选中子,也可以单独选中子
换成实际数据:
【问题记录】
通过中间表CHECK_OBJECT_DEVICE_ASSO存储设备相关信息,但是传值未能传过去主表主键
【原因】OBJECT_ID未获取(P20→P26)
查看会话发现P9→P20还有
【解决方法】需要跳转的按钮→行为→重定向到指定的页需要绑定ID值
【出现问题】点击“查看”,显示对应的点检对象内容和绑定的点检表单,但是实际展示出来是空表单
查看会话,发现有报错:Error: 没有为表单区域 点检表单_查看 定义主键项。
Error: 没有为表单区域 点检表单_查看 定义主键项。 |
设置主键
【再次查看】并且将展示类型设为交互式网格
可以展示出来了,但是需要改一下样式和排版
【问题记录】基础数据获取到值,但是传值过程中获取不到值,
数据丢失如图所示:
而且点击保存后会弹出提示:
Header rewrite Old: 显示处理过程中尝试保存处于会话状态的项 P20_OBJECT_ID。项保护级别为: 可以在项具有 "会话" 校验和时设置项。 未传入校验和, 或者传入的校验和应该适合保护级别为 "(未提供校验和)" 的项。 注: 最终用户将得到不同的错误消息。 New: 显示处理过程中尝试保存处于会话状态的项 P20_OBJECT_ID。项保护级别为: 可以在项具有 "会话" 校验和时设置项。 未传入校验和, 或者传入的校验和应该适合保护级别为 "(未提供校验和)" 的项。 注: 最终用户将得到不同的错误消息。
【小细节】点击查看有分栏效果
将点检对象和表单放在一个区域内[新建],设置父项,改变模板