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.

Please contact your Microsoft representative if you are concerned with fields being randomly added to your list and document library solutions without your knowledge or ability to opt-out.

Who will this impact?

SharePoint Online customers using any integrated K2 product.

What did Microsoft Change?

28 September 2017

Microsoft 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
25 August 2016

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
  1. Open the K2 Application page of a document library:
    Image
  2. 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:
    Image

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
  1. Click the K2 Application icon in the ribbon of the document library.
  2. You will see a warning at the top of the page.
  3. Click the Regenerate SmartObjects link.
    Image
You can optionally regenerate your Views and Forms depending on the level of customization you’ve applied.
Regenerate your Package

You will also need to regenerate any packages you have created to incorporate the updated SmartObjects (and optionally Views and Forms).