You are on page 1of 32

Donnez votre avis !

Depuis votre smartphone, sur :


http://notes.mstechdays.fr
De nombreux lots gagner toutes les
heures !!!
Claviers, souris et jeux Microsoft
Merci de nous aider amliorer les
TechDays

http://notes.mstechdays.fr

Fier dtre <DEV> Office


et SharePoint
Olivier Carpentier (Microsoft)
David Rei (Microsoft)

LAN304
Code / Dveloppement

Agenda
1

Les
nouveauts de
2013

Les apps pour


Office

Code / Dveloppement

3
Les apps pour
SharePoint

4
CSR et
Javascripts

Les nouveauts pour


le dveloppement

Les nouveauts pour le


dveloppement
CSR
Apps Model

CSR

Design
Manager

REST / Client
Side Object
Model

Server Side
OM, Receivers

Access

Minimal
Download
Strategy

JSLink
Display
Templates

Code / Dveloppement

JSLink

Workflows

Cest quoi une App ?


Pour Office
Un type dadd-in
Pour SharePoint
Une extension rutilisable la
facebook
Code / Dveloppement

-6

Les avantages des Apps en 2013

SIMILAIRE
ON PREMISE
ET ONLINE

DEVELOPPEMENT
POSTE CLIENT

GESTION
CONNAISSANCE
CENTRALISEE
.NET NON
DE CATALOGUES
OBLIGATOIRE

HYBRIDE
CLOUD

Des outils de dveloppements pour tous les


niveaux
Power
User

Pro Dev

Apps pour SharePoint


Apps pour Office
Access 2013,
Office Templates with
Apps
Le moyen le plus facile pour
les non dveloppeurs de
crer et publier une
application
Code / Dveloppement

Napa Office 365


Development Tools

Visual Studio 2012

Un outil en ligne pour un


dploiement dapp base
sur Javascript

Outil complet pour raliser


tous les besoins. Ncssite
les comptences de
dveloppeurs

Apps pour Office

Les types dApps pour Office


Task Pane pour Office
Disponible dans Excel, Word et Project

Content App
Embarque dans le document
Pour Excel et Excel Web App

Mail App
Permet denrichir linterface utilisateur et les fonctionnalits
dOutlook
(Messages et Rendez-vous).
Ncessite Exchange 2013 (Les comptes POP et IMAP ne sont pas
supports)
Seulement dans le client Outlook et OWA

Code / Dveloppement

Matrice des types dApps supportes


Office App
Task Pane

Excel
Word
Project

Office Web App


Excel

Content App Excel

Excel

Mail App

Outlook

Outlook

Code / Dveloppement

demo
LAN304

APPS POUR OFFICE


Code / Dveloppement

Apps pour SharePoint

Les diffrentes formes dApps pour


SharePoint
Full page
Pages compltes ddies.
Exprience immersive complte
App Parts
Web Parts ajoutable dans les pages
des sites SharePoint

UI command extensions
Extension par ajout dlments au
sein des menus contextuels ou du
rubban

Code / Dveloppement

Cest quoi une App Part ?


Web Part de type Iframe, changeant des proprits par
querystring
<?xml version="1.0" encoding="UTF-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<ClientWebPart Title="Basic app part" Name="Basic app part" Description="" >
<Content
Src="~remoteAppUrl/AppPartContent.html?strProp=_strProp_&amp;intProp=_intProp_&amp;."
Type="html"/>
<Properties>
<Property
Name="strProp"
Type="string"
RequiresDesignerPermission="true"
DefaultValue="String default value"
WebCategory="Basic app part category"
WebDisplayName="A property of type string.">
</Property>
</Properties>
</ClientWebPart>
</Elements>

Les proprits sont types :


Int, Bool, String, Enum
Code / Dveloppement

Les diffrents moyens dhberger une App


Provider-hosted app
Cloud-hosted
- Use server code
apps
- Receive SP events

Hbergement personnalis
(exemple: IIS, Apache, etc.)

- Use OAuth to access


SP

Autohosted app
Windows Azure + SQL Azure
automatiquement provisonns pour
lapp

SharePoint-Hosted app
Hbergement 100% SharePoint, isol en soussite
- Use SP artifacts & out-of-box web parts
- Use HTML & JavaScript for UI & client-side logic
- Use Workflows for middle tier logic

Code / Dveloppement

SharePoi
nt Host
Web
SharePoi
nt Host
Web
SharePoin
t Host
Web

Your Hosted
Site

Azure

SharePoi
nt App
Web

Le package dune App

Fichiers de type *.app


