SlideShare a Scribd company logo
1 of 25
INTRODUCTION TO SHAREPOINT 2013 SEARCH
AND CREATING DYNAMIC CONTENT
MANAGEMENT SOLUTIONS
Ryan McIntyre
MCITP, MCPD
Director, Portals & Collaboration
@ryanmcintyre
• SharePoint 2013 Search Overview
– Changes from 2010
• Search Solutions
• OOTB Web Parts Review
• API
– Server side
– Client side
• Packaging & Deployment
LEAVE NOW…OR…
SCENARIOS
Powerful Engine
2013 SEARCH INTRO
FAST
Index FS4SP
2010
Search
2013
Search
2013 SEARCH ARCHITECTURE
HTTP
File shares
SharePoint
User profiles
Lotus Notes
Documentum
Exchange folders
Custom - BCS
SharePoint
SP Apps
Devices
Non-SP UX
Public API
Unit of scale/role boundary
• Content Source
• Search Schema
– Now available through
site administration
• Query Rule
– Customization of returned
results
– Captures
Intent, composed of
• Query Condition
• Query Action
• Publishing Options
CORE BUILDING BLOCKS
• Query Transforms
– Web Parts (3)
– Query Rule (2)
– Result Source (1)
• Result Source
– Scope +
– Federated +
• CSWP
CORE BUILDING BLOCKS
• Result Type
– How to display types of
results
• Display Templates
– CSWP
– Hover Panel
– Refiner
– Search Results
CORE BUILDING BLOCKS
SEARCH EXPERIENCE
SEARCH IN ACTION DEMO
EXECUTING QUERIES
EXECUTING QUERIES: KQL
EXECUTING QUERIES: REST
 Keywords
 http://server/site/_api/search/query?querytext='{KQL Query}‘
 Selecting Properties
 http://server/site/_api/search/query?querytext='test'&selectproperties='Title,Ran
k'
 Sorting
 http://server/site/_api/search/query?querytext='test'&sortlist='LastModifiedTime:
descending'
 http://server/site/_api/search/query?querytext='test'&sortlist='LastModifiedTime:
descending,Rank:ascending
EXECUTING QUERIES: REST
<d:RelevantResults m:type="Microsoft.Office.Server.Search.REST.RelevantResults">
<d:RowCount m:type="Edm.Int32">16</d:RowCount>
<d:Rows m:type="SP.SimpleDataTable">
<d:Rows>
<d:element m:type="SP.SimpleDataRow">
<d:Cells>
<d:element m:type="SP.KeyValue">
<d:Key xml:space="preserve">Rank</d:Key>
<d:Value xml:space="preserve">29.4688339233398</d:Value>
<d:ValueType xml:space="preserve">Edm.Decimal</d:ValueType>
</d:element>
EXECUTING QUERIES: CSOM
ClientContext ctx = new ClientContext("http://sharepointonline/site");
var query = new KeywordQuery(ctx, ctx.Site);
query.QueryText = "Search terms";
query.ResultTypes = ResultType.RelevantResults;
query.Id = Guid.NewGuid();
var queries = new KeywordQuery[1];
queries[0] = query;
SearchExecutor searchExecutor = new SearchExecutor(ctx);
var rcc = searchExecutor.ExecuteQueries(queries);
ctx.ExecuteQuery();
QUERY DEBUGGING
CSWP & DISPLAY TEMPLATE DEPLOYMENT
• <cringe>Design in UI</cringe>
• Export
• Visual Studio solution
– Create “host” page
– Add markup for CSWP from export
– Properly escape „{„, „}‟, and quotes in DataProviderJSON property
CSWP DEVELOPMENT & DEPLOYMENT
• Create HTML file and verify results in UI
• Export JS
• Visual Studio solution
– Include JS
– Deploy to “_catalogs/masterpage/Display Templates/Content
Web Parts”
– {Optionally, deploy HTML (not JS) and programmatically update
file post-deployment to generate JS}
DISPLAY TEMPLATE DEVELOPMENT &
DEPLOYMENT
DEPLOYMENT DEMO
SCENARIOS
Ryan McIntyre
ryan.mcintyre@neudesic.com
http://blog.randomdust.com
@ryanmcintyre
303-520-6337
• http://sp2013searchtool.codeplex.com/
RESOURCES
Join us right after the event at the Firehouse Grill!
Socialize and unwind after our day of learning.
1765 E. Bayshore Road
East Palo Alto, CA

More Related Content

Viewers also liked

Entreave for Recruiters
Entreave for RecruitersEntreave for Recruiters
Entreave for RecruitersEntreave
 
Introduction to SharePoint 2013 Apps
Introduction to SharePoint 2013 AppsIntroduction to SharePoint 2013 Apps
Introduction to SharePoint 2013 AppsRyan McIntyre
 
