问题描述
在理解问题思想之前,我有一个表有3列,一个是id第二是描述,第三是sql查询,我创建了一个有两个区域的顶点页面,一个是静态区域,一个是交互式报告区域。
在静态区域中,我有一个用户选择列表,在交互式报告区域中,它根据选择执行查询并给出输出。我使用源类型: L/SQL函数体返回交互式报表的SQL查询我写以下代码
声明
V_TBLQRY VARCHAR2(500);
开始
从BKP选择QRY到V_TBLQRY,其中TBL_NM = :P2_TBLNM;
返回V_TBLQRY;
异常
当其他人那么
返回 “从MNU_USRGRP_M中选择GRP_CD,GRP_DSCR”;
结束;
当页面加载异常被引发和报告显示,但当我们改变选择它给出错误,我无法跟踪它。我也尝试使用apex_collections,但问题是报告和报告标题上也有一些未使用的列,我无法动态更改。我在apex.oracle.com上传的总案例
工作区: HLL用户名: dax.apex@gmail.com密码: Apex @ 1234运行系统用户名演示和密码是演示。问题出现在第2页。
您可以从这里下载测试用例 (我不知道如何上传和创建LiveSql链接,我在LiveSql上上传脚本,但无法创建链接。
https://drive.google.com/file/d/1F0_v7xvdLlEAYB0o8Hby_P4BRcDB_LOI/view?usp=sharing
在静态区域中,我有一个用户选择列表,在交互式报告区域中,它根据选择执行查询并给出输出。我使用源类型: L/SQL函数体返回交互式报表的SQL查询我写以下代码
声明
V_TBLQRY VARCHAR2(500);
开始
从BKP选择QRY到V_TBLQRY,其中TBL_NM = :P2_TBLNM;
返回V_TBLQRY;
异常
当其他人那么
返回 “从MNU_USRGRP_M中选择GRP_CD,GRP_DSCR”;
结束;
当页面加载异常被引发和报告显示,但当我们改变选择它给出错误,我无法跟踪它。我也尝试使用apex_collections,但问题是报告和报告标题上也有一些未使用的列,我无法动态更改。我在apex.oracle.com上传的总案例
工作区: HLL用户名: dax.apex@gmail.com密码: Apex @ 1234运行系统用户名演示和密码是演示。问题出现在第2页。
您可以从这里下载测试用例 (我不知道如何上传和创建LiveSql链接,我在LiveSql上上传脚本,但无法创建链接。
https://drive.google.com/file/d/1F0_v7xvdLlEAYB0o8Hby_P4BRcDB_LOI/view?usp=sharing
专家解答
据我所知,您不能动态更改报告的列 (即 * 结构 *)。我有一个可以让我运行任何查询的应用程序-我使用APEX集合进行操作,如下所示
它填充集合,并将列标题设置为列的名称。我所在的地区是:
declare l_query varchar2(32767) := nvl(:P1_sql,'select * from dual'); l_theCursor integer default dbms_sql.open_cursor; l_columnValue varchar2(4000); l_descTbl dbms_sql.desc_tab; l_colCnt number; l_sql varchar2(4000) := 'select /*smartcheck*/ '; l_sep varchar2(1); begin IF APEX_COLLECTION.COLLECTION_EXISTS ( p_collection_name => 'ANY_SQL') THEN APEX_COLLECTION.DELETE_COLLECTION( p_collection_name => 'ANY_SQL'); end if; APEX_COLLECTION.CREATE_COLLECTION_FROM_QUERY ( p_collection_name => 'ANY_SQL', p_query => l_query); dbms_sql.close_cursor(l_theCursor); l_theCursor := dbms_sql.open_cursor; dbms_sql.parse( l_theCursor, l_query, dbms_sql.native ); dbms_sql.describe_columns( l_theCursor, l_colCnt, l_descTbl ); :P1_COLCOUNT := l_colcnt; for i in 1 .. least(l_colCnt,50) loop apex_util.set_session_state( p_name => 'P1_HEADER'||lpad(i,2,0) , p_value => l_descTbl(i).col_name ); end loop; end;复制
它填充集合,并将列标题设置为列的名称。我所在的地区是:
select c001 ,c002 ,c003 ,c004 ,c005 ,c006 ,c007 ,c008 ,c009 ,c010 ,c011 ,c012 ,c013 ,c014 ,c015 ,c016 ,c017 ,c018 ,c019 ,c020 ,c021 ,c022 ,c023 ,c024 ,c025 ,c026 ,c027 ,c028 ,c029 ,c030 ,c031 ,c032 ,c033 ,c034 ,c035 ,c036 ,c037 ,c038 ,c039 ,c040 ,c041 ,c042 ,c043 ,c044 ,c045 ,c046 ,c047 ,c048 ,c049 ,c050 from apex_collections where collection_name = 'ANY_SQL'复制
文章转载自ASKTOM,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
Oracle RAC 一键安装翻车?手把手教你如何排错!
Lucifer三思而后行
604次阅读
2025-04-15 17:24:06
【纯干货】Oracle 19C RU 19.27 发布,如何快速升级和安装?
Lucifer三思而后行
595次阅读
2025-04-18 14:18:38
XTTS跨版本迁移升级方案(11g to 19c RAC for Linux)
zwtian
498次阅读
2025-04-08 09:12:48
Oracle数据库一键巡检并生成HTML结果,免费脚本速来下载!
陈举超
482次阅读
2025-04-20 10:07:02
【ORACLE】记录一些ORACLE的merge into语句的BUG
DarkAthena
465次阅读
2025-04-22 00:20:37
Oracle 19c RAC更换IP实战,运维必看!
szrsu
440次阅读
2025-04-08 23:57:08
【ORACLE】你以为的真的是你以为的么?--ORA-38104: Columns referenced in the ON Clause cannot be updated
DarkAthena
438次阅读
2025-04-22 00:13:51
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
430次阅读
2025-04-17 17:02:24
火焰图--分析复杂SQL执行计划的利器
听见风的声音
372次阅读
2025-04-17 09:30:30
3月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
362次阅读
2025-04-15 14:48:05