none
Content Organizer - "Something went wrong"

    Question

  • When uploading documents to a site with Content Organizer Rules, the document is routed to the correct library based on the metadata (site column) choices, but the system displays the "Something went wrong message" and a copy of the document stays in the Drop Off Library.

    This only happens in one site collection. I can create a new site collection in the same web app and it all works using the same basic site columns (recreated in the new site collection) and same basic rules.

    A new subsite in the broken site collection has the same issue.

    I have deleted the site column (simple choice column) and recreated and have the same issue.

    The errors that I am seeing in ULS for both the target document library and the Drop Off Library:

    Target Library: Invalid data has been used to update the list item. The field you are trying to update may be read only.

    Application error when access /cotestsite/DropOffLibrary/Forms/EditForm.aspx, Error=Invalid data has been used to update the list item. The field you are trying to update may be read only.


    Jim Cason adaptivesp.com

    Wednesday, April 12, 2017 6:46 PM

Answers

  • Hi jimcason,

    As the issue only occurs for a particular site collection, my suggestion is as below:

    1. Save the current site collection as a template, and create a new site collection based on the custom template. In the new site collection, check the issue status. If the issue disappear, copy the content to the new site collection.
    2. If the issue persists in the new site collection in step 1, just create a new clean site collection, and migrate the content to the new one. Then delete the old site collection. 

    Best Regards,

    Lisa Chen


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com

    Wednesday, April 19, 2017 7:26 AM
    Moderator

