集成方案配置聚合运算if(xxxx=xxxx),字段取数使用REF.属性,映射目标字段为空问题解析。原创
金蝶云社区-徐德光
徐德光
0人赞赏了该文章 10次浏览 未经作者许可,禁止转载编辑于2024年08月23日 18:23:58

问题描述:

    集成方案配置了聚合运算:if(expenseitem=100019,100010,100011) 源字段取数使用REF.属性,通过执行日志看到,转换后的目标数据与预期聚合运算的结果不一致,目标字段和源字段无法完成id值映射比较。

image.png

启动方案执行日志如下:

    实际想要结果为目标bussesExpenseTax字段应该为108.170000000,但转换结果为null

image.png

问题解析:

    聚合运算这块,不支持基础资料.属性作为判断条件,因为之前仅取了expenseitem表头属性,因此取值默认仅取id属性,这意味着聚合运算虽然可以正常工作,但在后续的个性化需求调整中,我们需要从 expenseitem 中获取更多属性(如 name 等)。在这种情况下,聚合运算的原始逻辑会遇到问题,因为此时从 expenseitem 中获取的实际值是一个HashMap,而不再是简单的 id 无法通过if(expenseitem=100019,100010,100011)这种方式直接获取expenseitemid

解决方案:

涉及到REF.属性比较直接利用来源数据处理脚本,自定义个属性承接REF.属性即可,然后同步将聚合运算逻辑的判断值同步改下即可。

image.png

赞 0