SharePoint Online list and library structure changes requires your K2 solutions to be resynchronized
KB001780
PRODUCT
Introduction
Microsoft occasionally makes changes to SharePoint Online structures by adding new fields to both new and existing lists and document libraries. Microsoft makes these changes globally across all customers and does so without any notice nor any option to opt-out.
Who will this impact?
SharePoint Online customers using any integrated K2 product.
What did Microsoft Change?
28 September 2017Microsoft added a new field to every list and document library as shown in the table.
Title | Internal Name | Entity Property Name | Hidden |
Compliance Asset Id | ComplianceAssetId | ComplianceAssetId | False |
Microsoft added five new fields to document libraries for the In Place Records Management feature as shown in the table.
Title | Internal Name | Entity Property Name | Hidden |
ID of the User who has the Set the Protection Tag | _ComplianceTagUserId | OData__ComplianceTagUserId | False |
Protection Action | _ComplianceFlags | OData__ComplianceFlags | True |
Protection Tag | _ComplianceTag | OData__ComplianceTag | True |
Protection Tag Modified | _ComplianceTagWrittenTime | OData__ComplianceTagWrittenTime | False |
Record | _IsRecord | OData__IsRecord | False |
- Open the K2 Application page of a document library:
- A warning stating "The List and SmartObject are out of sync. Regenerate SmartObjects" is displayed. You may see this at two separate times depending on when Microsoft makes these changes and when you browse to the K2 Application page:
K2 solutions built against SharePoint lists and document libraries require that the structure of those lists and libraries remain consistent to ensure data integrity between K2 and SharePoint and between multiple environments. As such, K2 has built a structure validation into the K2 Application page of every integrated list and library. When we detect that the structure has changed, either because you intended to make the change, or because Microsoft has forced a change, we let you know so you can decide what to do. If your solution is bound to a single environment, you can choose to ignore the change. However, if you wish to move your solution between environments or even between lists and libraries on the same environment, you will need to regenerate your SmartObjects to ensure the changes to the structure are reflected in all environments. You may also need to incorporate the changes into your forms, but that is only required if you’ve customized the forms.
Regenerate your SmartObjects- Click the K2 Application icon in the ribbon of the document library.
- You will see a warning at the top of the page.
- Click the Regenerate SmartObjects link.
You will also need to regenerate any packages you have created to incorporate the updated SmartObjects (and optionally Views and Forms).