All replies

  • Hi jimcason, 

    Please compare the difference between the content organizer rule of the two site collections. 

    Compare the difference between the target library and source library of the two site collections.  

    Refer to the following to do a test in your issued site collection and compare the results: 

    1. Create a new document library in the issued site collection. 
    2. Create a choices site column named "mm" and add it to the Document content type. 
    3. Create a new content organizer rule on the newly created document library with the following condition:


    Best Regards, 

    Lisa Chen 


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com

    Thursday, April 13, 2017 8:05 AM
    Moderator
  • Lisa - Thanks for the response.

    In my troubleshooting, I have created a subsite in issued site collection and a new site collection that are identical, using identical Choice Site Columns and Content Types. I then created identical libraries (standard document libraries), added the Content Type and choice columns, and created rules that are the same.

    Just like in your example, they are choice columns and based on the choice (DeptA, DeptB, DeptC), it routes the document to that library.

    Following your example, I created a Choice column in the Document Content Type of the issued site collection:

    mm Choice Column:

    The new Document Library in the issued site collection has the Document Content Type, so I created the Rule to route the document there based on the property "mm" equal to "aa" as a choice.

    When I upload the document to the Drop Off Library, I choose the Document content type and set the field mm to aa.

    When I hit Submit, I get the "Something went wrong" message (as before):

    In ULS, it is the same message as before about "Invalid data has been used to update the list item. The field you are trying to update may be read only."

    The document is routed to the new document library as specified in the Rule:

    but remains in the Drop Off Library:

    I have recreated this scenario in new site collections with no issue, it is just this one site collection. I have made sure that the new site collection are using the same site template, same master page and have the same features deployed.

    Thank you,

    Jim Cason


    Jim Cason adaptivesp.com

    Friday, April 14, 2017 2:57 PM
  • Hi jimcason, 

    It seems strange, the issue exists in just one site collection.

    what is the template of the issued site collection?

    From the error message "Invalid data has been used to update the list item". so you should pass the right data type for all field. Check if you using lookup field then you should pass data type as SPFieldLookupValue, People and group =SPUser , date =datetime.

    Best Regards,

    Lisa Chen


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com

    Monday, April 17, 2017 1:55 AM
    Moderator
  • Lisa - Yes, very strange that it only occurs in the one site collection. Starting to think there is something corrupted in the site collection itself.

    The field I am using for the rule is a simple choice field. No lookup fields in the list. The error seems to be on the Drop Off Library.

    This is the error in the ULS logs:

    Application error when access /cotestsite/DropOffLibrary/Forms/EditForm.aspx, Error=Invalid data has been used to update the list item. The field you are trying to update may be read only.   at Microsoft.SharePoint.Library.SPRequestInternalClass.AddOrUpdateItem(String bstrUrl, String bstrListName, Boolean bAdd, Boolean bSystemUpdate, Boolean bPreserveItemVersion, Boolean bPreserveItemUIVersion, Boolean bUpdateNoVersion, Int32& plID, String& pbstrGuid, Guid pbstrNewDocId, Boolean bHasNewDocId, String bstrVersion, Object& pvarAttachmentNames, Object& pvarAttachmentContents, Object& pvarProperties, Boolean bCheckOut, Boolean bCheckin, Boolean bUnRestrictedUpdateInProgress, Boolean bMigration, Boolean bPublish, String bstrFileName, ISP2DSafeArrayWriter pListDataValidationCallback, ISP2DSafeArrayWriter pRestrictInsertCallback, ISP2DSafeArrayWriter pUniqueFieldCallback)     at Microsoft.SharePoint.Library.SPRequest.AddOrUpdateItem(String bstrUrl, String bstrListName, Boolean bAdd, Boolean bSystemUpdate, Boolean bPreserveItemVersion, Boolean bPreserveItemUIVersion, Boolean bUpdateNoVersion, Int32& plID, String& pbstrGuid, Guid pbstrNewDocId, Boolean bHasNewDocId, String bstrVersion, Object& pvarAttachmentNames, Object& pvarAttachmentContents, Object& pvarProperties, Boolean bCheckOut, Boolean bCheckin, Boolean bUnRestrictedUpdateInProgress, Boolean bMigration, Boolean bPublish, String bstrFileName, ISP2DSafeArrayWriter pListDataValidationCallback, ISP2DSafeArrayWriter pRestrictInsertCallback, ISP2DSafeArrayWriter pUniqueFieldCallback)     at Microsoft.SharePoint.SPListItem.AddOrUpdateItem(Boolean bAdd, Boolean bSystem, Boolean bPreserveItemVersion, Boolean bNoVersion, Boolean bMigration, Boolean bPublish, Boolean bCheckOut, Boolean bCheckin, Guid newGuidOnAdd, Int32& ulID, Object& objAttachmentNames, Object& objAttachmentContents, Boolean suppressAfterEvents, String filename, Boolean bPreserveItemUIVersion)     at Microsoft.SharePoint.SPListItem.UpdateInternal(Boolean bSystem, Boolean bPreserveItemVersion, Guid newGuidOnAdd, Boolean bMigration, Boolean bPublish, Boolean bNoVersion, Boolean bCheckOut, Boolean bCheckin, Boolean suppressAfterEvents, String filename, Boolean bPreserveItemUIVersion)     at Microsoft.Office.RecordsManagement.RecordsRepository.EcmDocumentRouter.UpdateProperties(SPFile fileFinal, Hashtable properties, Boolean resetLookupIDs, Boolean isDestWebAppClaims)     at Microsoft.Office.RecordsManagement.RecordsRepository.EcmDocumentRouter.SaveFileToFinalLocation(EcmDocumentRoutingWeb edrWeb, SPFolder targetFolder, String originalSrcUrl, String fileName, Hashtable fileProperties, Stream fileStream, SPUser author, SPUser originalUser, DateTime timeCreated, DateTime timeLastModified, String checkInComment, Boolean overrideVersioning, Int32 uniqueFileTrialCount, Boolean resetLookupIDs)     at Microsoft.Office.RecordsManagement.RecordsRepository.EcmDocumentRouter.SaveFileToFinalLocation(SPWeb contextWeb, EcmDocumentRouterResultProperties resultProps, String originalSrcUrl, Hashtable itemProps, Stream fileStream, SPUser author, SPUser originalUser, DateTime timeCreated, DateTime timeLastModified, String checkInComment, Int32 uniqueFileTrialCount, Boolean resetLookupIDs, SPFile& fileFinal)     at Microsoft.Office.RecordsManagement.RecordsRepository.EcmDocumentRouter.RouteFileNowInternalToWeb(SPListItem itemToRoute, SPFile fileToRoute, Stream fileContent, Hashtable itemProps, String finalDestUrl, EcmDocumentRouterResultProperties resultProps, SPUser originalUser, String checkInComment, String& routedDestination)     at Microsoft.Office.RecordsManagement.RecordsRepository.EcmDocumentRouter.RouteFileToFinalLocationNowAsSystem(SPListItem itemToRoute, SPWeb currentParentWeb, SPUser originalUser, String checkInComment, String& routedDestination, ExternalRoutingResultProperties& externalRouterProperties)     at Microsoft.Office.RecordsManagement.Controls.RouteFileButton.<>c__DisplayClass6.<SaveItem>b__0(SPSite site, SPWeb web, Boolean isNewUserToken)     at Microsoft.SharePoint.Publishing.CommonUtilities.<>c__DisplayClass9.<RunWithElevatedSiteAndWebEx>b__7(Boolean elevated)     at Microsoft.SharePoint.SPSecurity.<>c__DisplayClass5.<RunWithElevatedPrivileges>b__3()     at Microsoft.SharePoint.Utilities.SecurityContext.RunAsProcess(CodeToRunElevated secureCode)     at Microsoft.SharePoint.SPSecurity.RunWithElevatedPrivileges(WaitCallback secureCode, Object param)     at Microsoft.SharePoint.SPSecurity.RunWithElevatedPrivileges(CodeToRunElevated secureCode)     at Microsoft.Office.RecordsManagement.Controls.RouteFileButton.SaveItem()     at Microsoft.SharePoint.WebControls.SaveButton.OnBubbleEvent(Object source, EventArgs e)     at System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args)     at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

    Any thoughts on this entry in ULS?

    Thanks.

    Jim


    Jim Cason adaptivesp.com

    Monday, April 17, 2017 1:50 PM
  • Hi jimcason,

    As the issue only occurs for a particular site collection, my suggestion is as below:

    1. Save the current site collection as a template, and create a new site collection based on the custom template. In the new site collection, check the issue status. If the issue disappear, copy the content to the new site collection.
    2. If the issue persists in the new site collection in step 1, just create a new clean site collection, and migrate the content to the new one. Then delete the old site collection. 

    Best Regards,

    Lisa Chen


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com

    Wednesday, April 19, 2017 7:26 AM
    Moderator
  • Hi jimcason,

    Is there something update?

    Please remember to mark the reply as an answer if it helps.

    Have a nice day!

    Best Regards,

    Lisa Chen

    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com

    Monday, April 24, 2017 9:33 AM
    Moderator
  • I created a new web application, migrated that site collection to the web application and was able to create new sub site with working Content Organizer. Good news is that the customer was wanting to do a SP Consolidation to this new web app and URL anyway... Never did discover root cause, but have a working site collection.

    Just to test, I did migrate the subsite from the old site collection that was having the issue and it had the same issue once migrated. Deleted it from new site collection and everything is well.


    Jim Cason adaptivesp.com

    Saturday, May 27, 2017 1:47 PM