环境信息:
版本:IBM InfoSphere DataStage V11.3.1
操作系统:linux redhat 6.4
问题描述:
在从CSV文件抽取数据的时候,在日志里面查询预警信息如下: Delimiter for field "INVESTMENTSTRATEGY" not found 导致部分数据无法加载。
问题原因:
经过查询该字段INVESTMENTSTRATEGY 数据 存在换行,导致DS无法正常读取该数据。
问题解决:
利用Transformer 中函数Convert 对换行回车进行转换变为一行。
Convert(char(13):char(10),' ',trim(Lnk_SEC_PROJECT_MAINTENANCE.INVESTMENTSTRATEGY))
函数使用:
【函数名】:Convert
【函数形式】:Convert (substr1,substr2,mainstr)
【功能】: 若mainstr 中含有substr1的第n个字符,则将该字符转换为转换为substr2中对应的第n个字符(大小写敏感)。
【参数】:
substr1:
类型:String
substr2:
类型:String
mainstr:
类型:string
【返回值】:
类型:string
【备注】若mainstr 中含有substr1的第n个字符,则将该字符转换为转换为substr2中对应的第n个字符(大小写敏感)。
(1) 若substr1为空值,返回mainstr;
若substr2为空值,mainstr中含有的substr1中的字符被删除(即被空值代替);
若mainstr为空值,返回空值。
(2) substr1字符个数n1> substr2字符个数n2,substr1中第n2+1至第n1个字符将从mainstr中被删除;substr1字符个数n1< substr2字符个数n2,substr2中第n1+1至第n2个字符将被忽略。
【举例】:
ASCII表