存档&改造【04】二维码操作入口设置细节自动刷新设置后的交互式网格内容的隐藏

因为数据库中没有数据无法查看设置效果,于是自己创建了个测试数据表,用来给demo测试

-- 二维码操作入口设置
create table JM_QR_CODE(QR_CODE_ID          NUMBER generated as identity primary key,SYSTEM_ID           NUMBER(20) not null,IS_ENABLE           NUMBER(1),OPERATION_NAME      NVARCHAR2(64),DESCRIPTION         NVARCHAR2(255),ENTRY_URL           NVARCHAR2(255),AUTH_RANGE          NVARCHAR2(512) not null,CREATED_BY          NUMBER(20),CREATION_TIME       DATE,UPDATED_BY          NUMBER(20),UPDATED_TIME        DATE,TENANT_ID           NUMBER(20) not null,DEL_FLAG            NUMBER(1)
)
/comment on table JM_QR_CODE is '晶码二维码操作入口设置表'
/
comment on column JM_QR_CODE.QR_CODE_ID is '主键'
/
comment on column JM_QR_CODE.SYSTEM_ID is '接入系统ID'
/
comment on column JM_QR_CODE.IS_ENABLE is '启用状态'
/
comment on column JM_QR_CODE.OPERATION_NAME is '操作项名称'
/
comment on column JM_QR_CODE.DESCRIPTION is '操作项描述'
/
comment on column JM_QR_CODE.ENTRY_URL is '操作入口地址'
/
comment on column JM_QR_CODE.AUTH_RANGE is '操作权限范围:IS_ALL-任何人'
/
comment on column JM_QR_CODE.CREATED_BY is '创建人'
/
comment on column JM_QR_CODE.CREATION_TIME is '创建时间'
/
comment on column JM_QR_CODE.UPDATED_BY is '更新人'
/comment on column JM_QR_CODE.UPDATED_TIME is '更新时间'
/
comment on column JM_QR_CODE.TENANT_ID is '租户ID'
/
comment on column JM_QR_CODE.DEL_FLAG is '逻辑删除'
/

在demo中引入该数据表,结果

【错误记录】未定义交互式网格 '二维码操作入口设置' 的主键列, 而此列是编辑或主从关系所必需的。

报错:

未定义交互式网格 '二维码操作入口设置' 的主键列, 而此列是编辑或主从关系所必需的。

请与您的应用程序管理员联系。

技术信息(仅提供给开发人员使用)

  • is_internal_error: true
  • apex_error_code: APEXDEV.IG.NO_PK
  • component.type: APEX_APPLICATION_PAGE_REGIONS
  • component.id: 248143772048740294
  • component.name: 二维码操作入口设置
  • error_backtrace:
    ----- PL/SQL Call Stack -----object      line  objecthandle    number  name
    0x8828a6a8       981  package body APEX_220200.WWV_FLOW_ERROR.INTERNAL_GET_ERROR
    0x8828a6a8      1049  package body APEX_220200.WWV_FLOW_ERROR.INTERNAL_ADD_ERROR
    0x8828a6a8      1522  package body APEX_220200.WWV_FLOW_ERROR.RAISE_INTERNAL_ERROR
    0xa62db5b0      7104  package body APEX_220200.WWV_FLOW_INTERACTIVE_GRID.RENDER
    0x725d9208      2334  package body APEX_220200.WWV_FLOW_REGION_NATIVE.RENDER_REGION
    0x882538d0      2766  package body APEX_220200.WWV_FLOW_PLUGIN.RENDER_REGION
    0x729a3488      1023  package body APEX_220200.WWV_FLOW_DISP_PAGE_PLUGS.DISPLAY_REGION_BODY
    0x729a3488      1584  package body APEX_220200.WWV_FLOW_DISP_PAGE_PLUGS.RENDER_REGION
    0x72ae1338      1880  package body APEX_220200.WWV_FLOW_PAGE.RENDER_COMPONENTS
    0x72ae1338      1975  package body APEX_220200.WWV_FLOW_PAGE.RENDER_PAGE_COMPONENTS
    0x72ae1338      2960  package body APEX_220200.WWV_FLOW_PAGE.EMIT_BODY
    0x72ae1338      3209  package body APEX_220200.WWV_FLOW_PAGE.RENDER
    0x8a3b2088      3308  package body APEX_220200.WWV_FLOW.SHOW
    0x8a3b2088      5393  package body APEX_220200.WWV_FLOW.RESOLVE_FRIENDLY_URL
    0xa69326d8         2  anonymous block

说是为定义主键列,我:???  这不是在这儿呢吗

【问题原因】后来找到原因了,是apex上的主键未设置

【问题解决】需要将列下的主键→【源】→【主键】【仅查询】打开

初具雏形

给启用状态设置标识类型

”往返“

