开发记录【1】

给列表加上序号

实现:Oracle有自带序号rownum,加上这个字段即可

开发记录【1】_第1张图片

开发记录【1】_第2张图片

【开发细节1】更新人可通过共享组件获取

开发记录【1】_第3张图片

【开发细节2】存入部门ID,想让其展示部门名,使用了共享组件,但是没显示,这是为什么呢?开发记录【1】_第4张图片

开发记录【1】_第5张图片

【原因及解决方法】虽然引入了值列表,但是基于Item Value下无法展示NAME,必须选择Display Value of List of Values

开发记录【1】_第6张图片

【开发细节3】明明是交互式网格,但是没有复选框

开发记录【1】_第7张图片

开发记录【1】_第8张图片

【解决方法】将交互式网格中【属性】-【编辑】-取消【允许的操作】勾选

开发记录【1】_第9张图片

【通过中间表查询数据】

通过中间表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 - 没有为表单区域 点检对象_查看 定义主键项。

开发记录【1】_第10张图片

定义主键

开发记录【1】_第11张图片

定义主键开发记录【1】_第12张图片

【开发细节4】搜索栏无法使用

开发记录【1】_第13张图片

【原因】属性未配置
【解决方法】进行配置

APEX Fancy Tree Select[插件]所在位置→【属性】→【Search Item】选择搜索框

开发记录【1】_第14张图片

【APEX Fancy Tree Select[插件]使用小细节】

selectMode为2时,选中父项并不会选中其下的子项,但是可以单独选中子项(父子之间独立)

开发记录【1】_第15张图片

“selectMode”控制父子级联,2为选中父级不会关联子,但选中子级会让父级变色,
改成3就能选中父的同时选中子,也可以单独选中子

开发记录【1】_第16张图片

换成实际数据:

开发记录【1】_第17张图片

【问题记录】

通过中间表CHECK_OBJECT_DEVICE_ASSO存储设备相关信息,但是传值未能传过去主表主键

开发记录【1】_第18张图片

开发记录【1】_第19张图片

【原因】OBJECT_ID未获取(P20→P26)

开发记录【1】_第20张图片

查看会话发现P9→P20还有开发记录【1】_第21张图片

开发记录【1】_第22张图片【解决方法】需要跳转的按钮→行为→重定向到指定的页需要绑定ID值

开发记录【1】_第23张图片

【出现问题】点击“查看”,显示对应的点检对象内容和绑定的点检表单,但是实际展示出来是空表单

开发记录【1】_第24张图片

查看会话,发现有报错:Error: 没有为表单区域 点检表单_查看 定义主键项。

Error: 没有为表单区域 点检表单_查看 定义主键项。

开发记录【1】_第25张图片

设置主键开发记录【1】_第26张图片

【再次查看】并且将展示类型设为交互式网格

开发记录【1】_第27张图片

可以展示出来了,但是需要改一下样式和排版

【问题记录】基础数据获取到值,但是传值过程中获取不到值,

开发记录【1】_第28张图片

数据丢失如图所示:

开发记录【1】_第29张图片

而且点击保存后会弹出提示:

Header rewrite
Old: 显示处理过程中尝试保存处于会话状态的项 P20_OBJECT_ID。项保护级别为:
  可以在项具有 "会话" 校验和时设置项。

未传入校验和, 或者传入的校验和应该适合保护级别为 "(未提供校验和)" 的项。

注: 最终用户将得到不同的错误消息。
New: 显示处理过程中尝试保存处于会话状态的项 P20_OBJECT_ID。项保护级别为: 可以在项具有 "会话" 校验和时设置项。 未传入校验和, 或者传入的校验和应该适合保护级别为 "(未提供校验和)" 的项。 注: 最终用户将得到不同的错误消息。

开发记录【1】_第30张图片

【小细节】点击查看有分栏效果

开发记录【1】_第31张图片

   将点检对象和表单放在一个区域内[新建],设置父项,改变模板开发记录【1】_第32张图片

你可能感兴趣的:(数据库)