如何在 Apex 交互式报表的列数据中显示新行
Posted
技术标签:
【中文标题】如何在 Apex 交互式报表的列数据中显示新行【英文标题】:How do I display a new line within column data in an Apex Interactive Report 【发布时间】:2015-03-05 00:54:52 【问题描述】:我正在使用 Apex 4.2 和 Oracle 11.g
我有一个名为“交易详情”的列,我在交互式报告中显示。报表列的显示文本为选项设置为“标准报表列”。 报告列是从名为 transaction_detail 的 varchar2 表列中选择的。我也只是在建桌子。 transaction_detail 表列由具有以下代码的过程填充:
Insert into mail_log (transaction_type, transaction_detail)
Values ('FTP Transaction',
'Filename=' || p_image_filename ||
'<br/>' || 'Event Description=' || l_event_description);
程序代码可以轻松更改。 报告只显示:
Filename=myfile.jpg<br/>Event Description=my description
我尝试在过程中使用 CHR(13) 代替 html 字符,然后尝试用 html 字符替换顶点中的 CHR(13)。而不是简单地选择列:
, transaction_detail
我试过了:
, REPLACE(transaction_detail, CHR(13), '<br/>')
但我无法通过 Apex 错误:ORA-12899: value too large for column "APEX_040200"."WWV_FLOW_WORKSHEET_COLUMNS"."DB_COLUMN_NAME"(实际:49,最大值:30)
如果列是标准报告列,Apex 是否应该能够将 解释为新行?
感谢您查看此内容。
【问题讨论】:
在更活跃的 OTN 论坛community.oracle.com/message/12930627 中对此进行了扩展讨论 【参考方案1】:Jorge (jrimblas) 和其他人在 OTN 论坛上回答了这个问题。该讨论的链接在上面。简短的总结,在存储过程中我去掉了'&lt;br/&gt;'
并用CHR(13)
替换它。然后,在 Apex 交互式报告中,我不需要将列更改为“标准报告列”。我将以下内容放在该列的“HTML 表达式”中。
<div style="width:240px">
<pre style="font-family:Arial; font-size:12px; white-space:pre-wrap">#TRANSACTION_DETAIL#</pre>
</div>
【讨论】:
以上是关于如何在 Apex 交互式报表的列数据中显示新行的主要内容,如果未能解决你的问题,请参考以下文章
在 Oracle APEX 交互式报表中更新与过滤器相关的页面项目