I. Overview
This article introduces some precautions and errors when synchronizing users.
II. Sub-admininistrators cannot add/import users
In some cases, sub-administrators cannot add users. The details are shown in the following table:
JAR package | User source | Phenomenon |
---|---|---|
2020-01-15 to 2020-11-02 | Unsynchronized users | The sub-administrators can only see the "Add User" and "Import User" buttons, but the "Sync User" button is not visible. |
Syncchronized users turned on | The "Add User", "Import User", and "Sync User Management" buttons are not visible to the sub-administrators, that is, there is no button at the top of the user list. | |
2020-11-02 and later | Unsynchronized users | The sub-administrators can only see the "Add User" and "Import User" buttons, but the "Sync User" button is not visible |
Syncchronized users turned on | The sub-administrators can only see the "Add User" and "Import User" buttons, but the "Sync User Management" button is not visible. |
III. The sync dataset field is not selectable
Problem Description:
The created server dataset can be previewed, but when using the dataset to synchronize/import users, there are no fields to choose from, as shown in the following figure:
Reason analysis & solution ideas:
Check the log and found an error: SQL ServerException: Object name '' is invalid.
Check the creation method of the dataset, such as the server dataset of the stored procedure class, and the SQL execution fails after nesting.
IV. The synchronization result pane reports an error
After the ID column is configured, some ID verifications will be performed to prevent conflicts during storage. The data with errors at this time will also be listed in the result pane. The following lists the error situation.
1. ID is empty
The error message is shown in the figure below:
Reason: After the id is checked, the situation where the name is not empty but the id is empty is not allowed. As shown below:
2. Conflict with original ID
The error message is shown in the figure below:
Reason: After checking the ID, change the user name, but it is not allowed to change the ID. Otherwise, an ID conflict error will be reported. For example, demo's id originally was old-platform-user-37, but now it is changed to 9.
3. ID is duplicated with other objects
The error message is shown in the figure below:
Reason: As shown in the figure below, an error is reported when multiple usernames use one id.
4. Corresponding to multiple IDs
The error message is shown in the figure below:
Reason: As shown in the figure below, this error is reported when a user name has multiple ids.
V. Failed to build tree dataset
When the synchronization dataset is a tree dataset, synchronization failures are often caused by problems in the construction of the tree dataset. Various situations are listed below:
Note: Explanation of terms
Department tag: The original tag field selected when building the tree dataset.
Parent Department Tag: The parent tag field selected when building the tree dataset.
1. 21300055-Report, DEC Interact original identities are the same
The error message "Report, DEC Interact original identities are the same", as shown in the following figure:
Reason: Under the tree dataset, multiple departments are marked with a department. For example,the did of Marketing Department and Human Resources Department are both 11. As shown below:
2. 21300056-Report has multiple direct parent departments
The error message "Report has multiple direct parent departments", as shown in the figure below:
Reason: Report has multiple parent department tags. For example, the fid in the report in the figure below has a1 and a2.
3. 21300057-Decision-making plarform could not find the corresponding parent department
The error message "Decision-making platform could not find the corresponding parent department", as shown in the figure below:
Reason: If the parent department mark is empty, then this department is the root department. If it is not empty, and the parent department mark cannot find the corresponding department, an error will be reported.
As shown in the figure below, the pid of the Decision-making platform is a3, but the did of no department is a3, that is, there is no parent department:
Note: When synchronizing user datasets, if the server dataset is a tree dataset, the parent organization of the top organization should be a null value.
4. 21300058-The report has multiple original identities
The error message "Report has multiple original identities", as shown in the figure below:
Reason: If the department name is the same and the parent department label is the same, it means that this is the same department. If their department labels are different, an error will be reported. There are two did in the Report in the following figure: a12, a13.
5. 21300059-Parent-child structure infinite loop
The error message "Decision-making platform, Fanruan software, DEC R&D constitutes a parent-child structure inginite loop", as shown in the following figure:
Reason: If the parent tag of department 111 points to department 11, the parent tag of department 11 points to department 1, and the parent tag of department 1 points to department 111 again, an error is reported.
In the figure below, the parent tag of Fanruan Software is a111, which points to DEC R&D, the pid of the decision-making platform is a1, which points to Fanruan Software, and the pid of DEC R&D is a11, which points to the decision-making platform.
6. 21300063-Headquarter name is duplicated with other source objects
The error message "Headquarter name is duplicated with other source object", as shown in the figure below:
Reason: The department that imported the tree dataset has duplicate data with the synchronization department. If the tree dataset A is synchronized first, and then the tree dataset A is imported, this error will occur.
7. 21300064-ID is duplicated with other source objects
The error message "ID is duplicated from other source objects", as shown in the figure below:
Reason: The platform has a built-in department 2. When you synchronize a tree dataset for the first time, you choose to retain the permission to update. The ID of the first synchronization department 1 and the built-in department 2 in the data source are the same, but the names are different, and an error will be reported after synchronization.
VI. ID verification failed
In the case of the tree dataset, if the department id is also checked and the department id column is not a department mark column, id verification will also be performed, which will result in a global failure. In all the examples below, the department tag is listed as did, the parent department tag is listed as fid, and the department id is listed as depId.
1. 21300054-Department tag value is inconsistent with the department ID
The error message "The department tag value is inconsistent with the department ID" is shown in the figure below:
Note: The error code will not appear in the JAR on and after 2020-08-03.
Reason: If the department is marked as a pure number, such as 11, 111, it will be directly inserted as an id item into the department table of finedb. At this time, if the platform selects other columns as the department id, and the department mark value and the selected department If the id is different, an error will be reported. It is recommended that when the data source is marked as a pure number, use the string of the sql statement to splice an English letter.
2. 21300053-ID is empty
The error message "ID is empty", as shown in the figure below:
Reason: In the case of the tree dataset, if the department id is empty after checking the department id, a global error will be reported directly. As shown below:
3 .21300051-Report ID is duplicated with other objects
The error message "Report ID is duplicated.", as shown in the figure below:
Reason: FanRuan software-report, and FanRuan software-decision platform use the same department id. As shown below:
4. 21300050-The report corresponds to multiple IDs
The error message "Report corresponds to multiple IDs" is shown in the figure below:
Reason: This error will be reported when there are multiple department IDs in the department. As shown in the figure above, FanRuan Software-the report has two department IDs a12 and a15. As shown below:
5. 21300052-The decision-making platform conflicts with the original ID
The error message "The decision-making platform conflicts with the original ID", as shown in the figure below:
Note: For JARs on and after 2020-06-08, this error code will not appear.
Reason: The department id has changed, and an error will be reported to conflict with the original department id
VII. 21300031- reached the set interrupt value
Error message "21300031-The number of synchronized users this time will be reduced by XX% (XX), reaching the set interrupt value XX%. Please check whether the data source data is normal, or temporarily turn off the "abnormal data interrupt synchronization" function."
As shown below:
Reason:
Synchronized users are highly dependent on the data source. If there is a problem with the data source, for example, a database table is maliciously emptied, the users synchronized to the system will be emptied, and the operation cannot be reversed.
Therefore, FineReport provides a synchronous fusing strategy. For report projects of 10.0.18 and later versions, the button "Synchronize Abnormal Data Interruption" is added.
After the administrator turns on "Synchronization Interrupted by Abnormal Data", the number of users can be reduced by X% to stop the synchronization. X is a positive integer from 1-100.
For example, the original 100 synchronized users in the system (not including the number of manually added/imported users) are set to 30%, that is, if the synchronization is reduced by 30 (100*30%) users or more, the synchronization will be stopped.
VIII. 21307213-Illegal Node
After installing and using the plugin "Synchronize LDAP Domain Users", user synchronization fails, and an error message is reported:
Reason for failure:21307213-illegal node
The user is under the user:
user1-->user under user
The department is under the user:
user2-->cn=user department,cn=xxx,cn=xx,cn=roles,o=fanruan,dc=fr,dc=com
The role is under the user:
user3-->user role"
As shown below:
Reason:
In the data under the LDAP server, there are some user data nodes that are not leaf nodes, and there are user/department/role data nodes under them. Checking the data structure during synchronization will report an error and terminate the LDAP user synchronization task.