Está en la página 1de 56

MsCodersCamp 2014

SharePoint Online: Desarrolla


tus apps en la nube
Cloud

Colaboran:

#MsCodersCamp2014
MsCodersCamp2014

Miguel Tabera Ivn Gmez


SharePoint MVP .NET Developer
Beezy | Spenta Beezy | Spenta

www.sinsharepointnohayparaiso.com www.blogmup.net
@migueltabera @ivangomezrod

#MsCodersCamp2014
MsCodersCamp2014

SharePoint Online: desarrolla


Cloud tus apps en la nube

#MsCodersCamp2014
Hoy veremos
Office 365: SharePoint 2013 en la nube
Introduccin al nuevo modelo de desarrollo en SharePoint 2013
Las nuevas API cliente (C#, JavaScript y REST)
Apps de Office y SharePoint
Tipos de app
Beneficios por usar apps
Conceptos bsicos al desarrollar apps
Laboratorio: todos a desarrollar apps
La tienda de Office
Desarrollo fcil de apps de Windows Phone para SharePoint Online
#MsCodersCamp2014
Office 365:
SharePoint
2013 en la
nube

#MsCodersCamp2014
Office 365: Office en la nube

+ + + =

#MsCodersCamp2014
Un nico lugar, todo Office

#MsCodersCamp2014
Qu incluye SharePoint Online?

#MsCodersCamp2014
Qu no incluye SharePoint Online?
Algunos servicios de BI
PerformancePoint
PowerPivot
Reporting Services
Analysys Services
Desarrollo de soluciones servidor
Word automation services
Otras pequeas caractersticas en los distintos servicios

#MsCodersCamp2014
Un paseo rpido

Demo

#MsCodersCamp2014
Introduccin al
nuevo modelo
de desarrollo
de SharePoint
2013
#MsCodersCamp2014
La visin de Microsoft: modernizar la
plataforma

#MsCodersCamp2014
El resultado: un nuevo modelo de apps
basadas en la nube

#MsCodersCamp2014
Las nuevas API
cliente de
SharePoint

#MsCodersCamp2014
Las tres API cliente
Client-side object model (CSOM)
Para aplicaciones que usen C#.
Para aplicaciones Silverlight y Windows Phone.
Javascript object model (JSOM)
Muy sencillo para aplicaciones web y JavaScript de Windows 8.
til para desarrollar apps de SharePoint para otras plataformas
(Android, iOS)
REST
API independiente de la plataforma basada en estndares como
OAuth y OData.
#MsCodersCamp2014
Resto de APIs
Combinando las tres
API cliente con el
resto de API se
pueden desarrollar
las distintas
soluciones

#MsCodersCamp2014
Ayuda y referencias de las API
Reference for SharePoint 2013 APIs (Server, CSOM, JavaScript)
http://msdn.microsoft.com/en-us/library/jj193038.aspx

How to: Complete basic operations using SharePoint 2013 client library code
http://msdn.microsoft.com/en-us/library/fp179912.aspx
How to: Complete basic operations using JavaScript library code in SP 2013
http://msdn.microsoft.com/en-us/library/jj163201.aspx
How to: Complete basic operations using SharePoint 2013 REST endpoints
http://msdn.microsoft.com/en-us/library/jj164022.aspx

#MsCodersCamp2014
Apps de Office
y SharePoint

#MsCodersCamp2014
Qu es una app de SharePoint?
Aplicaciones independientes que se integran con SharePoint
mediante APIs cliente (CSOM, JavasCript, REST)
Diseadas para no ensuciar ni cargar la granja de SharePoint
Las apps no residen en SharePoint
Desaparicin paulatina del modelo tradicional de desarrollo
Cdigo cliente
Centradas en escenarios concretos
Peticin de vacaciones
Registro a eventos

#MsCodersCamp2014
Cambio filosfico
Suponen un cambio filosfico
en SharePoint.
Ahora todo son apps
Pensar en las app de mvil
Funcionalidades concretas
bastante independientes

#MsCodersCamp2014
Beneficios
No se despliega cdigo personalizado en el servidor SharePoint
Migraciones futuras ms sencillas
Funcionan tanto en SharePoint Online como en SharePoint Server
Reduce la rampa de aprendizaje
No es tan necesario conocer muchos conceptos de SharePoint
Se puede usar HTML5, JavaScript y REST si no se conoce .NET
Las apps pueden residir en servidores externos con diferentes
tecnologas
Permite hacer muchas ms cosas que con las tradicionales
webparts, controles, etc.
#MsCodersCamp2014
Las app se integran en SharePoint

#MsCodersCamp2014
Apps para Office
Word, Excel, Project, PowerPoint y Outlook tambin pueden tener
apps
Filosofa similar: HTML5 + JavaScript
Concepto Web Extensibility Framework (WEF)
Plataforma de desarrollo para hacer apps para Office
Permite renderizar pginas web dentro de las aplicaciones Office
Permite al cdigo de las pginas interactuar con los documentos Office
Permite al cdigo de las pginas interactuar con elementos de Exchange

#MsCodersCamp2014
Tipos de app de Office

Content app (Excel, Excel Online)

Mail app (Outlook, Outlook Online)

Task pane app (Word, Excel,


Excel Online, PowerPoint,
#MsCodersCamp2014
Project Professional)
Conceptos
bsicos para
desarrollar
apps de
SharePoint
#MsCodersCamp2014
Los tres tipos de app
Provider-Hosted App
La app reside en cualquier infraestructura y y
Aplicacin web
est hecha con cualquier lenguaje. Da igual Sitio de
Cloud-based Apps que el hosting sea Windows Server, Apache APP (Hosting
Puede estar en .NET, Java, PHP, HTML5,
SharePoint propio)
Llamadas a SharePoint JavaScript
para obtener o escribir
informacin usando las Autohosted App
API CSOM/REST + Similar a la anterior, salvo que el hosting Sitio de Aplicacin web
(Windows
OAuth es Windows Azure + SQL Azure. El SharePoint APP
Azure
aprovisionamiento e instalacin se hace
de forma invisible. Slo en Office 365.
Online Web Sites)

SharePoint-Hosted App
No necesita hosting. El cdigo de la app se Sitio de APP
ejecuta en el navegador cliente mediante
JavaScript y/o REST.
SharePoint

#MsCodersCamp2014
Formas para las app
Descripcin Ejemplo

App que se abre a pantalla completa Reserva de recursos, panel de


para mostrar funcionalidades negocio
avanzadas. Permite tener la barra de
navegacin del sitio para volver Aunque no sean una app, Word Online,
PowerPoint Online, Excel Online y OneNote Online
funcionan de forma similar.

Se inserta en las pginas de SharePoint Visor del tiempo, visor de acciones,


como una webpart tradicional panel de control, mapa

Aade nuevas acciones para trabajar Abrir un visualizador del documento,


con documentos e tems en la cinta y imprimir un documento
mens

#MsCodersCamp2014
Las app por dentro
Una app por dentro es Sitio de SharePoint App (sitio de SharePoint)

un sitio de SharePoint Lista Lista Lista Biblioteca Lista Lista

La app puede tener sus Biblioteca Lista Lista Biblioteca Lista

propias listas y bibliotecas Lista Biblioteca Lista Lista Biblioteca

que duran el tiempo que Lista Lista Lista


Aplicacin web ubicada en
la app est instalada App App App hosting externo.
Tambin puede acceder a Opcional
Slo en provider hosted
las listas y bibliotecas del y autohosted
sitio que las contiene

#MsCodersCamp2014
El archivo AppManifest.xml
AppManifest.xml define las propiedades de la app
Visual Studio 2012/2013 ofrece un diseador visual
SharePoint Hosted

Autohosted

Provider Hosted

#MsCodersCamp2014
Comunicacin entre las app y SharePoint
Las apps provider hosted y autohosted se encuentran fuera de
SharePoint y necesitan interactuar con su contenido para:
Acceder a datos
Efectuar operaciones (crear listas, editar permisos, etc.)
Las app se comunican con SharePoint
va CSOM y REST
Las apps necesitan permisos para
acceder al contenido de SharePoint
Esto se consigue gracias al nuevo
soporte a OAuth de SharePoint 2013
#MsCodersCamp2014
Sitio del desarrollador y catlogo de apps
El catlogo de apps es una
coleccin de sitios con una
biblioteca en la que
almacenaremos los paquetes
de las app
El sitio del desarrollador es una
coleccin de sitios con una
biblioteca para almacenar apps
que permite hacer debug y
desplegar la app desde Visual
Studio

#MsCodersCamp2014
Llamadas
cross-domain

#MsCodersCamp2014
Llamadas cross-domain
Una app de SharePoint se muestra en la pgina dentro de un IFRAME
La app est en un dominio distinto que el sitio de SharePoint
Los navegadores no permiten a los elementos de la pgina interactuar
con ms de un dominio para evitar ataques
Librera JavaScript SP.RequestExecutor.js
Se encuentra en el directorio LAYOUTS
Con esta librera, las app pueden llamar a SharePoint aunque est en
dominio diferente
El mecanismo de trabajo no es especfico de SharePoint, es un patrn
que se usa en la industria
#MsCodersCamp2014
Las llamadas cross-domain son bloqueadas

<IFRAME>

Provider hosted app


Provider-hosted app
</IFRAME>
http://anotherdomain.com

SharePoint Server El scripting cross site es bloqueado por


http://mydomain.com defecto en el servidor de SharePoint.
#MsCodersCamp2014
SP.RequestExecutor.js

<IFRAME>
<IFRAME> http://mydomain.com/Proxy.aspx
</IFRAME>
Provider hosted app

</IFRAME>

SP.RequestExecutor.js

1. Genera el IFRAME automticamente.

SharePoint Server 2. Habilita las peticiones CSOM/REST posteando


http://mydomain.com al IFRAME con .postMessage()

#MsCodersCamp2014
Habilitando las llamadas cross-domain

<IFRAME> <IFRAME>

Provider hosted app http://mydomain.com/Proxy.aspx

</IFRAME> </IFRAME>

Provider-hosted app
SharePoint Server
http://mydomain.com http://anotherdomain.com

#MsCodersCamp2014
Laboratorio

#MsCodersCamp2014
Instalando
apps y
comprando en
la tienda de
Office
#MsCodersCamp2014
Ciclo de instalacin de una app
OFFICE

FREE/
TRIAL/
PURCHASE
VALIDACIN
DE LA APP

#MsCodersCamp2014
Comprando en la tienda

#MsCodersCamp2014
Desarrollo de
apps de
Windows
Phone para
SharePoint
#MsCodersCamp2014
Windows Phone SharePoint application templates

Windows Windows
Phone Empty Phone
SharePoint SharePoint List
Application Application

#MsCodersCamp2014
Preparando el entorno
Si vas a trabajar con el SDK de Windows Phone 8
Microsoft Visual Studio 2012
Windows Phone SDK 8.0
http://www.microsoft.com/en-us/download/details.aspx?id=35471
Microsoft SharePoint SDK for Windows Phone 8
http://www.microsoft.com/en-us/download/details.aspx?id=36818
Si vas a trabajar con el SDK de Windows Phone 7
Microsoft Visual Studio 2010 (no estn soportadas en VS 2012).
Windows Phone SDK 7.1:
http://www.microsoft.com/en-us/download/details.aspx?id=27570
Microsoft SharePoint SDK for Windows Phone 7.1:
http://www.microsoft.com/en-us/download/details.aspx?id=35475

#MsCodersCamp2014
El patrn MVVM

#MsCodersCamp2014
Windows Phone Empty SharePoint application

Manifiesto de la app

DLL del Windows Phone


SharePoint SDK

Activos de la app

Recursos

Aplicacin

Pgina inicial
#MsCodersCamp2014
Windows Phone SharePoint list application

Manifiesto de la app

ViewModels. Operacin para


listar tems de la lista y
operaciones para mostrar, editar
y crear tem.

Vistas. Pgina para visualizar los


tems y formularios de vista,
edicin y creacin.

Aplicacin

Modelo. Clase que proporciona


#MsCodersCamp2014 los datos de SharePoint.
Mi primera app
La Windows Phone Empty SharePoint Application es un proyecto
vaco con las DLL necesarias aadidas
til como punto de partida a una app que conecte a SharePoint.
La Windows Phone SharePoint List Application proporciona un
asistente de creacin de la app
Nos crea una app conectada a una lista, con todas sus operaciones.
Increble! En cinco minutos tendremos una app lista que podemos lanzar
en el emulador o telfono y publicar en la tienda.

#MsCodersCamp2014
Mi primera app
1) Creacin del proyecto

#MsCodersCamp2014
Mi primera app
2) Buscamos la lista en el asistente

#MsCodersCamp2014
Mi primera app
3) Elegimos vistas 4) Elegimos operaciones

#MsCodersCamp2014
Mi primera app
5) Elegimos las columnas y su orden en los
formularios

#MsCodersCamp2014
Mi primera app
6) Proyecto listo para ejecutar

#MsCodersCamp2014
Mi primera app
7) App compilada y lista

#MsCodersCamp2014
Demo

Ejemplo

#MsCodersCamp2014
Descuento eBooks Comunidad tcnica

30% de descuento
En ebooks de Krasis Press

Consigue tu cdigo de descuento:


http://promos.campusmvp.com/mscoders http://www.linkedin.com/groups/MadPoint-
SharePoint-Users-Group-Madrid-4554702

#MsCodersCamp2014
MsCodersCamp 2014

Thank you! Colaboran:

#MsCodersCamp2014