1.通过Answers设置精度
在BIEE的Answers中,创建数据透视图,假如使用百分比来显示分析项,默认只能精确到小数点后面一位。
这个精度有时不能满足我们的需求,但是界面上并没有可以修改精度的选项。可以通过修改XML的代码来指定特定的精度。在Answers中切换到高级Tab页,在请求XML的代码中,找到对应百分比列的代码:
<saw:columnHeading>
<saw:displayFormat/>
<saw:caption>
<saw:text>Amount Sold %</saw:text></saw:caption></saw:columnHeading>
<saw:showAs type=”percentOfAxis” axis=”row”>
<saw:displayFormat>
<saw:dataFormat xsi:type=”saw:percent” minDigits=”1″ maxDigits=”1″ scale=”2″/>
</saw:displayFormat>
</saw:showAs>
默认的minDigits和maxDigits都是1,修改成2就是两位小数,点击设置XML按钮,回到结果
2.通过修改后台JS文件设置精度
如果想要彻底修改数据透视图,可以通过修改后台的jsp实现,本例中,对应的js文件在
{OracleBI}\oc4j_bi\j2ee\home\applications\analytics\analytics\res\b_mozilla\views\pivotvieweditor.js
找到方法function PTCreatePercentOf
if(!bIndexOf)
{
XUISetXsiType(tDF, saw.xml.kSawNamespace, ‘percent’);
// alter by alther.cai 2009-7-18
tDF.setAttribute(‘minDigits’,’2′);
tDF.setAttribute(‘maxDigits’,’2′);
tDF.setAttribute(‘scale’, ’2′);
tCF.appendChild(tDF);
} else{
XUISetXsiType(tDF, saw.xml.kSawNamespace, ‘number’);
tDF.setAttribute(‘minDigits’,’2′);
tDF.setAttribute(‘maxDigits’,’2′);
tCF.appendChild(tDF);
}
红色部分的minDigits和MaxDigits默认是1,这里将其修改为2,重启Oracle BI Presentation Server和Java Host服务,重启OC4J,就可以了。