Developing for SharePoint Online Olaf Feldkamp Development Platform Advisor Microsoft Schweiz GmbH Welcome to the Cloud! My learning over the last weeks… As a SharePoint 2010

Download Report

Transcript Developing for SharePoint Online Olaf Feldkamp Development Platform Advisor Microsoft Schweiz GmbH Welcome to the Cloud! My learning over the last weeks… As a SharePoint 2010

Developing for SharePoint Online

Olaf Feldkamp Development Platform Advisor Microsoft Schweiz GmbH

Welcome to the Cloud!

My learning over the last weeks… As a SharePoint 2010 developer… you can start developing immediately for SharePoint Online without needing to download or install any frameworks or tools Cloud platforms get updated more regularly… If your code runs today it doesn’t mean that it will run tomorrow… at least in beta phase ;) The opposite is also true 

The Press

InformationWeek, April 2011 “More than 100’000 organizations are signed up to test the vendor's new on-demand platform, suggesting email and collaboration could overtake CRM as the top services-based app .”

Agenda

Introduction to Office 365 and SharePoint Online SharePoint Sandboxed Solutions Web Parts and Event Receivers InfoPath Forms Services Workflow SharePoint Client Object Models Access Services

Announcing Microsoft Office 365

Summary of Features

SharePoint 2010 vs. SharePoint Online

Administration Server Farm Web Application Web Application Web Application Site Collection Site Collection Site Collection Sites Sites Lists Lists … Libraries … Libraries Sites

SharePoint Online Extensibility

Overview

Agenda

Introduction to Office 365 and SharePoint Online SharePoint Sandboxed Solutions Web Parts and Event Receivers InfoPath Forms Services Workflow SharePoint Client Object Models Access Services

The Sandbox

Runs only a subset of Code components List Instances Modules/Files Microsoft.SharePoint

Site/Web scoped features, Partial Trust Site Collection Solution Gallery for deployment Web parts, Site Columns, Content Types, List Definitions, Event receivers, Feature activation receivers InfoPath Forms Services with code-behind SharePoint Designer workflow activities

Unsupported Features

Access to file system Web application- or farm-scoped features Global Assembly Cache (GAC) Access to web.config

Ability to install code/files on server Timer Jobs Admin access beyond site collection Running with elevated privileges Access to external web service calls X

Sandboxed Solutions Support

Visual Studio 2010 SharePoint 2010 item templates Visual Studio Item Template Visual Web Part Visual Web Part (Sandboxed) Web Part Sequential Workflow State Machine Workflow Business Data Connectivity Model Application Page Sandbox compa tible?

No Yes Yes No No No No Visual Studio Item Template Event Receiver Module Content Type List Definition From Content Type List Definition List Instance Empty Element User Control Sandbox compa tible?

Yes Yes Yes Yes Yes Yes Yes No

Solution Monitoring

Protects Site Collection from resource intensive solutions Resource Points measure resource consumption Site Collection Quota limits resource consumption per day Summed across all solutions  All solutions are deactivated Absolute Limit limits resources consumed by a solution Hard limit of resources consumed in a request  Restarts worker process

Monitored Resources

Metric Name Description Units AbnormalProcess TerminationCount CPUExecutionTime Process gets abnormally terminated Count CPU exception time CriticalExceptionCount Critical exception fired PercentProcessorTime Note: # of cores not factored in Seconds Number % Units of overall Processor consumed SharePointDatabase QueryCount SharePointDatabase QueryTime UnhandledException Count SharePoint DB Queries invoked Amount of time spent waiting for a query to be performed Unhandled Exceptions Number Seconds Resources per Point Absolute Limit 1 3’600 10 85 20 120 50 1 60 3 100 100 60 3 [7 more...]

Development Process

Staging Internet Production Develop Debug Test F5 WSP Deploy

Visual Studio 2010 Support

Project and item templates Intellisense Packaging F5 Debugging Visual Studio 2010 SharePoint Power Tools Sandboxed compilation, Sandboxed-compatible Visual Web Part

Sandboxed Solutions

Web Part, Event Receiver, and InfoPath Forms Services demo

Workflow Development

SharePoint Online supports declarative workflows Code-based workflows aren’t supported in the sandbox Prototype in Visio 2010 Customize in Extend with Designer SharePoint Designer 2010 Visual Studio 2010 Custom Workflow actions and events Deploy as *.wsp via “Save As Template” in SharePoint

Development Process

Workflow Development

demo

Agenda

Introduction to Office 365 and SharePoint Online SharePoint Sandboxed Solutions Web Parts and Event Receivers InfoPath Forms Services Workflow SharePoint Client Object Models Access Services

Client Object Models

New APIs for interacting with SharePoint sites Easier than existing Web Services, more efficient Consistent with Microsoft.SharePoint

namespace Scoped to site collection and lower Supported platforms .NET Framework 3.5 (and above) Silverlight 2.0 (and above) JavaScript

Architecture

ECMAScriptControls and Logic ECMAScript OM Proxy JSON Response XML Request XML Request Client.svc

SharePoint Server or SharePoint Online Server Object Model Proxy Managed OM JSON Response Content database Managed Controls and Logic

Accessing external Data

SharePoint Online sandbox restricted to Site Collection data Can’t call external web services BCS is not supported Silverlight/JavaScript can call external services Call external WCF/Web/REST/ODATA services Leverage Windows Azure Platform Client Object Models provides access to SharePoint Online  Develop SharePoint Composite Applications accessing SharePoint data and external data/services

Accessing SharePoint data and external data using the Silverlight Client Object Model

demo

Security – Authentication

3 Scenarios Sandboxed Solution Silverlight and JavaScript Object Models, within SharePoint Online context (already authenticated) .NET Client Object Model, (not yet authenticated) out of SharePoint Online context

Authenticate a .NET Client application which wants to SharePoint Online

demo

Agenda

Introduction to Office 365 and SharePoint Online SharePoint Sandboxed Solutions Web Parts and Event Receivers InfoPath Forms Services Workflow SharePoint Client Object Models Access Services

Microsoft Access 2010

Less need for VBA code UI Macros E.g. OnButtonClick() Data Macros («data layer») On table level  reuse Before Change, After Insert, …

Access Services

«Publish to Access Services» ACCDB  SharePoint Site (  Access Tables  “web app with central db”) SharePoint lists (read & write) Access Forms  ASPX Pages UI Macros  JavaScript Data Macros  SharePoint Workflows Access Reports  SQL Server Reporting Services*) VBA Code  Not supported Best suited for RAD of small departmental solutions

Access Services

demo

Summary

SharePoint Online is SharePoint 2010 hosted in Microsoft Datacenters as SaaS SharePoint Online Development Sandboxed solutions Declarative workflows and custom activities InfoPath Forms Services and Access Services Client Object Model enables RIA for SharePoint Possibility to integrate your desktop applications to SharePoint Online

© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.

The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.