This is the second post of a three part series, if you missed it, here’s Part 1. This post will go into the details of taking the User Profile Properties we created the last time around, and making sure that they’re available to us in Search.
As a review, here’s where we are:
Run an incremental crawl
If you haven’t already, be sure to run a full import on your user profiles (This should be done after you’ve added all your custom profile properties from step one) Assuming that a full import has run, the next step is to run a crawl on whatever content source is crawling people. 9 times out of 10, this would be the ‘Local Office SharePoint Server Sites’ content source. This can be done by going to your Search Administration page, clicking on ‘Content Sources’ then selecting ‘Start Incremental Crawl’ from the ‘Local Office SharePoint Server Sites’ context menu.
After the crawl has completed, it should have picked up all of your newly defined user profile properties as a crawled property. Next, we’ll want to use those newly crawled properties in the creation of our managed properties. The managed property will (ultimately) be used to return information about a user in the search results.
Add mapped profile properties as managed properties
To create a new Managed Property, navigate to your SSP management page. From there, click on Search Administration, and then click on ‘Metadata properties’. Once at the Metadata Property Mappings window, click on the ‘New Managed Property’ link, which will take you to a screen similar to the one shown below:
This is where you will be defining the name (to be used in search) of all your people profiles. Personally, I like to use the same name as that returned by the crawled property. This is due to the fact that I handled the naming of the property when I created it. It simply makes life easier to remember only one property name that to track the property through all phases (AD, Profile Property, Crawled Property, Managed Property, XSLT variable). In the screenshot above, I have created a managed property for Street Address. Assuming you’re following my advice above, you will use the same profile property name for naming the managed property. In my example, this yields a Property name of: “StreetAddress”. Filling in a description is strictly optional, I have elected not to do so in my example. Be sure to leave the ‘Text’ radio button checked, as this will act as a filter on crawled property search we’re about to run. [Obviously, if you’re adding a crawled property that is an integer value, be sure to change this radio to reflect as such] Next, you will need to click ‘Add Mapping’ to select the crawled property(-ies) referenced by this managed property. In my example, I know that I named by Profile Property ‘StreetAddress’, so I’ll search for ‘Street’ in the dialog:
This is an easy one, as only 1 result was returned. Generally speaking, if you get more than 1 result, be sure to select the result prefixed with ‘People’. Click Ok and you’ll return to the ‘New Managed Property’ Screen. The remaining options shouldn’t impact us, so you can leave them alone. Go ahead and click Ok. Voila, you’ve created a Managed Property for StreetAddress, bringing you one step closer to your customized People Search experience. Repeat as necessary for all of the properties you’ve added to User Profiles.
Run an incremental crawl
When you’re finished adding all of your new Managed Properties, you’ll need to run an incremental crawl. Disclaimer: Most (if not all) Microsoft documentation claims that you have to run a full crawl at this point. I’ve only had to do that once for people profiles and their associated metadata properties; typically, the incremental crawl works for me. The purpose of this crawl is to ‘pick up’ all of your newly update managed properties. Once you start this crawl, go ahead and get yourself a cup of coffee and marvel at your SharePoint prowess!
That wraps it up for the second step of the process. I hope to have the third and final post up soon, so stay tuned!