-
-
wangsy 小试身手Lv3
发表于2019-3-13 15:52
悬赏200
未解决
需求描述:将变长表数据以列转行的形式按报表户初始化至一张固定表
现行方案:设置了JDBC取数,详情如图所示。现要将ihtrb_htdrb表(i中的变长表)中的D-I列,按照报表户,初始化至固定报表的3-8行。ihtrb_htdrb.B2字段数据与报表户id(固定表)数据相对应。
问题:在JDBC测试取数界面填入报表户,点击测试,测试结果与期望中一致。但是在实际任务中初始化时,初始化结果为空。
希望有了解的同事可以赐教,谢谢!


37个回答
本帖最后由 缱绻 于 2019-3-15 17:02 编辑
单个表元的取数用,QS()函数。 1、jdbc数据源设置关键字列
2、举例如下,例如QS("SBHTDR","","","15000@B2","")取出来的就是HBxxxx25
缱绻 发表于 2019-3-15 16:37
单个表元的取数用,QS()函数。 ...
您可能有些误会。
1.本次取数要实现的按报表户以行转列的规则初始化(或取数),每个单元格都设置取数未免有些繁琐;
2.目前的问题不在测试取数是否可以测试成功,之前提供给您的备份里测试取数是可以按照报表户将指定数据取出,但实际进了任务中初始化失败,所以我怀疑是不是在任务中,报表户传参失败?
不知道对此您是否有相应的解决方案?谢谢
wangsy 发表于 2019-3-18 09:35
您可能有些误会。
1.本次取数要实现的按报表户以行转列的规则初始化(或取数),每个单元格都设置取数未 ...
你现在是单个表元的取数啊,取数设置这里是列与列的对应关系

孤傲的旋律 发表于 2019-3-18 09:59
你现在是单个表元的取数啊,取数设置这里是列与列的对应关系
所以您的意思是,我有8个表元要取数就要在JDBC里设置8个取数,只在任务的取数设置里无法实现数据的对应关系吗?
wangsy 发表于 2019-3-18 10:05
所以您的意思是,我有8个表元要取数就要在JDBC里设置8个取数,只在任务的取数设置里无法实现数据的对应关 ...
是的。取消取数设置,直接写QS公式进行取数就可以实现你的需求
孤傲的旋律 发表于 2019-3-18 10:59
是的。取消取数设置,直接写QS公式进行取数就可以实现你的需求
感谢您的建议,但是我这么做的初衷是导入数据,用QS可以做到取历史数据,新增数据时就成了麻烦,而且我有很多任务需要做数据导入,这种方案工作量未免有些大,所以暂时不考虑用QS函数~
wangsy 发表于 2019-3-18 11:06
感谢您的建议,但是我这么做的初衷是导入数据,用QS可以做到取历史数据,新增数据时就成了麻烦,而且我有 ...
导入数据是什么意思,新增数据时会有什么麻烦呢,没有太懂。不管是取数设置中进行初始化,还是QS函数取数,都是取历史数据的啊
孤傲的旋律 发表于 2019-3-18 11:09
导入数据是什么意思,新增数据时会有什么麻烦呢,没有太懂。不管是取数设置中进行初始化,还是QS函数取数 ...
导入数据是指目前有历史数据要迁移至我们的平台,初始化只执行一次,以后数据还是要是要手动录入的,所以使用初始化方案是否比QS函数设置相对更便捷,以后无需再对表元进行调整?
wangsy 发表于 2019-3-18 11:24
导入数据是指目前有历史数据要迁移至我们的平台,初始化只执行一次,以后数据还是要是要手动录入的,所以 ...
其实感觉工作量都是一样的,而且公式还方便些,如果想手动录入数据的话,直接“关闭计算公式”就可以了

孤傲的旋律 发表于 2019-3-18 11:30
其实感觉工作量都是一样的,而且公式还方便些,如果想手动录入数据的话,直接“关闭计算公式”就可以了
...
如果用QS函数,我如何将报表户这个参数传进来呢?我看上面那位同事的回答,选取的E2作为关键字列,所以有了QS("SBHTDR","","","15000@B2","")这个条件,实际任务中,“15000@B2”这部分内容应该怎样填写?