FineBI字段类型读取错误

编辑
文档创建者:howie (66764 )     浏览次数:1698次     编辑次数:15次     最近更新:doreen0813 于 2018-08-21     

目录:

1、描述编辑

FineBI会将各数据库中的字段类型统一区分为三类:123(数值类型)、ABC(文本类型)、日期(日期时间类型),有时会碰到FineBI将数据抽取之后,字段类型识别错误的情况,需要分情况处理。下文会以特例说明如何处理,为类似情况提供解决思路。

2、数据库数值类型被识别为ABC类型编辑

现象:

222

如果数据库中的number类型、integer类型、decimal类型等数值类型字段长度不在1~19的范围内,读取到FineBI中会识别为ABC(文本)类型(考虑到数据精度问题)

解决方案:

1.将该字段长度设置位1~19任意值,并重新更新FineIndex。

2.在%FineBI_Home%\webapps\WebReport\WEB-INF\resources文件夹中添加number.julie文件,使用记事本文件编辑,添加任意内容即可,重启FineBI

3.通过FineBI的ETL工具新增公示列,将该字段类型转为数值类型。

注:这边任何数据库中的数值类型字段长度不在1~19范围内的,都会被FineBI识别为文本类型,均可按上述介绍方案来解决。

3、sqlserver数据库类型识别错误编辑

(1)Date类型识别为ABC类型

现象:

222

SQLServer2008的Date类型在FineBI中会被识别为ABC类型,原因是FineBI中内置的sqlserver驱动是sqlserver2005的,而Date类型的是在2008版本之后才出现的,因此驱动不能识别该类型,FineBI会将不能识别的字段类型默认转为文本类型。

解决方案:

1.更新驱动。将下载的符合当前数据库版本的sqlserver的jdbc驱动包,放置到FineBI_Home%\webapps\WebReport\WEB-INF\lib下,并将原来的驱动包删除。(这里有 Microsoft JDBC Driver  6.0版本 jdk1.8版本的驱动,地址:http://pan.baidu.com/s/1c12UqVQ)

2.可以将Date类型的字段修改为Datetime,Datetime类型sqlserver2005的驱动可以识别。

3.通过FineBI的ETL工具新增公示列,将该字段类型转为日期类型。


(2)decimal类型识别为ABC类型
现象:

Sql server 里面字段使用的字符类型为decimal(X,0)的情况下(X>19),导入BI字段类型识别错误。如下图:

 

 这是由于在BI里面为了保持精度,超过19位整数需要用字符串保存。

解决方案:

1..更新驱动。将下载的符合当前数据库版本的sqlserver的jdbc驱动包,放置到FineBI_Home%\webapps\WebReport\WEB-INF\lib下,并将原来的驱动包删除。

2.通过FineBI的ETL工具新增公示列,将该字段类型转为数值型。

3.在%FineBI_Home%\webapps\WebReport\WEB-INF\resources文件夹中添加number.julie文件,使用记事本文件编辑,添加任意内容保存并重启FineBI即可。

附件列表


主题: 数据配置
标签: 暂无标签 编辑/添加标签
如果您认为本文档还有待完善,请编辑

文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

本文档是否有用?