好久没和transform接触了,初次接触就给我送了个大礼,在选择好iqd文件执行最后一步导入的时候,要求我对数据源输入用户名密码,我连续输入了三次用户名和密码,在我十分肯定用户名和密码没错的情况下,它还是报错了,具体错误如下图

Transformer中引用iqd作为数据源导入报错TR1907与TR3312-LMLPHP

也可能遇到错误

(TR3312). An error occurred during data retrieval using the DA Server

接下来,当然首先要检查一下iqd文件,再确保了iqd文件没有问题的情况下,我多多少少有些迷茫,于是就再看看报错的详情,点开Details看到下面的文字

Transformer中引用iqd作为数据源导入报错TR1907与TR3312-LMLPHP

需要修改D:\Program Files (x86)\ibm\cognos\c10\CS7Gateways\bin目录下cs7g.ini文件把文件后面的动态jdbc链接去掉,然后保存,重新导入iqd即可

[databases]
cognos_wxj=^User ID:^?Password:;LOCAL;OR;ORACLE@%s@(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 128.8.28.212)(PORT = 1524)))

(CONNECT_DATA =(SERVICE_NAME = cognos)))/%s@COLSEQ=IBM_JD_CNX_STR:^User ID:^?Password:;LOCAL;JD-

OR;URL=jdbc:oracle:thin:@//128.8.28.212:1524/cognos;DRIVER_NAME=oracle.jdbc.driver.OracleDriver

总结:iqd作为数据源的时候,在cognos connection中的连接字符串要去掉动态jdbc的那一部分,可以看出TR连接iqd是不支持动态连接的

顺便补充两个小问题:

1:首次iqd连不上数据源,需要在上面cs7g.ini文件中添加[databases]节点,节点名为链接名,内容为链接url值

2:transform中iqd内容预览乱码导致预览不显示,需要加入环境变量

NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK的值,无需重启电脑,需要重启transform即可。

05-11 20:26