use*_*025 3 oracle oracle11g oracle-apex
我正在使用 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);
Run Code Online (Sandbox Code Playgroud)
程序代码可以轻松更改。报告仅显示:
Filename=myfile.jpg<br/>Event Description=my description
我尝试在过程中使用 CHR(13) 而不是 html 字符,然后尝试用 html 字符替换 apex 中的 CHR(13)。而不是简单地选择列:
, transaction_detail
Run Code Online (Sandbox Code Playgroud)
我试过:
, REPLACE(transaction_detail, CHR(13), '<br/>')
Run Code Online (Sandbox Code Playgroud)
但我无法克服 Apex 错误:ORA-12899:列“APEX_040200”的值太大。“WWV_FLOW_WORKSHEET_COLUMNS”。“DB_COLUMN_NAME”(实际:49,最大值:30)
如果该列是标准报告列,Apex 是否应该能够将 解释为新行?
Jorge (jrimblas) 等人在 OTN 论坛上回答了这个问题。该讨论的链接位于上面。简而言之,在存储过程中我去掉了'<br/>'并将其替换为CHR(13). 然后,在 Apex 交互式报告中,我不需要将该列更改为“标准报告列”。我将以下内容放置在该列的“HTML 表达式”中。
<div style="width:240px">
<pre style="font-family:Arial; font-size:12px; white-space:pre-wrap">#TRANSACTION_DETAIL#</pre>
</div>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10672 次 |
| 最近记录: |