spsvb developer intro to sharepoint search
DESCRIPTION
SharePoint Saturday Virginia Beach, VA - 1/8/2011Developer Introduction to Search.TRANSCRIPT
Developers Introductionto SharePoint Search
SharePoint Saturday Virginia BeachMike Oryszak
January 8th, 2011
• Practice Manager with Intellinet• Microsoft SharePoint Server MVP• Dev and Architect with MS stack since 1996• Working with SharePoint since 2002• Raleigh-Durham, NC Area since 1998
About Me
• Search Overview– Review of features and Concepts
• Search Site and Web Parts– Review components of Search and Results pages– Customize Search and Result pages
• Overview of Search API• Possible Solutions
Session Overview
SEARCH OVERVIEWDevelopers Introduction to SharePoint Search
• Crawling– A scheduled activity that indexes the content, meta-data
and security.
• Index– Processed info– Extremely fast compared to querying source content
Search Overview
• Managed Properties– Can be used to query against a specific attribute– 100+ by default, more can be added
– Examples:• Author• ContentType• CreatedBy• LastModifiedTime• DocId• FirstName
Search OverviewManaged Properties
• Content Classes– Searches based on Object Type– Great for filtering down the potential resultset
– Examples:• SPSPeople • STS_Site • STS_Web• STS_list_[doccumentlibrary] *• STS_listitem_[documentlibrary] *
* Note name in brackets can be replaced with template name
Search OverviewContent Classes
• Query Formatting– Limit – 255 characters– Content Classes - ContentClass:Value– Managed Properties - Property:Value– Logical Operators - AND, OR, NOT, +, -– Relational Operators - <, >, <=, >=, <>– Filename – filename:”name”– File Type – filetype:value– Wildcards – Property:Partial Value
Example: “ContentClass:STS_Web AND Blog” Would return all Webs that have “Blog” in the meta-data.
Search OverviewQuery Formatting
• People Search– Queries the attributes in the User Profile store– Used to find individual not content– Similar to content search, but not tied to a specific site
Search OverviewPeople Search
SEARCH SITE AND WEB PARTSDevelopers Introduction to SharePoint Search
Search Site and Web Parts
• All Web Parts from the Search and Results Page are available
• Including:– Paging– Results– Related Queries– Best Bets– Statistics– Summary
Search Site and Web PartsOut of the Box Web Parts
• Search Results– XSLT for both Content and People can be fully
customized– Queries can be preset to create dynamically generated
content on sites
Search Site and Web PartsOut of the Box Web Parts
• Demo!
Search Site and Web PartsOut of the Box Web Parts
SEARCH APIDevelopers Introduction to SharePoint Search
• Server– Microsoft.Office.Server.Search.Query
• Foundation– Microsoft.SharePoint.Search.Query
Search APINamespaces
• KeywordQuery – Simplified Queries• Property:Value – similar to standard search in UI
Search APIKeywordQuery
• FullTextSqlQuery - Supports rich, SQL-like queries• SELECT <columns>
FROM <content source>WHERE <conditions>ORDER BY <columns>
• Conditions– FREETEXT()– CONTAINS()
Search APIFullTextSqlQuery
• Example SELECT LastName, FirstName, JobTitle, Title, accountname FROM SCOPE() WHERE (\"scope\" = 'People')
AND CONTAINS(JobTitle, 'Manager') AND NOT CONTAINS(Department, '1099')
– Selects specific fields from people where JobTitle = Manager but does not include ‘1099’ because they are a contractor
Search APIFullTextSqlQuery
• Demo!
Search APISearch API Demo
USES FOR SEARCHDevelopers Introduction to SharePoint Search
• Rich Content Interactions– Interacting with Very Large Lists & Libraries– Listing Department members
• Content Without Site Boundaries– Cross-site navigation with security trimming– Aggregating content
Uses for Search
WRAP-UPDevelopers Introduction to SharePoint Search
• MSDN SharePoint 2010 Resource Center– http://msdn.microsoft.com/en-us/sharepoint/bb964529.aspx
• Content Classes in SharePoint Search– http://nextconnect.blogspot.com/2010/04/content-classes-in-
sharepoint-search.html
• My Search Blog Posts– http://nextconnect.blogspot.com/search/label/Search
Additional Resources
Questions?
Contact Info
• Blog - http://nextconnect.blogspot.com• Twitter - @Next_Connect• Email – [email protected]• LinkedIn - http://www.linkedin.com/in/michaeloryszak