Post Installation Steps
Once the installation has been executed, a metadata structure needs to be prepared before MatchPoint Snow can be used. The following sub-sections of this chapter provide more information.
Search Service Application
The general setup and configuration of the search service application do not need to be modified and should be done according to Microsoft best practices.
Some additional managed properties are required for MatchPoint Snow. Please ensure that the following properties are available on the search service application:
Managed Property | EnabledForScoping |
HasMultipleValues |
RespectPriority |
Searchable |
Retrievable |
Sortable |
Queryable |
Refinable |
CompleteMatching |
Type |
---|---|---|---|---|---|---|---|---|---|---|
MPSNOWAuthor Author, MailFrom, Mail:6 |
✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | - | 1 |
MPSNOWContent ows_Content |
✓ | - | - | - | ✓ | - | - | - | - | 1 |
MPSNOWContentData ows_ContentData |
✓ | - | - | - | ✓ | - | - | - | - | 1 |
MPSNOWCreated Office(12), Basic(15) |
✓ | - | ✓ | - | ✓ | ✓ | ✓ | ✓ | - | 4 |
MPSNOWLastModifiedTime ows_Modified, LastSavedDateTime, Basic(14), Basic(16), lastaccessed | ✓ | - | ✓ | - | ✓ | ✓ | ✓ | ✓ | - | 4 |
MPSNOWDefinitionId ows_DefinitionId |
✓ | - | - | - | ✓ | - | ✓ | - | - | 2 |
MPSNOWDescription ows_MP_Description |
✓ | - | - | ✓ | ✓ | - | - | - | - | 1 |
MPSNOWDueDate ows_DueDate, ows_q_DATE_DueDate |
✓ | - | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | - | 4 |
MPSNOWEventDate ows_EventDate, ows_q_DATE_EventDate |
✓ | - | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | - | 4 |
MPSNOWFullPostBody ows_SearchContent |
✓ | - | - | - | ✓ | - | ✓ | - | - | 1 |
MPSNOWHashTags ows_HashTags |
✓ | ✓ | - | ✓ | ✓ | - | ✓ | ✓ | - | 1 |
MPSNOWIconUrl ows_MP_IconUrl |
✓ | - | - | - | ✓ | - | - | - | - | 1 |
MPSNOWLikesCount ows_LikesCount |
✓ | - | - | ✓ | ✓ | ✓ | ✓ | ✓ | - | 2 |
MPSNOWPeopleList ows_PeopleList |
✓ | - | - | - | ✓ | - | - | - | - | 1 |
MPSNOWPostAuthor ows_PostAuthor |
✓ | - | - | ✓ | ✓ | - | ✓ | ✓ | - | 1 |
MPSNOWRootPostOwnerID ows_RootPostOwnerID |
✓ | - | - | ✓ | ✓ | - | ✓ | ✓ | - | 1 |
MPSNOWSiteUrl ows_SPSiteURL |
✓ | - | - | - | ✓ | - | ✓ | - | ✓ | 1 |
MPSNOWWorkspaceUrl ows__MP_WebUrl |
✓ | - | - | - | ✓ | - | - | - | ✓ | 1 |
MPSNOWMediaLink ows_MediaLink, ContentURI |
✓ | - | - | - | ✓ | - | - | - | - | 1 |
MPSNOWMediaLink ows_MediaLink, UISnippet |
✓ | - | - | - | ✓ | - | - | - | - | 1 |
MPSNOWMediaLink ows_MediaAction, ClickUrl |
✓ | - | - | - | ✓ | - | - | - | - | 1 |
MPSNOWFileExtension ows_FileType, ows_File_x0020_Type, FileExtension |
✓ | - | ✓ | - | ✓ | - | ✓ | ✓ | - | 1 |
MPSNOWLogoUrl ows_MP_LogoUrl |
✓ | - | - | - | ✓ | - | - | - | - | 1 |
After creating the Managed Properties, please execute a full crawl. Also, it is recommended to enable either continuous crawling or to specify a crawl schedule for incremental crawling.
Run the Cmdlet Add-MPSManagedProperties
that will create all managed
properties, which do not yet exist.
It doesn't touch existing properties, in order not to break any
potential modifications. In case you want to ensure all managed
properties are up to date, you can manually delete them before running
the script.
Note that this script has already been executed if you chose to use the automated installation script: ..\2_Installation\3_MatchPoint_Snow\Install\Install.ps1
Environments with many Workspaces
If the environment has a lot of workspaces (default: above 5000), the list view threshold of SharePoint is reached. Due to this limitation some MatchPoint functionality cannot work correctly anymore (e.g. WorkspaceProvider). To fix this issue all related components have to access the data over the SharePoint Search instead of accessing the list directly.
To make Snow use the Search functionality instead of accessing the list directly, you have to perform the following steps:
- Workspace aggregation should be done in a search based manner. This is prepared in Snow and can be done by replacing some configuration files. Namely the ones that exist with a "_Search" suffix.
- Use the MatchPoint Content Enrichment Web Service (documented in the "MatchPoint Installation Guide" within the chapter "Additional Installation Steps")
- Change all search based refiners to use the managed property maintained by the Content Enrichment Service (CompositeRefinementConfiguration, NativeRefinementSettings, TagSetting)
- Set
ProviderType
toSearchDataProvider
in allWorkspaceRelationFields
in all relevant workspace template configurations.
You can also use the cmdlet Set-MPSWorkspaceAggregation
to automate some of the steps above.
The cmdlet will change all workspace aggregation configuration files to use SearchDataProvider
s
and enable the NativeRefinementSettings in the corresponding refinement configs.
How the cmlet works
When running Set-MPSWorkspaceAggregation
, the cmdlet will look through the configuration files that handle the aggregation of workspaces.
For each file it will take the contents of the file with the "_Search" or "_AggregationModeBackup" suffix according to the aggregation mode (Search or List/Site) and place them inside the active file.
Cmdlet parameters
-SnowflakeId
:
Specify the ID of the snowflake you are targeting
-Mode
:
Specify the aggregation mode you want. List, Site or Search
-WebApp
:
Specify the URL of the web application where the snowflake is installed
In order to obtain the Snowflake ID, go to the snowflake configuration and toggle the view to see the contents of the XML file.
Under the root node, you will find the ID between the aptly named ID
tags.
e.g. Setting the workspace aggregation mode in MatchPoint snow to search:
Set-MPSWorkspaceAggregation -SnowflakeId MatchPointSnow -Mode Search -WebApp http://demo.mp.local
The files that are subject to change are specified inside the Snowflake Configuration class by overriding the GetWorkspaceAggregationFiles
method.
This method returns an object with the following properties:
WorkspaceAggregationModeConfigFiles
: specifies the configuration files that will be replaced by their related "_search.xml" files.WorkspaceTemplateAggregationModeConfigFiles
: specifies the WorkspaceTemplate configuration files. TheirWorkspaceRelationFields
will have theirProviderType
changed toSearchDataProvider
.RefinementAggregationModeConfigFiles
: specifies the Refinement Configuration files.
Notes:
- The cmdlet will not automatically install the MatchPoint Content Enrichment Web Service!
- The version history of the active file will be kept by using this cmdlet.
- After update, if _AggregationModeBackup files exist, make sure to sync the original files with the _AggregationModeBackup. This is required only if there is in plan to switch back to List WorkspaceAggregation Mode.
MatchPoint Snow Metadata Concept
MatchPoint Snow uses a metadata model that leverages the functionality of MatchPoint tags. There are three categories of tags:
- System: Contains an auto-generated structure of tags that cannot be modified. Examples: the root tags of workspaces, meetings and snowflakes.
- Governance: Contains a static structure of tags that cannot be modified. Examples: classification, approval, review, status, decommissioning, targeting and priority.
- Business Topic: Contains a tag structure that can be managed within various SharePoint lists on the MatchPoint Snow "Admin site". Examples: organization, location, relation, product, process and document type.
Prepare Business Tags
The business topic tags are managed within various lists on the "Admin
site". These lists are created by the feature
Colygon.MatchPoint.Snow.Metadata
and therefore are available only if the
feature is enabled on the site.
The initial metadata structure can be created in different ways:
- Manually, by creating the items directly within the lists
- Semi-automatic, by using the provided Excel spreadsheet This is recommended in "productive" scenarios: business users can specify the metadata model "offline" using the spreadsheet. Administrators can import the metadata model into the list by using copy/paste.
- Automatic, by importing data into the lists using the provided
PowerShell script.
This is recommended for demo and test environments: a structure of tags is imported into the lists from a set of SharePoint backup files (cmp files).
A script for importing the "default" structure is located
at: ..\2\_Installation\4_Post_Deployment_Steps\Import-Lists.ps1
The Excel spreadsheet is located at: ..\2_Installation\4_Post_Deployment_Steps\BusinessTopics.xlsx
Import the Metadata Structure
All three tag categories are imported using MatchPoint tag importer configurations. For the initial import of the metadata, the following steps are to be executed:
- Import the static tag structure (incl. Governance tags)
Execute-MPTimerJob -WebApplication <WebAppUrl> -FileName MPSnow.Tags.Static.xml -Type StaticTagImporterConfiguration
- Import system tags
Execute-MPTimerJob -WebApplication <WebAppUrl> -FileName MPSnow.Tags.System.xml -Type TagImporterConfiguration
- Import demo business tag model (optional)
Execute-MPTimerJob -WebApplication <WebAppUrl> -FileName MPSnow.Tags.BusinessTopic.xml -Type TagImporterConfiguration
A script for running the tag importers is located at: ..\2_Installation\4_Post_Deployment_Steps\Import-Tags.ps1
After the initial import, it is recommended to configure a schedule for automated update of the business topic tags. Please refer to the MatchPoint technical reference for information on how to schedule timer jobs.
Please note that only the business tag model is optional. Therefore, the tag importers for governance tags and systems tags have to be executed before MatchPoint Snow can be used.
Compatibility with Microsoft Project Server
If you install Microsoft Project Server on your SharePoint Farm, you have to add the following web.config to Snow's UserControl directory in the 15 hive.
TEMPLATE\LAYOUTS\Colygon.MatchPoint.Snow\usercontrols\web.config
:
<?xml version="1.0" encoding="utf-8">
<configuration>
<system.web>
<pages>
<namespaces>
<remove namespace="Microsoft.Office.Project.PWA" />
</namespaces>
</pages>
</system.web>
</configuration>
Use SharePoint Search Center for Advanced Search
As a prerequisite for this step, please follow the steps described in the MatchPoint Installation Guide in the "Additional Installation Steps" chapter in section "SharePoint Search Center with MatchPoint Tags".
Please note, that it is suggested to create the Search Center as a sub web of the MatchPoint Base Site Collection.
To include this Search Center in MatchPoint Snow the following actions are to be performed:
- Change the look of the Search Center.
Choose the Snow Master (mpsnow.master) and the Snow
color (mpsnow.spcolor) file on the "Change the Look" page. This
requires, that the following features are activated:
- Colygon.MatchPoint.Snow.MasterPage (web scoped)
- Colygon.MatchPoint.Snow.Theme (site-collection scoped)
- Adjust the links in MPSnow.Search.xml to point to the Search Center Web.
Limit the Search to Snow Content. The preferred way to achieve this is to configure a Result Source on the SSA with a query like
{searchTerms} AND MATCHPOINTTAGS:"(xy1234)"
"(xy1234)" is the Tag Id of the "User Searchable" tag. Use this Result Source in results web part of the Search Center (Edit Page > Results Web Part Properties > Change Query)
To get the tag ID, use following expression in the MatchPoint expression console:
MPUtility.GetTag(ProviderIds.MPSnow_x002E_System_x002E_Settings, "UserSearchable").Id
An alternative is to adjust the Query in the properties of the Search Center's results web part directly (Edit Page > Results Web Part Properties > Change Query).
- Add contextual actions (User Control) Web Part to the results web
part if desired (
MPSnow.ESC.ContextualActions.xml
).
Configure MatchPoint Snow Widgets
Widgets must be configured after installation, otherwise they are not available to users.
The MPSnow.Tags.System timer job must run before the widgets can be made available.
To make a widget available to users the following actions are to be performed:
- Go to the Snow Site Contents
- Open the PortalMyContentTeasers list
- Open the desired list item (widget) in edit mode
- Add the tag corresponding to the widget in the Tags field.
In the MatchPoint Administration Site, in the Tags.ContentSubject list there is a tag for every widget.
These tags will be imported by the aforementioned timer job.
- Save
Repeat the steps above for every widget that you wish to make available to the users.
The display order of the widgets can be changed by setting the priority in the Priority field.