Introducing Office Web Apps as a Tool for Developing Content Rich Applications
Introducing Office Web Apps as a Tool for Developing Content Rich ApplicationsIntroducing Office Web Apps as a Tool for Developing Content Rich Applications
Introducing Office Web Apps as a Tool for Developing Content Rich ApplicationsRyan McIntyre
 

Viewers also liked (6)

Entreave for Recruiters
Entreave for RecruitersEntreave for Recruiters
Entreave for Recruiters
 
Presentation2
Presentation2Presentation2
Presentation2
 
My photo analysis
My photo analysisMy photo analysis
My photo analysis
 
Revisão portugues
Revisão  portuguesRevisão  portugues
Revisão portugues
 
Introduction to SharePoint 2013 Apps
Introduction to SharePoint 2013 AppsIntroduction to SharePoint 2013 Apps
Introduction to SharePoint 2013 Apps
 
Introducing Office Web Apps as a Tool for Developing Content Rich Applications
Introducing Office Web Apps as a Tool for Developing Content Rich ApplicationsIntroducing Office Web Apps as a Tool for Developing Content Rich Applications
Introducing Office Web Apps as a Tool for Developing Content Rich Applications
 

Similar to SharePoint 2013 Search - A Developer’s Perspective - SPSSV 2013

SharePoint REST vs CSOM
SharePoint REST vs CSOMSharePoint REST vs CSOM
SharePoint REST vs CSOMMark Rackley
 
The SharePoint & jQuery Guide
The SharePoint & jQuery GuideThe SharePoint & jQuery Guide
The SharePoint & jQuery GuideMark Rackley
 
The SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechConThe SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechConSPTechCon
 
SharePoint Search Enrichment
SharePoint Search EnrichmentSharePoint Search Enrichment
SharePoint Search EnrichmentManoj Mittal
 
(Updated) SharePoint & jQuery Guide
(Updated) SharePoint & jQuery Guide(Updated) SharePoint & jQuery Guide
(Updated) SharePoint & jQuery GuideMark Rackley
 
Basic SharePoint search
Basic SharePoint searchBasic SharePoint search
Basic SharePoint searchToan Nguyen
 
