开发环境:JDeveloper 11.1.2.1.0 + Oracle XE Database 10gR2。
使用Table的export excel 功能时,数据001001001 导出后变为 1001001;1:3 导出后变为 01:03。
经过分析发现是Excel自身的问题:Excel默认把001001001当成数字,把1:3当成时间,如果在Excel中直接输入也是这样。
但还是有办法解决的,使用Excel中的CONCATENATE函数,生成形如=CONCATENATE("","001001001")和=CONCATENATE("","1:3"),欺骗一下Excel就可以了。
具体做法是:
<af:outputText value="=CONCATENATE('','" inlineStyle="display:none"/>
<af:outputText value="#{row.LastName}" id="ot14"/>
<af:outputText value="')" inlineStyle="display:none"/>
当然这只是临时的做法,Oracle ADF开发小组已经承认这是一个BUG: ER 9767110,以后应该会在导出时,有相关属性可以设置。
注意,我在使用JDeveloper 11.1.2.1.0重新实验时,发现并没有成功显示出想要的结果。待查。
没有评论:
发表评论