【错误记录】给列设类型后报错"呈现区域xxx时出错"

"切换"(直接报错)

【问题原因】未设置启用禁用值(自带的是默认,默认不被识别)
【问题解决】选中列中的对应字段→【设置】关闭默认值→设置启用/禁用值(这里我用的1/0)

更改后:

在设置里进行展示回显,但是值列表一查还是什么都不显示,后来去数据表查看还是什么都没有,才想起来数据表里没有任何数据ORZ

往里面添加好数据以后的展示

修修改改以后出现了新的问题:

进入设置修改操作项描述点击“保存”以后没有反应,既无设置的项更改,也不关闭弹窗,进入对应的页设置,发现保存按钮对应的【行为】→【数据库操作】“SQL UPDATE操作”

明明之前还能更改来着QAQ

解决方法:重新建一个,这次可以成功实现点击保存后对话框消失,数据可以更改啦!

【小技巧】更新后自动刷新交互式网格

但是一个新的问题出现了:每次修改后主交互式网格数据需要手动进行刷新,这很不符合用户使用体验,于是需要在保存后对数据进行自动刷新:

在主交互式网格页设计器→【动态操作】→【对话框已关闭】→右键 创建动态操作→【标识】自定义名称“保存后刷新”→【时间】选择类型“JavaScript表达式” →window刷新

→创建真操作→【标识】刷新

如此就大公告吉了。

【待解决的问题】存入的是SYSTEM_ID,想要页面展示的是SYSTEAM_NAME

【小细节】在查找多个字段时,哪个字段在前页面优先展示哪个内容

实例:

ID在前,优先展示ID

NAME在前,优先展示NAME

【待解决的问题】想要在选中选项“任何人”的时候隐藏部门和用户,只有选中选项“指定角色或部门”时才出现

隐藏语句:

if ($v('P38_TYPE') != 0) {$x_Show("P38_PARENT_ID");$x_Hide("P38_PAGE_ID");
} else {$x_Hide("P38_PARENT_ID");$x_Show("P38_PAGE_ID");
}

过程

记得要在【二维码操作入口设置】添加静态ID

js语句

var flag = $v('P27_HIDDEN');
// console.log(flag);
if (flag == 0){
   $("#P27_RANGE").parent('div').parent('div').show();

} else{
   $("#P27_RANGE").parent('div').parent('div').hide();
};

PL/SQL语句

begin
  if :P27_HIDDEN = 0 then
  :P27_HIDDEN := 1;
  else
    :P27_HIDDEN := 0;
  end if;
end;

if ($v('P27_AUTH_RANGE' != 0)) {
    $x_Show("P27_");
    $x_Hide("P38_PAGE_ID");
} else {
    $x_Hide("P38_PARENT_ID");
    $x_Show("P38_PAGE_ID");
}

运行后报错

ERR-1002 在应用程序 "277" 中未找到项 "P27_HIDDEN" 的项 ID。

将可操作对象下的动态操作【时间】操作将“更改”改为“按键”就不报这个错了,但是也没能隐藏就是了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/100190.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

iceberg简介004_iceberg和其他数据湖框架的对比---​​数据湖Apache Iceberg工作笔记0004

然后来看一下iceberg和其他数据湖框架的对比这里可以看到hudi支持的多一点对吧,但是 iceberg有自己的优势,并且他们都支持timeline 也就是时间旅行对吧. 然后这个图是显示了,数据湖三剑客的开源时间,以及火热程度,可以对比一下看看.

R语言R包详解——stringr包:字符处理

R语言 R语言R包详解——stringr包:字符处理 一切用法皆以说明书为准,想要了解该包,请多查阅说明书或者查看底层算法。 文章目录 R语言一、安装与加载R包二、函数简介三、函数详解3.1、str_c: 字符串拼接3.2、str_trim: 去掉字符串的空格和TA…

win1011安装MG-SOFT+MIB+Browser+v10b

文章目录 安装MG-SOFTSNMP服务配置安装MG-SOFT启动MIB-Browser以及错误解决MIB Browser使用 安装MG-SOFT win10和win11安装基本一样,所以参照下面的操作即可! SNMP服务配置 打开设置,应用和功能,可选功能,选择添加功…

java项目中git的.ignore文件设置

在Git中,ignore是用来指定Git应该忽略的故意不被追踪的文件。它并不影响已经被Git追踪的文件。我们可以通过.ignore文件在Git中指定要忽略的文件。 当我们执行git add命令时,Git会检查.gitignore文件,并自动忽略这些文件和目录。这样可以避免…

归纳所猜半结论推出完整结论:CF1592F1

https://www.luogu.com.cn/problem/CF1592F1 场上猜了个结论,感觉只会操作1。然后被样例1hack了。然后就猜如果 ( n , m ) (n,m) (n,m) 为1则翻转4操作,被#14hack了。然后就猜4操作只会进行一次,然后就不知道怎么做下去了。 上面猜的结论都…