Search-Driven Applications with SharePoint 2013 (#SBSBE16)
Search-Driven Applications with SharePoint 2013 (#SBSBE16)Search-Driven Applications with SharePoint 2013 (#SBSBE16)
Search-Driven Applications with SharePoint 2013 (#SBSBE16)Maximilian Melcher
 
Spsbe16 searchdrivenapplications-150419151108-conversion-gate01
Spsbe16 searchdrivenapplications-150419151108-conversion-gate01Spsbe16 searchdrivenapplications-150419151108-conversion-gate01
Spsbe16 searchdrivenapplications-150419151108-conversion-gate01BIWUG
 
Building Search Driven Applications
Building Search Driven ApplicationsBuilding Search Driven Applications
Building Search Driven ApplicationsBrian Caauwe
 
SharePoint & jQuery Guide - SPSTC 5/18/2013
SharePoint & jQuery Guide - SPSTC 5/18/2013 SharePoint & jQuery Guide - SPSTC 5/18/2013
SharePoint & jQuery Guide - SPSTC 5/18/2013 Mark Rackley
 
Exam 70-489 Developing Microsoft SharePoint Server 2013 Advanced Solutions Le...
Exam 70-489 Developing Microsoft SharePoint Server 2013 Advanced Solutions Le...Exam 70-489 Developing Microsoft SharePoint Server 2013 Advanced Solutions Le...
Exam 70-489 Developing Microsoft SharePoint Server 2013 Advanced Solutions Le...Mahmoud Hamed Mahmoud
 
Connect 2014 - EXTJS in XPages: Modernizing IBM Notes Views Without Sacrifici...
Connect 2014 - EXTJS in XPages: Modernizing IBM Notes Views Without Sacrifici...Connect 2014 - EXTJS in XPages: Modernizing IBM Notes Views Without Sacrifici...
Connect 2014 - EXTJS in XPages: Modernizing IBM Notes Views Without Sacrifici...Mark Roden
 
Working with a super model for SharePoint Tuga IT 2016
Working with a super model for SharePoint Tuga IT 2016Working with a super model for SharePoint Tuga IT 2016
Working with a super model for SharePoint Tuga IT 2016Sonja Madsen
 
Sps mad2019 es el momento, empieza a desarrollar para microsoft teams
Sps mad2019   es el momento, empieza a desarrollar para microsoft teams Sps mad2019   es el momento, empieza a desarrollar para microsoft teams
Sps mad2019 es el momento, empieza a desarrollar para microsoft teams Ruben Ramos
 
Utilizing Microsoft Graph API and Office 365 Management Activity API during s...
Utilizing Microsoft Graph API and Office 365 Management Activity API during s...Utilizing Microsoft Graph API and Office 365 Management Activity API during s...
Utilizing Microsoft Graph API and Office 365 Management Activity API during s...Kirill Bogdanov
 
FAST for SharePoint Deep Dive
FAST for SharePoint Deep DiveFAST for SharePoint Deep Dive
FAST for SharePoint Deep Diveneil_richards
 
Hard learned CSOM and REST tips
Hard learned CSOM and REST tipsHard learned CSOM and REST tips
Hard learned CSOM and REST tipsSPC Adriatics
 
MSFT Dumaguete 061616 - Building High Performance Apps
MSFT Dumaguete 061616 - Building High Performance AppsMSFT Dumaguete 061616 - Building High Performance Apps
MSFT Dumaguete 061616 - Building High Performance AppsMarc Obaldo
 
SharePoint 2013 Search Based Solutions
SharePoint 2013 Search Based SolutionsSharePoint 2013 Search Based Solutions
SharePoint 2013 Search Based SolutionsSPC Adriatics
 

Similar to SharePoint 2013 Search - A Developer’s Perspective - SPSSV 2013 (20)

SharePoint REST vs CSOM
SharePoint REST vs CSOMSharePoint REST vs CSOM
SharePoint REST vs CSOM
 
The SharePoint & jQuery Guide
The SharePoint & jQuery GuideThe SharePoint & jQuery Guide
The SharePoint & jQuery Guide
 
The SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechConThe SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechCon
 
SharePoint Search Enrichment
SharePoint Search EnrichmentSharePoint Search Enrichment
SharePoint Search Enrichment
 
(Updated) SharePoint & jQuery Guide
(Updated) SharePoint & jQuery Guide(Updated) SharePoint & jQuery Guide
(Updated) SharePoint & jQuery Guide
 
Basic SharePoint search
Basic SharePoint searchBasic SharePoint search
Basic SharePoint search
 
Search-Driven Applications with SharePoint 2013 (#SBSBE16)
Search-Driven Applications with SharePoint 2013 (#SBSBE16)Search-Driven Applications with SharePoint 2013 (#SBSBE16)
Search-Driven Applications with SharePoint 2013 (#SBSBE16)
 
Spsbe16 searchdrivenapplications-150419151108-conversion-gate01
Spsbe16 searchdrivenapplications-150419151108-conversion-gate01Spsbe16 searchdrivenapplications-150419151108-conversion-gate01
Spsbe16 searchdrivenapplications-150419151108-conversion-gate01
 
Building Search Driven Applications
Building Search Driven ApplicationsBuilding Search Driven Applications
Building Search Driven Applications
 
SharePoint & jQuery Guide - SPSTC 5/18/2013
SharePoint & jQuery Guide - SPSTC 5/18/2013 SharePoint & jQuery Guide - SPSTC 5/18/2013
SharePoint & jQuery Guide - SPSTC 5/18/2013
 
Exam 70-489 Developing Microsoft SharePoint Server 2013 Advanced Solutions Le...
Exam 70-489 Developing Microsoft SharePoint Server 2013 Advanced Solutions Le...Exam 70-489 Developing Microsoft SharePoint Server 2013 Advanced Solutions Le...
Exam 70-489 Developing Microsoft SharePoint Server 2013 Advanced Solutions Le...
 
Connect 2014 - EXTJS in XPages: Modernizing IBM Notes Views Without Sacrifici...
Connect 2014 - EXTJS in XPages: Modernizing IBM Notes Views Without Sacrifici...Connect 2014 - EXTJS in XPages: Modernizing IBM Notes Views Without Sacrifici...
Connect 2014 - EXTJS in XPages: Modernizing IBM Notes Views Without Sacrifici...
 
Working with a super model for SharePoint Tuga IT 2016
Working with a super model for SharePoint Tuga IT 2016Working with a super model for SharePoint Tuga IT 2016
Working with a super model for SharePoint Tuga IT 2016
 
Sps mad2019 es el momento, empieza a desarrollar para microsoft teams
Sps mad2019   es el momento, empieza a desarrollar para microsoft teams Sps mad2019   es el momento, empieza a desarrollar para microsoft teams
Sps mad2019 es el momento, empieza a desarrollar para microsoft teams
 
Utilizing Microsoft Graph API and Office 365 Management Activity API during s...
Utilizing Microsoft Graph API and Office 365 Management Activity API during s...Utilizing Microsoft Graph API and Office 365 Management Activity API during s...
Utilizing Microsoft Graph API and Office 365 Management Activity API during s...
 
FAST for SharePoint Deep Dive
FAST for SharePoint Deep DiveFAST for SharePoint Deep Dive
FAST for SharePoint Deep Dive
 
Hard learned CSOM and REST tips
Hard learned CSOM and REST tipsHard learned CSOM and REST tips
Hard learned CSOM and REST tips
 
MSFT Dumaguete 061616 - Building High Performance Apps
MSFT Dumaguete 061616 - Building High Performance AppsMSFT Dumaguete 061616 - Building High Performance Apps
MSFT Dumaguete 061616 - Building High Performance Apps
 
Discover Your IT Career Path
Discover Your IT Career PathDiscover Your IT Career Path
Discover Your IT Career Path
 
SharePoint 2013 Search Based Solutions
SharePoint 2013 Search Based SolutionsSharePoint 2013 Search Based Solutions
SharePoint 2013 Search Based Solutions
 

Recently uploaded

TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 

Recently uploaded (20)

TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 

SharePoint 2013 Search - A Developer’s Perspective - SPSSV 2013

  • 1. INTRODUCTION TO SHAREPOINT 2013 SEARCH AND CREATING DYNAMIC CONTENT MANAGEMENT SOLUTIONS Ryan McIntyre MCITP, MCPD Director, Portals & Collaboration @ryanmcintyre
  • 2.
  • 3. • SharePoint 2013 Search Overview – Changes from 2010 • Search Solutions • OOTB Web Parts Review • API – Server side – Client side • Packaging & Deployment LEAVE NOW…OR…
  • 5. Powerful Engine 2013 SEARCH INTRO FAST Index FS4SP 2010 Search 2013 Search
  • 6. 2013 SEARCH ARCHITECTURE HTTP File shares SharePoint User profiles Lotus Notes Documentum Exchange folders Custom - BCS SharePoint SP Apps Devices Non-SP UX Public API Unit of scale/role boundary
  • 7. • Content Source • Search Schema – Now available through site administration • Query Rule – Customization of returned results – Captures Intent, composed of • Query Condition • Query Action • Publishing Options CORE BUILDING BLOCKS
  • 8. • Query Transforms – Web Parts (3) – Query Rule (2) – Result Source (1) • Result Source – Scope + – Federated + • CSWP CORE BUILDING BLOCKS
  • 9. • Result Type – How to display types of results • Display Templates – CSWP – Hover Panel – Refiner – Search Results CORE BUILDING BLOCKS
  • 14. EXECUTING QUERIES: REST  Keywords  http://server/site/_api/search/query?querytext='{KQL Query}‘  Selecting Properties  http://server/site/_api/search/query?querytext='test'&selectproperties='Title,Ran k'  Sorting  http://server/site/_api/search/query?querytext='test'&sortlist='LastModifiedTime: descending'  http://server/site/_api/search/query?querytext='test'&sortlist='LastModifiedTime: descending,Rank:ascending
  • 15. EXECUTING QUERIES: REST <d:RelevantResults m:type="Microsoft.Office.Server.Search.REST.RelevantResults"> <d:RowCount m:type="Edm.Int32">16</d:RowCount> <d:Rows m:type="SP.SimpleDataTable"> <d:Rows> <d:element m:type="SP.SimpleDataRow"> <d:Cells> <d:element m:type="SP.KeyValue"> <d:Key xml:space="preserve">Rank</d:Key> <d:Value xml:space="preserve">29.4688339233398</d:Value> <d:ValueType xml:space="preserve">Edm.Decimal</d:ValueType> </d:element>
  • 16. EXECUTING QUERIES: CSOM ClientContext ctx = new ClientContext("http://sharepointonline/site"); var query = new KeywordQuery(ctx, ctx.Site); query.QueryText = "Search terms"; query.ResultTypes = ResultType.RelevantResults; query.Id = Guid.NewGuid(); var queries = new KeywordQuery[1]; queries[0] = query; SearchExecutor searchExecutor = new SearchExecutor(ctx); var rcc = searchExecutor.ExecuteQueries(queries); ctx.ExecuteQuery();
  • 18. CSWP & DISPLAY TEMPLATE DEPLOYMENT
  • 19. • <cringe>Design in UI</cringe> • Export • Visual Studio solution – Create “host” page – Add markup for CSWP from export – Properly escape „{„, „}‟, and quotes in DataProviderJSON property CSWP DEVELOPMENT & DEPLOYMENT
  • 20. • Create HTML file and verify results in UI • Export JS • Visual Studio solution – Include JS – Deploy to “_catalogs/masterpage/Display Templates/Content Web Parts” – {Optionally, deploy HTML (not JS) and programmatically update file post-deployment to generate JS} DISPLAY TEMPLATE DEVELOPMENT & DEPLOYMENT
  • 25. Join us right after the event at the Firehouse Grill! Socialize and unwind after our day of learning. 1765 E. Bayshore Road East Palo Alto, CA

Editor's Notes

  1. Introduction slide
  2. Conclusion slide
  3. SharePint