我在Cobol Mainframe VSAM源文件中使用PowerCenter Designer,需要知道我应该使用Prec
和Scale
中的哪些值来获取PIC S9(9)V99 COMP-3
...
一位同事提到Informatica会将其识别为PIC S9(9)V9(2) COMP-3
,因此我必须使用Prec 11
- Scale 2
来定义该字段,并且我这样做了,但是一旦数据在SQL中的Stage表中加载,然后某些字段显示某些列的奇怪符号,其他列显示预期值。
我还尝试添加一个表达式转换,除以从Normalizer获得的结果值,但它也没有按预期工作。
您对如何处理它有任何想法吗?
答案 0 :(得分:0)
“pic s9(9)V99 COMP-3
”解释如下:
在informatica中,这将是“prec 11 scale 2
”。
不记得你如何告诉Power Center它的压缩小数
但我知道你可以。
压缩十进制:每个字节中的两个十进制数字,最后一个半字节中带有特殊符号字符。
所以+123456存储为十六进制'0123456C'.
(+123.456将存储为完全相同的十六进制字符串 - 您只需要知道您期望的比例!)
答案 1 :(得分:0)
请记住,comp-3字段表示该值已压缩,因此,如果使用文本编辑器打开,则会显示那些奇怪的字符,而不是特定的数字 您可以通过扩展PowerExchange看到这些值