反馈已提交

网络繁忙

当前为10.0版本文档,只有最新版本的文档支持在线编辑修改,如果想创建/编辑文档,请移步至 最新版帮助文档

同步/导入用户常见问题

  • 文档创建者:Wendy123456
  • 历史版本:12
  • 最近更新:Carly 于 2022-12-02
  • 1. 概述

    本文介绍 同步用户 时一些注意事项及报错。

    2. 次管无法添加/导入用户

    次级管理员在部分情况下无法添加用户,详情如下表所示:

    JAR包
    用户来源现象
     2020-01-15 到 2020-11-02未同步用户

    次级管理员只可见「添加用户」、「导入用户」按钮,不可见「同步用户」按钮

    开启了同步用户

    次级管理员不可见「添加用户」、「导入用户」、「同步用户管理」按钮,即用户列表上方无按钮

    2020-11-02及以后未同步用户

    次级管理员只可见「添加用户」、「导入用户」按钮,不可见「同步用户」按钮

    开启了同步用户次级管理员只可见「添加用户」、「导入用户」按钮,不可见「同步用户管理」按钮

    image.png

    3. 同步数据集字段不可选

    问题描述:

    创建的服务器数据集可以预览,但是在使用该数据集同步/导入用户时,没有字段可选,如下图所示:

    原因分析&解决思路:

    查看日志,发现报错:SQL ServerException:对象名' '无效。

    检查数据集的创建方式,例如存储过程类的服务器数据集,嵌套之后 SQL 执行失败。

    4. 同步结果面板报错

    配置了 ID 列后会进行一些 ID 校验以防入库时冲突。此时出错的数据也会列在结果面板中。下面罗列报错情况。

    4.1 ID 为空

    报错信息如下图所示:

    原因:勾选了 id 后,不允许出现 name 不为空,但是 id 为空的情况。如下图所示:

    4.2 与原有 ID 冲突

    报错信息如下图所示:

    原因:勾选 ID 之后更改用户名,但是不允许更改 ID,否则会报 ID 冲突的错误,比如原本 Alice 的 id 为 3,现在变动成 2 。

    4.3 ID 与其他对象重复

    报错信息如下图所示:

    原因:如下图所示,多个用户名使用了一个 id 时报错。

    4.4 对应多个 ID

    报错信息如下图所示:

    原因:如下图所示,当一个用户名却有多个 id 时报此错。

    5. 树数据集构建失败

    当同步数据集为树数据集时,往往会因为树数据集构建问题导致同步失败,下面列举各种情况:

    注:名词解释

    • 部门标记:构建树数据集时选择的原始标记字段。

    • 父部门标记:构建树数据集时选择的父标记字段。

    5.1 21300055-报表、DEC交互原始标记相同

    报错信息「报表、DEC交互原始标记相同」,如下图所示:

    1603957312138971.png

    原因:树数据集下,多个部门都用了一个部门标记,比如下图中 DEC 交互,报表的 did 都为 a12。如下图所示:

    image.png

    5.2 21300056-报表有多个直接父部门

    报错信息「报表有多个直接父部门」,如下图所示:

    1603957349892466.png

    原因:一个部门有多个父部门标记,比如下图中报表的 pid 有 a1,a2。

    image.png

    5.3 21300057-决策平台找不到对应父部门

    报错信息「树构建失败,决策平台找不到对应父部门」,如下图所示:

    1603957375900731.png

    原因:如果父部门标记为空,那么此部门就是根部门,如果不为空,且父部门标记找不到对应的部门,则报错。

    如下图所示,决策平台的 pid 为 a3,但是没有任何部门的 did 为 a3,也即没有该父部门:

    注:同步用户数据集时,若服务器数据集为 树数据集 ,顶层机构的父机构应为空值。

    image.png

    5.4 21300058-报表有多个原始标记

    报错信息「报表有多个原始标记」,如下图所示:

    1603957439837960.png

    原因:如果部门名相同,且父部门标记相同,那么说明这就是同一个部门,如果他们的部门标记不同,则报错,如下图中报表的 did 有两个:a13,a12。

    image.png

    5.5 21300059-父子结构死循环

    报错信息「决策报表,帆软软件,DEC研发构成父子结构死循环」,如下图所示:

    1603957503617079.png

    原因:如果部门 111 的父标记指向部门 11 ,部门 11 的父标记指向部门 1 ,部门 1 的父标记又指向部门 111 ,构成了环,则报错。

    如下图中帆软软件的父标记为 a111,指向 DEC 研发,决策平台的 pid 为 a1,指向帆软软件,DEC 研发的 pid 为 a11,指向决策平台。

    image.png

    5.6 21300063-名称与其他来源对象重复

    报错信息「名称与其他来源对象重复」,如下图所示:

    1605166347929235.png

    原因:导入树数据集的部门中存在和同步部门重复的数据,如先同步了树数据集 A,再导入树数据集 A 则会出现此报错。

    5.7 21300064-ID与其他来源对象重复

    报错信息「ID与其他来源对象重复」,如下图所示:

    1605166444746842.png

    原因:平台有内置部门2,首次同步一树数据集,选择保留权限更新,数据源中一同步部门1和内置部门2的ID相同,但名称不同,同步后会报错。

    6. ID 校验失败

    树数据集情况下,如果还勾选了部门 id,且部门 id 列并非部门标记列,还会做 id 校验工作,会导致全局失败。以下所有示例中部门标记列为 did,父部门标记列为 pid,部门 id 列为 depId。

    6.1 21300054-部门标记值与部门ID不一致

    报错信息「部门标记值与部门ID不一致」,如下图所示:

    注:2020-08-03 及之后的 JAR ,该错误码将不会出现。

    1603957895320224.png

    原因:如果部门标记为纯数字,比如 11,111,会直接作为 id 项插入到 finedb 的部门表中,此时如果平台又勾选了其他列作为部门 id,且部门标记值和勾选的部门 id 不一样,则报错。建议当数据源当部门标记为纯数字时,使用 sql 语句的字符串拼接一个英文字母。

    image.png

    6.2 21300053-ID为空

    报错信息「ID为空」,如下图所示:

    1603958020506195.png

    原因:树数据集情况下,勾选部门 id 后如果部门 id 为空,则直接全局报错。如下图所示:

    6.3 21300051-报表ID与其他对象重复

    报错信息「报表ID与其他对象重复」,如下图所示:

    1603958092257665.png

    原因:帆软软件-报表,与帆软软件-决策平台使用了相同的部门 id。如下图所示:

    6.4 21300050-报表对应多个ID

    报错信息「报表对应多个ID」如下图所示:

    1603958166405392.png

    原因:当部门存在多个部门 id 时会报此错,如上图中帆软软件-报表有 a12,a15 两个部门 id。如下图所示:

    6.5 21300052-决策平台和原有ID冲突

    报错信息「决策平台和原有ID冲突」,如下图所示:

    注:2020-06-08 及之后的 JAR ,该错误码将不会出现。

    1603958217805605.png

    原因:部门 id 发生改变了,会报错与原有部门 id 冲突

    7. 21300031-达到设定的中断值

    报错信息「21300031 - 本次同步用户数量将减少XX%(XX个),达到设定的中断值XX%。请检查数据源数据是否正常,或暂时关闭"异常数据中断同步"功能。」

    如下图所示:

    原因:

    同步用户高度依赖数据源,若数据源出现问题,例如被恶意清空数据库表,会导致同步到系统中的用户被清空,操作无法逆转。

    因此 FineReport 提供同步熔断策略。10.0.18 及之后版本的报表工程,新增「异常数据中断同步」按钮。

    管理员开启「异常数据中断同步」后,可设置用户数量减少达到X%,停止同步。X为1-100的正整数。

    例如系统中原有100个同步用户(不包含手动添加/导入的用户数),设置为30%,即同步减少30(100*30%)个用户及以上,就会停止本次同步。

    8. 21307213-非法节点

    安装并使用插件「同步LDAP域用户」后同步用户失败,报错信息:

    失败原因:21307213-非法节点

    用户在用户下:

    user1-->用户下用户

    部门在用户下:

    user2-->cn=用户下部门,cn=xxx,cn=xx,cn=roles,o=fanruan,dc=fr,dc=com

    角色在用户下:

    user3-->用户下角色」

    如下图所示:

    原因:

    LDAP服务器下的数据,存在一些用户数据节点非叶子节点,其下还存在用户 / 部门 / 角色数据节点,同步时检查数据结构会报错并终止同步LDAP用户任务。

    附件列表


    主题: 数据决策系统
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526