Skip to main content

SharePoint List restore errors due to a mismatch of validation rules.

SharePoint List restore errors due to a mismatch of validation rules.

Problem description

During the restoration of lists with validation rules in SharePoint, data deemed "invalid" as per the rules fails to restore. This issue occurs because:

  • Validation rules are enforced during the restoration process.

  • Items created before the rules were implemented may not meet the validation requirements.

Cause

  • Validation rules applied to columns (e.g., "Acquired Date" and "Retired Date") require non-zero values.

  • Items created prior to these rules have empty values in these fields.

  • The restore process skips items failing the validation rules

  • The failed items were likely created before the SharePoint validation rule was imposed.

  • As a result, the list contains both "valid data" (meeting the rule) and "invalid data" (not meeting the rule), all of which we backed up.

  • Items that meet the rule, along with the rules themselves, restore successfully.

  • Functionally, there’s no impact on "valid" data or settings, as both get restored.

  • The only impact is on "invalid" data, per their rules.

Traceback

[2025-01-09 22:02:31,660] [ERROR] Skipping uploading attachment to list 738177d4-c0a6-4a57-b4df-42080617346a in site Error: Internal error. Response Code: 400 Text:{"error":{"code":"-2147024809, System.ArgumentException","message":{"lang":"en-US","value":"Item does not exist. It may have been deleted by another user."}}} (#100000001)
[2025-01-09 22:02:31,661] [ERROR] Skipping uploading attachment to list in site
Item Id 774 Error: Internal error. Response Code: 400 Text:{"error":{"code":"-2147024809, System.ArgumentException","message":{"lang":"en-US","value":"Item does not exist. It may have been deleted by another user."}}} (#100000001)
[2025-01-09 22:02:31,661] [ERROR] Error <class 'inSyncLib.inSyncError.SyncError'>:Internal error. Response Code: 400 Text:{"error":{"code":"-2147024809, System.ArgumentException","message":{"lang":"en-US","value":"Item does not exist. It may have been deleted by another user."}}} (#100000001).

Resolution

  1. Create a fresh list and define it with similar validation rules.

  2. Input fresh data into the new list.

  3. Back up the list and test restoration.

This approach should work seamlessly, demonstrating that valid data and settings are restored when validation rules are applied from the outset.

Did this answer your question?