Forme de cab (archive zip)
Les resources SharePoint sont stockes
dans un fichier .WSP (user solution),
appliqu sur le host web lors de
linstallation
Les resources Azure sont stockes dans un
fichier .cspkg
Un fichier Manifest XML declare les
caractristiques de lapp :

.app
appmanifes
t.
xml

.WSP
(SharePoin
t
Elements)
.CSPKG
(Azure
Elements)

App permission
URLs
Code / Dveloppement

- 18

Cycle de vie des Apps en entreprise


Apps
Service
Application

Catalogs
Catalogs Mngt
Mngt
Licences
Licences Mngt
Mngt
Tenants
Mngt
Tenants Mngt
Perms
Perms Mngt
Mngt
Monitor
Monitor Apps
Apps

Authorized
Authorized App
App
Delegation
Delegation

*.app
*.app download
download

Provider
Provider
hosted
hosted App
App

External
Web Site
(IIS ?)

SP
SP hosted
hosted App
App

MarketPlace

Cloud
Auto
Auto hosted
hosted
App
App

*.app

File
System
Code / Dveloppement

Internal
Internal App
App
Promotion
Promotion

App
App Developer
Developer Site
Site

Azure Web
Site

Web App #1

SharePoint Farm

Cloud

La communication entre SharePoint


et les Apps
OAuth

Lists /
Libs /
Webs

Lists /
Libs

Host web
Code / Dveloppement

JavaScript Client Object Model (JSCOM)

Client Object Model (CSOM)

Remote Event Receiver

Pages (SP Hosted App)

Pages (no SP. H. App)

Web Services

App web et/ou Dedicated


web

- 20

demo
LAN304

APPS POUR SHAREPOINT


Code / Dveloppement

Client Side Rendering

Historique / Exprience de
personnalisation
SharePoint 2007 /
CAML

SharePoint 2013 /
CSR

SharePoint 2010 /
XSL

Callouts

Header

Boite de dialogue
contextuelle un lment
var calloutOptions = {
launchPoint:
document.getElementById("targetElement"),

ID: "Unique ID",


title: "Location",
content: "<div></div>",
beakOrientation: "leftRight",

Content
(<div></div>)

};
var callout =
CalloutManager.createNew(calloutOptions);
Code / Dveloppement

Footer
(Avec des actions)

JS Link
Possibilit de spcifier
un Javascript pour
effectuer un rendu cot
client.
Utilisable sur

Fields
Views
Content Types
Quelques WebParts

Code / Dveloppement

Les acteurs (1/2)


SPClientTemplates, SPClientForms
Liaison avec la structure SharePoint
Surchage des modles daffichage possibles

SPClientRenderer
Fonction gnrique permettant le rendu cot client
Pas de dpendance avec les API / donnes ShareP oint
SPClientRenderer.Render(HTMLElement placeHolder, RenderContext rCtx);

Code / Dveloppement

Les acteurs (2/2)


RenderContext
ListData
ListSchem
a

ControlMode
BaseViewId
ListTemplateTyp
e

OnPreRender
OnPostRender

SPClientTemplates.TemplateManage
r.RegisterTemplateOverrides(
RenderContext rCtx
);
Code / Dveloppement

Template
s

demo
LAN304

CLIENT SIDE RENDERING /


JSLINK
Code / Dveloppement

Synthse : Mthode de
personnalisation
Dfinir et associer un fichier JS

Cration dun RenderContext local


Surcharge du modle daffichage
Templates
OnPreRender / OnPostRender

Dfinition de ltendue
ControlMode
BaseViewID
ListTemplateType

Enregistrement du modle
SPClientTemplates.TemplateManager.RegisterTemplateOverrides(
RenderContext rCtx
);

Ce que nous avons vu ensemble


aujourdhui

Apps pour Office


SharePoint hosted Apps
Exprience de dveloppement Visual Studio 2012
et online
JavaScript everywhere !

CSOM / JSOM
CSR
JSLink
Callouts

Code / Dveloppement

Formation gratuite pour les diteurs de


logiciels pour lancer le store Franais

Dveloppement dapps pour Office

Dveloppement dapps pour SharePoint

Cloud App Model

Publication dans le store

18 &
19 ma
2013 rs
ou
20 &
21 ma
r
s
2
013
http://www.devcamps.ms/office

Venez nombreux la
ConfSharePoint !
1 sujet

1 + 15 partenaires

SharePoint
et son cosystme

Microsoft
3 Platinum
5 Gold
7 Silver

3 jours

4 thmes

22, 23 et 24
mai 2013

Usages & Retours Client


Infrastructure
Dveloppement
Gouvernance & Stratgie

1000
visiteurs
www.confsharepoint.c

Merci !
Votez ici !

Olivier Carpentier
David Rei
Microsoft
LAN304

Code / Dveloppement

You might also like