4. Lesson 1: Introducing SharePoint 2013 to All
Stakeholders
• Major Areas of Investment
• SharePoint’s Place in the Office Platform
5. Major Areas of Investment
• Improved User Experience
Office Web Applications
Apps for Office
Social Networking
Translation Services
Work Management Service
• Core Capabilities
Education Module
Request Management
Shredded Storage
ECM and WCM
Search
CSOM
• Life Cycle Management
SharePoint Marketplace
Corporate App Catalog
Remove Apps
Multi-Tenant Farms
6. SharePoint’s Place in the Office Platform
SharePoint 2013
Exchange 2013
Word, Excel,
PowerPoint,
OneNote
Outlook
Email
Shredded Edits
Apps for Office
Tasks
Team Folders
Office Web
Applications
SQL Server
2008 R2
Web
Browser
Content
Documents
SharePoint UI
Documents
7. Lesson 2: The SharePoint 2013 Development
Platform
• The apps for SharePoint Model
• The Marketplace and App Catalog
• Demonstration: Demonstrating The App Catalog
8. The apps for SharePoint Model
SharePoint 2013
Server-Side App
• Web Page, iFrame
Client-Side App
• HTML, CSS
• JavaScript, jQuery, CSOM
Server-Side App
• IIS, Windows Azure
• ASP.NET
Server-Side App
• IIS, Windows Azure
• ASP.NET
Hybrid App
• HTML, CSS
• JavaScript, jQuery, CSOM
Cloud
9. The Marketplace and App Catalog
• The SharePoint Marketplace
• The Corporate App Catalog
• Obtaining and Controlling Access to Apps
10. Demonstration: Demonstrating The App Catalog
In this demonstration, you will see how to:
• Use Visual Studio to Deploy an App
• Control App Permissions
• Add an App to the Corporate Catalog
14. Lesson 1: SharePoint-Hosted Apps
• What is a SharePoint-Hosted App?
• Building SharePoint-Hosted Apps
• Using Built-In Controls
• Cross-Domain Calls
• Demonstration: Creating a SharePoint Hosted App
15. What is a SharePoint-Hosted App?
• Parent Sites and App Sites
• Types of Client-Side App
Full Page Apps
Web Part Apps
Command Extension Apps Top Level
Site
Parent
Site
App Site App Site
App Site
16. Building SharePoint-Hosted Apps
• User Interface
HTML
CSS
• Scripting Language and
Libraries
CSOM
AJAX
jQuery
• Structure of a Client-Side
App Project
17. Using Built-In Controls
• The Client Web Part
• The Chrome Control
<ClientWebPart Name="MyFirstApp" Title="My First App">
<Content Type="html"
Src="http://intranet/Clients/Default.aspx?Master=Empty" />
</ClientWebPart>
<div id="chrome_ctrl_container"
data-ms-control="SP.UI.Controls.Navigation"
data-ms-options='{
"appTitle" : "Chrome Control",
"appIconUrl" : "../Pages/siteIcon.png"
}'>
</div>
18. Cross-Domain Calls
Parent Web App Web
Announcements
List
Company
News
Recent
Appointments
AppWeb
Proxy.aspx
AppWeb
Proxy.aspx
Hidden IFrame
SP.Request
Executor.js
MyScript.js
19. Demonstration: Creating a SharePoint Hosted
App
In this demonstration, you will see how to:
• Create a Simple SharePoint-Hosted App
• Add the jQuery library to your App
• Use jQuery to obtain and manipulate HTML elements
• Compile and run a SharePoint-Hosted App with debugging
20. Lesson 2: Cloud-Hosted Apps
• What is a Cloud-Hosted App?
• Cloud-Hosted App Architectures
• Communicating with SharePoint
• Demonstration: Demonstration: Accessing Data by Using
REST and OData
21. What is a Cloud-Hosted App?
• SharePoint-Hosted Apps:
Simple to create
CSOM very powerful
JavaScript
AJAX and JQuery
• Cloud-Hosted Apps:
Flexible Architecture
Always Running
.NET Languages
• Cloud-Hosted Apps include server-side components that
run outside your SharePoint farm on cloud services or on-
premise Web servers.
22. Cloud-Hosted App Architectures
• Developer-Hosted Apps
• Azure Auto-Provisioned Apps
• Web Page
• IFrame
• Windows Azure
• Web Services, WCF
Services
• SQL Azure
SharePoint Cloud
• Web Page
• IFrame • IIS, Apache
• ASP.NET, PHP
• SQL Server, MySQL
On-Premise Web Server
23. Communicating with SharePoint
• OAuth
• OData
• Windows Azure
• Web Services, WCF
Services
• SQL Azure
SharePoint Cloud
• Web Page
• IFrame
Announcements
List
Company News
Recent
Appointments
OAuth for Authentication
OData for Data Access
24. Demonstration: Demonstration: Accessing Data
by Using REST and OData
In this demonstration, you will see how to:
• Use OData calls in Internet Explorer
• Explore SharePoint 15 content by issuing OData calls
The OData calls you see in this demonstration can be
used to formulate requests in Server-Side Apps that
access SharePoint data content.
28. Lesson 1: Understanding apps for Office
• What is apps for Office?
• Apps for Office Types
• Apps for Office Catalogs
29. What is an app for Office?
Apps for Office: An web-based extension to an Office
2013 desktop application that can interact with
Office content.
• Apps for Office Manifest Files
Configuration values such as type, host apps, source location
• Apps for Office Web Applications
Static HTML with client-side code
Server-side code, ASP.NET, C#, VB
• Interacting with Office Documents
The Office JavaScript Object Model
30. Apps for Office Types
• Apps for Office Types
Task Pane apps for Office
Content apps for Office
Contextual apps for Office
• Embedding apps for Office in Files
User adds an apps for Office to a file
When the file is saved, the apps for Office is embedded
• Apps for Office Permissions
The <RequestedCapabilities> tag
Granting permission on first use
31. Apps for Office Catalogs
• Public apps for Office
Marketplace
• SharePoint apps for
Office Catalog
• Exchange apps for
Office Catalog
• File Share Catalogs
• Browsing apps for
Office Catalogs
32. Lesson 2: Building apps for Office
• Creating a New apps for Office Manifest
• Coding apps for Office 2013
• Integrating apps for Office with SharePoint 2013
• Demonstration: Demonstration: Creating a Content apps
for Office
33. Creating a New apps for Office Manifest
<OfficeWebExtension
xsi:type="TaskPaneExtension" >
<Id>{GUID}</Id>
<Version>1.0</Version>
<ProviderName>Contoso</ProviderName>
<DefaultLocale>en-us</DefaultLocale>
<DisplayName DefaultValue="My First apps for Office"/>
<Description DefaultValue="A simple apps for Office"/>
<HostApps>
<HostApp MinVersion=“2013" Name="Word"/>
</HostApps>
<DefaultSettings>
<SourceLocation DefaultValue="http://server/Home.htm"/>
</DefaultSettings>
<RequestedCapabilities>
ReadWriteDocument
</RequestedCapabilities>
</OfficeWebExtension>
AppManifest.xml
34. Coding apps for Office
• Client-Side or Server-Side Technologies
ASP.NET, C#, VB, IIS
LAMP
HTML, CSS, JavaScript, jQuery, other libraries
• Interacting with Word, Excel, PowerPoint, Project, and
Outlook
The Office JSOM
35. Integrating apps for Office with SharePoint 2013
• Web Page
• IFrame
• Windows Azure
• Web Services, WCF
Services
• SQL Azure
SharePoint Cloud
Cloud-Hosted App
Word
Apps for
Office
SharePoint
Search
Lorem
ipsum dolor
sit amet,
consectetur
adipiscing
elit. Ut
rhoncus
tincidunt
convallis….
SharePoint
Doc Library
CSOM
36. Demonstration: Demonstration: Creating a
Content apps for Office
In this demonstration, you will see how to:
• Modify The Registry to Add a File Share apps for Office
Catalog
• Create and Complete apps for Office Manifest File
• Use the New apps for Office in Word
• Add the New apps for Office to the apps for SharePoint
Catalog
40. Lesson 1: Enterprise Content Management and
Web Content Management
• Managed Metadata
• Enterprise Content Management and Records Management
• Web Content Management
41. Managed Metadata
New Features of The Manage Metadata Service
Application:
More granular permissions
New Term Set management pages
Intended Use in Term Sets
Managed Metadata access from CSOM
Custom Term properties
43. Web Content Management
• Term Sets for Site Structure and Navigation
• Search Powers Content Retrieval
• Clean URLs
• Image Renditions
• Design Manager
44. Lesson 2: Social Networking
• The New My Site and Communities
• Following Objects in SharePoint
45. The New My Site and Communities
• My Site and User Profiles
User Profile Replication Engine
About Me
My Tasks
My Library
• Community Site
Template
46. Following Objects in SharePoint
People
Pages
Sites
Tags
Microfeed
App
My Site
What’s New
47. Queries
Using CSOM to run a query:
ClientContext context = new ClienContext("http://intranet.contoso.com");
//Formulate the keyword query
KeywordQuery query = new KeywordQuery(context, context.Site);
query.QueryText = "SharePoint";
query.ResultTypes = ResultType.RelevantResults;
query.Id = Guid.NewGui();
//Add the query to an array of queries
var queries = new KeywordQuery[1];
queries[0] = query;
//Create a Search Executor
SearchExecutor searchExecutor = new SearchExecutor(context);
var rcc = searchExecutor.ExecuteQueries(queries);
context.ExecuteQuery();
49. Lesson 3: Search
• New Search Architecture
• Queries
• Search Customization
• Demonstration: Querying the Index From a SharePoint-
Hosted App using CSOM
51. Search Customization
• Customization by Administrators
Query Rule
Result Types
Result Sources
• Customization by Developers
Web Service Call-Outs
The CSOM Migration API
52. Demonstration: Querying the Index From a
SharePoint-Hosted App using CSOM
In this demonstration, you will see how to:
• Call The Search Service by Issuing a REST Call in
Internet Explorer
• Build a Web Part that Uses REST Search Calls
• Add The Web Part to the Home Page
• Issue a Search Query with The New Web Part