Skip to content

Understanding Content Types Sync Engine

This article explains the basics of the Content Types Sync Engine in Brief Connect and how it works in relation to SharePoint.

A Record Type in Brief Connect has a 1:1 mapping to a SharePoint Content Type. Each Record Field associated with a Record Type must have a corresponding SharePoint Site Column associated with the content type.

Configuration Process

There is a two-stage process to customise the configuration of Record Types and fields:

  1. Configuration Change: The configuration must first change in the associated RecordTypes and RecordFields tables.
  2. Synchronisation: Next, we must synchronise the configuration between the RecordTypes and RecordFields with associated Content Types and Site Columns. Additionally, Site Columns should be mapped to the Site's Search Schema to allow for column sorting and filtering on the Dashboard, ensuring correct search behaviour.

Sync Functionality

To assist with the synchronisation process, Brief Connect includes a /ContentTypes endpoint in the web API resource. When a POST request is successfully received by this endpoint, a sync function will run, querying Azure Table Store to:

  • Check for New Record Types: Programmatically create new Content Types in SharePoint.
  • Check for Modified Record Types: Update Content Type settings in SharePoint for existing Record Types.
  • Check for New Record Fields: Create new Site Columns in SharePoint and associate them with the Content Type defined in the RecordField's PartitionKey.
  • If the field has a FieldType value corresponding to a Managed Metadata field, and the DataSource value is empty or the DataSourceName value has been set, the function will search for a Term Set within the Term Group for the Brief Connect Site Collection. If found, it will write the GUID/ID to the DataSourceName value for the RecordField. If no Term Set with the same name as defined in DataSourceName exists, an error will be written to the Log field for the RecordField.
  • Additionally, the Site Column is mapped to a managed property and incorporated into the SharePoint Search Schema.
  • Check for Modified Record Fields: Update existing Site Columns in SharePoint and associate them with the Content Type defined in the RecordField's PartitionKey. This will also synchronise any changes to DataSource mappings or SharePoint Search Managed property names.