计算机网络 面试题

PART1 1.TCP和UDP的区别是什么? 2.TCP报文首部格式是什么? 3.TCP三次握手的过程 4.为什么TCP要三次握手? 5.TCP三次握手的数据报可以携带数据吗? 6.半连接队列是什么? 7.SYN 洪泛攻击是什么? 8.TCP…

Http请求响应 Ajax 过滤器

10/10/2023 近期总结: 最近学的后端部署,web服务器运行,各种请求响应,内容很多,学的很乱,还是需要好好整理,前面JavaSE内容还没有完全掌握,再加上一边刷题,感觉压力很大哈…

Postman接口测试学习之常用断言

什么是断言? 断言——就是结果中的特定属性或值与预期做对比,如果一致,则用例通过,如果不一致,断言失败,用例失败。断言,是一个完整测试用例所不可或缺的一部分,没有断言的测试用例…

MAX30102心率血氧传感器

MAX30102心率血氧传感器介绍 背景基本功能基本结构基本原理采集方法直通式采集方法反射式采集方法 血氧采集原理Beer-Lambert 定理皮肤组织模型血氧测量过程AC / DC 的计算 心率采集原理 实验结果代码走读资源链接 背景 目前,基本上所有的可穿戴式设备都集成了心率…

【Java 进阶篇】CSS盒子模型详解

CSS盒子模型是网页布局的基础之一,它定义了HTML元素在页面上的占用空间和相互关系。理解CSS盒子模型对于构建各种类型的网页布局至关重要。在本文中,我们将深入探讨CSS盒子模型的各个方面,包括盒子模型的概念、属性和如何使用它们来控制元素的…

[idekCTF 2022]Paywall - LFI+伪协议+filter_chain

[idekCTF 2022]Paywall 一、解题流程(一)、分析(二)、解题 二、思考总结 一、解题流程 (一)、分析 点击source可以看到源码,其中关键部分:if (isset($_GET[p])) {$article_content…

JVM 参数

JVM 参数类型大致分为以下几类: 标准参数(-):保证在所有的 JVM 实现都支持的参数非标准参数(-X):通用的,特定于 HotSpot 虚拟机的参数,这些参数不保证在所有 JVM 实现中…

【【萌新的SOC学习之重新起航SOC】】

萌新的SOC学习之重新起航SOC ZYNQ PL 部分等价于 Xilinx 7 系列 FPGA PS端:Zynq 实际上是一个以处理器为核心的系统,PL 部分可以看作是它的一个外设。 我们可以通过使用AXI(Advanced eXtensible Interface)接口的方式调用 IP 核,系统通过 AX…

1700*C. Mixing Water(数学 | 二分)

Problem - 1359C - Codeforces 解析: 因为每次先加热水,再加凉水,所以温度的范围肯定在 [ ( hc ) / 2 , h ] 所以当 t 为 h时,结果为 1 当 t 小于( hc ) / 2时,肯定为2 (一杯热水和一杯冷水) …

聊聊分布式架构06——[NIO入门]简单的Netty NIO示例

目录 Java NIO和Netty NIO比较 Java NIO: Netty: Netty NIO中的主要模块 Transport(传输层) Buffer(缓冲区) Codec(编解码器) Handler(处理器) Even…

Android NFC开发详解:NFC读卡实例解析及总结

文章目录 前言一、什么是NFC?二、基础知识1.什么是NDEF?2.NFC技术的操作模式3.标签的技术类型4.实现方式的分类5.流程三、获取标签内容1.检查环境2.获取NFC标签2.1 Manifest中注册的方式获取Tag2.1 前台Activity捕获的方式获取Tag四、解析标签数据1. M1…

配置Hive使用Spark执行引擎

配置Hive使用Spark执行引擎 Hive引擎概述兼容问题安装SparkSpark配置Hive配置HDFS上传Spark的jar包执行测试速度对比 Hive引擎 概述 在Hive中,可以通过配置来指定使用不同的执行引擎。Hive执行引擎包括:默认MR、tez、spark MapReduce引擎: 早…

英码边缘计算盒子IVP03X——32T超强算力,搭载BM1684X算能TPU处理器

产品8大优势: 高效节能:相较异构产品,IVP03X数据调配效率更高,资源利用率更高,平均功耗更低;升级换代:相较算能BM1684平台,IVP03X算力、编码,模型转换性能均翻倍提升&am…

Easysearch Chart 0.2.0都有哪些变化

Easysearch Chart 包更新了,让我们来看看都有哪些变化: Docker 镜像升级 Service 名称调整,支持 NodePort 模式部署 现在让我们用 NodePort 模式部署一下: # helm search repo infinilabs NAME CHART VERSION …