Oracle ERP 报表:类数字格式字符串数据的前置0被截取和被科学计数法表示

来源:互联网 发布:开淘宝上卖花卉好赚吗 编辑:程序博客网 时间:2024/04/29 22:03

在开发报表的时候,遇到了以下情况:

A.问题描述

在PLSQL中编写程序输出HTML/XML格式的报表,在提交请求之后查看输出的时候,如果选择使用Excel打开,类似数字格式的字符串数据会被Excel进行智能化处理,如截取前面的0或者进行科学计数法表示。

如图:


B.问题处理

很明显,Excel将字段识别为数字格式,并进行了智能处理。
我们只要把输出报表的问题字段指定格式为字符串即可解决这个问题。
(1)如果是直接在PLSQL中输出HTML格式的报表:
可以直接在字段属性中设置style属性或者使用class属性,例如:
(1.1)<td align="left" style="vnd.ms-excel.numberformat:@"> segment1 </td>

(1.2).numberx{mso-number-format:"\@";text-decoration:none;}      <td align="left" class="numberx"> segment1 </td>
style定义:

class设置:

(2)如果是在PLSQL中输出XML格式数据,通过RTF模板进行格式排版:
在RTF模板中,指定对应字段的字符串属性,设置【强制 LTR】格式属性。
在没有XML数据源的情况下,点击打开字段属性可能会不显示这个属性,这时候可以通过写代码控制。
语句模仿这个:
<fo:bidi-override direction="ltr" unicode-bidi="bidi-override"><?SEGMENT3?></fo:bidi-override>
如图:

0 0
原创粉丝点击