蒙德里安在oracle中钻取表通过逗号显示整数值

时间:2013-02-06 20:14:00

标签: oracle mondrian drillthrough

我使用mondrian和JPivot

时遇到问题

问题在于,当我将我的应用程序与 Oracle 数据库连接,并且访问钻取表时,所有值都以格式显示2.010,00 指年份 2010 。 只有在我的应用程序与Postgres或SqlServer数据库连接时,Oracle DB才会出现此问题,其值显示为2010.

更多信息:

我的多维数据集有两个维度:CREATION_DATESTATUS,以及一个度量:

抱歉,我必须更改此处显示的标签,因为下一个xml格式正确

 -SCHEMA name="AAAA" envId="0"-
  -Cube name="AAAA" envId="0" cache="true" enabled="true"-
   -Table name="MY_FACT_TABLE" alias="MY_FACT_TABLE"-
   -Dimension name="FECHA_CREACION" envId="0"-
    -Hierarchy name="FECHA_CREACION" hasAll="true" allMemberName="All FECHA_CREACION"-
     -Level name="PRO_CREATE_YEAR" column="PRO_CREATE_YEAR" type="Integer" uniqueMembers="false" levelType="Regular" hideMemberIf="Never"-
     -Level name="PRO_CREATE_SEM" column="PRO_CREATE_SEM" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never"-
    -Hierarchy-
   -Dimension-
   -Dimension name="ESTADO" envId="0"-
    -Hierarchy name="ESTADO" hasAll="true" allMemberName="All ESTADO"-
     -Level name="PRO_STATUS" column="PRO_STATUS" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never"-
    -Hierarchy-
   -Dimension-
   -Measure name="MEASURE1" column="DW_PRO_ID" aggregator="count" visible="true" formatString="#,###.0" datatype="Numeric" caption="MEASURE1"-
  -Cube-
 -SCHEMA-

在数据库中,表格 MY_FACT_TABLE 的列 PRO_CREATE_YEAR ,类型为“ INT ”,并且该列中插入的所有值均为2010和2011年。

MEASURE1的钻取表:

PRO_CREATE_YEAR | PRO_CREATE_SEM | PRO_STATUS | MEASURE1
2.010,00 | SEM1 | A | 1,00
2.010,00 | SEM1 | A | 3,00
2.010,00 | SEM1 | A | 2,00

我已经尝试过:
- 将PRO_CREATE_YEAR级别的levelType更改为“TimeYears” - 将维度类型更改为“TimeDimension” - 将列PRO_CREATE_YEAR的类型更改为数字,数字(9) 并没有什么变化。

1 个答案:

答案 0 :(得分:1)

您应该首先将维度定义为"time" type。有很多examples out there。这将允许您使用MDX的时间函数和计算的全部功能。

您还应该考虑使用level element的nameColumn和captionColumn属性。您可以在Mondrian的schema documentation中获得有关这些内容的更多详细信息。

如果您愿意加倍努力并向蒙德里安社区成员提供您的调查结果,请随时联系mailing list或在tracking system中提交错误报告。< / p>