我如何在 Apex 交互式报表中的列数据中显示新行

How do I display a new line within column data in an Apex Interactive Report

我正在使用 Apex 4.2 和 Oracle 11.g

我在交互式报告中显示了一个名为 "Transaction Detail" 的列。报告列的显示文本为选项设置为 "Standard Report Column"。 报告列选自名为 transaction_detail 的 varchar2 table 列。我也在构建 table。 transaction_detail table 列由具有以下代码的过程填充:

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), '&lt;br/&gt;')

但我无法通过 Apex 错误:ORA-12899:列 "APEX_040200"."WWV_FLOW_WORKSHEET_COLUMNS"."DB_COLUMN_NAME" 的值太大(实际值:49,最大值:30 )

如果列是标准报告列,Apex 难道不能将
解释为新行吗?

感谢您的关注。

Jorge (jrimblas) 和其他人在 OTN 论坛上回答了这个问题。该讨论的 link 在上面。简短的总结,在存储过程中,我去掉了 '&lt;br/&gt;' 并将其替换为 CHR(13)。然后,在 Apex 交互式报告中,我不需要将列更改为 "Standard Report Column"。我将以下内容放在列的 "HTML expression" 中。

<div style="width:240px">
<pre style="font-family:Arial; font-size:12px; white-space:pre-wrap">#TRANSACTION_DETAIL#</pre>
</div>