历史版本2 :关联失败排查 返回文档
编辑时间:
内容长度:图片数:目录数:
修改原因:
1. 概述编辑
1.1 问题现象
配置关联之后更新,更新日志产生报错,报错截图示例如下图所示:
报错关联生成错误 - 与 零售行业/销售明细[店号] 的关联生成失败,关联字段[店号]数据重复,如下图所示:
报错关联生成错误:RelationPrimaryFieldNotDistinctException: 错误代码:62400405业务包业务包中数据连接_流水数据表的[店名]字段(和业务包业务包店铺数据表的[店名]字段)不符合一对多/多对一/一对一对应关系,无法成功生成关联关系: packageName :业务包 entryInfoName :店铺,如下图所示:
报错左右合并出现同样的数据重复出现或是数据总行数变多。
1.2 原因分析
出现重复数据,本该字段唯一的字段不是唯一,导致报错。
2. 解决方案编辑
通过示例展示排查方法,示例中表「关联测试」与表「门店维度」的关联如下图所示:
2.1 添加组件
1)将关联的两张表分别制作分组表,将关联字段或左右合并的字段添加进横轴,记录数添加进纵轴,如下图所示:
添加完组件后如下图所示:
2)将两个组件的记录数进行降序排序,如下图所示:
排序后记录数最大值在首行,如下图所示:
2.2 排查故障
通过查看记录数最大值排查表格问题:
1)若使用 N:1或1:N 关联,关联表为 1 的一端分组表组件中,记录数值最大为 1 ,否则报错。
2)若使用 1:1 关联,关联关系两端的表记录数最大值均需要小于等于 1 ,否则报错。
3)若是使用左合并,右表合并的字段唯一,记录数最大为 1 ;使用右合并,左表合并的字段唯一,记录数最大为 1 ,否则报错。
在该示例中,「关联测试」:「门店维度」=1:N 。所以当「门店维度」中「店名」的字段唯一即「记录数」字段中最大值为 1 时,不会报错。