【发布时间】:2015-05-19 09:05:59
【问题描述】:
我正在使用 Talend Open Studio 进行数据集成。
我有一个创建多个字段的 tFileInputPositional。其中一个看起来像这样:“+0000030139808303”。
我需要将这些字段保存到 BigDecimal(20,2) 中,以便最后两位数字成为小数部分,但是,在组件的架构中键入它时,它只是在末尾添加“,00”号码。
所以,总结一下...
我有什么:
+0000030139808303
我想要什么:
301398083,03
我得到了什么:
30139808303,00
有人可以帮我实现吗?
谢谢!
【问题讨论】:
-
你说“我得到了什么”这表明你有一些当前的代码 - 请显示那个代码是什么......
-
@JonSkeet 好吧,我已经设置了组件。基本上有这个 tInputFilePositional 连接到一个 tMap,其主要输出是 tMysqlOutput。
-
@JonSkeet 当我说“我得到了什么”时,我的意思是这些值最终会出现在我的 MySQL 数据库中。
-
不清楚您所说的“连接到 tMap”是什么意思 - 这是 Talend 的概念吗? (该解决方案可能不是特定于 Talend 的,而且您可以提出的问题越不特定于 Talend,就越好......)
-
@JonSkeet 是的,我很抱歉。 tMap、tInputFilePositional 和 tMysqlOutput 是 talend 组件,它们是相互关联的。我不会发布代码本身,因为它是自动生成的并且无法修改,所以你知道这些东西看起来有多丑。但关键是在 tMap 中我可以与值交互(tInputFilePositional 只是为我提供了一个模式,我可以用值填充,而不是输入 java 代码)。在 tMap 中,我可以在变量声明中输入“=”后面的部分。这就是我写“row16.ObliRecNetasGtos.movePointLeft(2)”的地方。
标签: java types casting bigdecimal talend