我在 Apex 中有一个交互式报告,其中包含一些专栏。 用户可以选择将报告下载为具有标准功能的 CSV 文件。
有没有办法隐藏导出中的列,但将其显示在屏幕上。
(背景:一列是自定义链接,不应导出到 CSV)
谢谢! 保罗
您可以通过在 PL/SQL 表达式类型的列上放置条件并使用以下作为表达式来隐藏它:
NVL(:REQUEST,'EMPTY') NOT IN('CSV','XLS','PDF','XML','RTF','HTMLD')
这将检查 APEX 绑定变量“REQUEST”,如果它是 CSV、XLS、PDF、XML、RTF 或 HTML,则该列将不会显示!
更多信息
要停止显示电子邮件的列,您可以使用以下命令:
NVL(wwv_flow.g_widget_action, 'EMPTY') != 'SEND_EMAIL'
这个对我不起作用:
NVL(:REQUEST,'EMPTY') NOT IN('CSV','XLS','PDF','XML','RTF','HTMLD')
因此另一个解决方法可能如下:
instr(nvl(:REQUEST,'~'),'XLS') = 0 and instr(nvl(:REQUEST,'~'),'PDF') = 0 and instr(nvl(:REQUEST,'~'),'HTMLD') = 0
同样的逻辑适用于 csv、rtf 等。
得票最多的答案对我不起作用。
@George 的解决方法也对我有用:
instr(nvl(:REQUEST,'~'),'XLS') = 0 and
instr(nvl(:REQUEST,'~'),'CSV') = 0
我在交互式报告专栏(APEX 21.2)中应用了这个
创建 2 列... 对于具有 URL 的列,服务器端 plsql 表达式应读取 instr(nvl(:REQUEST,'~'),'XLS') = 0 和 instr(nvl(:REQUEST,'~'),'CSV') = 0 和 instr(nvl(:REQUEST,'~'), 'HTML') = 0 和 instr(nvl(:REQUEST,'~'),'PDF') = 0
对于没有 URL 的列,服务器端 plsql 表达式应该读取 not(instr(nvl(:REQUEST,'~'),'XLS') = 0 和 instr(nvl(:REQUEST,'~'),'CSV') = 0 和 instr(nvl(:REQUEST,'~') ),'HTML') = 0 和 instr(nvl(:REQUEST,'~'),'PDF') = 0)