Une des promesses de Office 365 est en train d’arriver : soit une mise à jour continue de vos tenants pour être le plus en phase avec la dernière version des technologies Microsoft.
J’ai constaté, un peu par hasard, lors de ces dernières semaines que la migration des sites SharePoint online devenaient une question de jours.
Preuve en est ces nouveaux menus dans les Site Collections.

Certes, nous n’avons pas de date précise. Seuls les nouveaux client O365 sont sous SP2013. Les autres devant attendre … (n’est ce pas Arnault
)
Mais ce n’est pas forcement le cas de l’ensemble des services
Depuis 3-4 semaines, nous avons l’opportunité d’utiliser les nouvelles Office Web Apps avec leur nouveau moteur de rendu et son interface plus proche de Word
idem sous Excel et PPT
Sympathique non ?
>>> Pas forcement, car ca peut être avec douleur …
Je m’explique.
En me connectant sur un tenant d’un de mes clients, j’ai remarqué que les nouvelles Office Web apps ne sont pas encore “globalement” déployés. Pas vraiment une surprise, c’est une sacrée tache mine de rien
Donc nous avons accès aux anciennes :

Certes, la fonctionnalité est toujours la mais il y a un vrai impact au niveau SharePoint
>>> avec les nouvelles Offices Web Apps, il n’existe plus de Feature au niveau Site Collection, vu que c’est devenue un service partagé …
Au revoir

Eh oui la Feature n’existe plus sur les tenants 2010 avec la maj

En quoi est ce un problème ?
Oh presque rien
. Si jamais vous avez créez ou installez des templates de site, ceux ci vont simplement ne plus fonctionner !!!
Preuve par l’image …

Eh oui et la fameuse Feature {e995e28b-9ba8-4668-9933-cf5c146d7a9f} c’est MobileExcelWebAccess qui fait partie des Office Web App …
donc plus moyen d’utiliser feu vos modèles.
Les solutions ?
Disons les “workarounds”. Le soucis vient du fait que le template de site WSP intègre aussi les features de niveau collections au moment de sa génération.
Il suffit d’avoir des instances “vierges” de ces modèles, idéalement dans une banche de votre collection réservé Administrateur. Ainsi vous pouvez régénèrerez les templates puis remplacer les anciens par les nouveaux
Easy
mais il vous faut des instances vierges, ce qui est rarement le cas vu que les templates existent … Donc pensez y !!!
Vous importez depuis Visual Studio les WSP pour modifier leur fichiers onet.xml
Soit recherchez le GUID : e995e28b-9ba8-4668-9933-cf5c146d7a9f et vous trouverez le dit fichier
Vous supprimez toutes les références aux Offices Web apps
<!--MobileExcelWebAccess Feature-->
<Feature ID="{e995e28b-9ba8-4668-9933-cf5c146d7a9f}" Name="FeatureDefinition/e995e28b-9ba8-4668-9933-cf5c146d7a9f" />
<!--MobilePowerPointViewer Feature-->
<Feature ID="{893627d9-b5ef-482d-a3bf-2a605175ac36}" Name="FeatureDefinition/893627d9-b5ef-482d-a3bf-2a605175ac36" />
<!--MobileWordViewer Feature-->
<Feature ID="{8dfaf93d-e23c-4471-9347-07368668ddaf}" Name="FeatureDefinition/8dfaf93d-e23c-4471-9347-07368668ddaf" />
<!--PowerPointServer Feature-->
<Feature ID="{5709298b-1876-4686-b257-f101a923f58d}" Name="FeatureDefinition/5709298b-1876-4686-b257-f101a923f58d" />
<!--PowerPointEditServer Feature-->
<Feature ID="{738250ba-9327-4dc0-813a-a76928ba1842}" Name="FeatureDefinition/738250ba-9327-4dc0-813a-a76928ba1842" />
<!--WordViewer Feature-->
<Feature ID="{1663ee19-e6ab-4d47-be1b-adeb27cfd9d2}" Name="FeatureDefinition/1663ee19-e6ab-4d47-be1b-adeb27cfd9d2" />
<!--OneNote Feature-->
<Feature ID="{3d433d02-cf49-4975-81b4-aede31e16edf}" Name="FeatureDefinition/3d433d02-cf49-4975-81b4-aede31e16edf">
…
</Properties>
</Feature>
<!--ExcelServerSite Feature-->
<Feature ID="{3cb475e7-4e87-45eb-a1f3-db96ad7cf313}" Name="FeatureDefinition/3cb475e7-4e87-45eb-a1f3-db96ad7cf313" />
<!--ExcelServerEdit Feature-->
<Feature ID="{b3da33d0-5e51-4694-99ce-705a3ac80dc5}" Name="FeatureDefinition/b3da33d0-5e51-4694-99ce-705a3ac80dc5" />
<!--OfficeWebApps Feature-->
<Feature ID="{0c504a5c-bcea-4376-b05e-cbca5ced7b4f}" Name="FeatureDefinition/0c504a5c-bcea-4376-b05e-cbca5ced7b4f">
<Properties>
<Property Key="CANARYSITEKEY" Value="DnIwjLLiIqbmuK/Sv/oEVdNGWIStYTvOMkhTSPbqMQc=" />
</Properties>
</Feature>
Et ensuite vous repackagez le tout sous un autre nom.
Vous reuploadez dans O365, créer un nouveau site et si tout est bon, vous pouvez supprimez l’ancien template désormais obsolète
Attention cette méthode n’est pas sur à 100%, j’ai eu quelques échecs …
Conclusion
Comme dirait un de mes collègues belges : “Mais pourquoi tout est toujours compliqué?”
Disons qu’il faut bien trouver des sujets pour poster des articles dans un blog 
Mais en tout cas, un joli piège à loup, bien dissimulé dans les arcanes de O365 !
Bon courage avec vos tenants
Renaud Comte aka TheMit : Ahhhh 2013, version de tous les espoirs
Wygwam
Tout d’abord, mes meilleurs vœux pour cette nouvelle année 2013 avec SharePoint 2013 bien entendu.
Ce premier post de l’année est le résultat d’une recherche d’un comportement assez bloquant (et énervant) de Visual Studio 2012 lors du déploiement d’apps sur SharePoint.
En train de tester un peu de code et évaluant quelques bonnes idées trouvées sur Codeplex, je me suis retrouvé face à un mur : impossible de déployer mon projet sous 365 Preview : Access Denied

Petite remarque, si vous voulez tester et évaluer SP 2013 (ainsi que sa plateforme de dev NAPA/VS 2012) et que vous n’avez pas forcement temps et matériel, je ne saurais trop vous conseiller de vous créer un accès sur O365 Preview

http://msdn.microsoft.com/en-us/library/fp179924.aspx
Une fois l’accès ouvert, à vous les joies de coder en ligne votre apps via NAPA ou même de la récupérer / créer directement depuis VS 2012 (+ son tool ).
En plus tout se connecte, debug et se déploie comme par magie et facilement : les joies de la fédération d’identité
Ô rage, Ô désespoir ca ne marche plus !%?!
>>> et je ne plaisante pas. Impossible de retrouver la connexion vers SharePoint Online alors qu’elle marchait sans soucis depuis la beta.

J’ai retourné forum et moteur de recherche, cherché en anglais, allemand et français, technet, msdn ou connect, rien de rien. mon VS ne veut plus “communiquer”.
Bon je peux toujours publier mon app en local puis l’uploader manuellement via l’interface du Site Developper mais bon … quid de la connectique et le build de VS 2012
Si jamais vous arrivez dans cette situation, vous allez vous sentir seul (du moins, nous serons 2).
Le problème : malgré avoir fermé mes navigateurs et purgé un peu tout, la fenêtre de connexion de VS vers SharePoint insiste à utiliser mon identifiant SP Online entreprise … (bien que je suis sur une session Win8 ouverte avec mon compte live)
Forcément, l’accès vers mon compte O365 Preview lui utilise un compte différent
En résumé : ma machine utilise 3 identités onlines MS : SP Online pour ma société, Live pour mon identité personnel et un dernier pour 365 preview. le tout se mélange
Le pire comme vous le constatez sur la fenêtre en capture, aucun moyen de vous “deloguer” ou de vous signer sous une autre identité … Juste Access Denied
Rien dans le event viewer ni aucune erreur en log. Aucun paramètre dans VS pour forcer une identité ni rien dans les fichier de config ou csproj pour influencer le tout …
Coincé de chez coincé (et bien sur, mes navigateurs sont fermés, toutes les sessions Web déconnectés …)
Puis une idée, simple qui m’a permis de revenir en mode normal. Mais quelle est l’adresse de cette fameuse page de connexion en erreur ? Du moins à l’appel !
Soit la solution
Lorsque vous lancer un “deploy” et que VS 2012 cherche à se connecter, une fenêtre modal apparait
>>> faites rapidement un clic droit dessus et grâce aux propriétés, vous allez pouvoir obtenir le chemin de la page de connexion
soit : https://login.microsoftonline.com/login.srf?wa=wsignin1%2E0&rpsnv=2&ct=1357827682&rver=6%2E1%2E6206%2E0&wp=MBI&wreply=https%3A%2F%2FXXXXX%2Esharepoint%2Ecom%2F%5Fforms%2Fdefault%2Easpx&lc=4108&id=500046&popupui=1&cbcxt=mai&wlidp=1&guests=1
>>> cette page sous VS retourne directement vers la page en Access Denied ou vous restez bloqué

>>> la même url depuis IE vous permet de vous signer autrement !!!!!

Vous devinez la suite
. Un fois bien identifié (avec l’option de maintenir la connexion),vous retournez sous VS, relancez le déploiement sous VS2012 et tout remarche normalement

Tout simplement et sans stress, pas besoin de formater son VS ou son VHD
Bref, une fin digne d’un conte de Noël ou de l’agence Tout Risque (oui je suis un trentenaire assumé)

Renaud Comte aka TheMit : SharePoint m’aura bien un jour mais pas aujourd’hui
Wygwam
Composants du moteur social
- User profiles
- Feeds
- Following /follower
- Search

A user can follow a :
- user
- tags
- documents
- site
- …
>>> tout reste lié à l’écosystème des utilisateurs.

Le second step reste l’exploitation du reporting de cet écosystème : quel est le hashtag le plus suivi, le nombre de follower, …
Techniquement, c’est du classique 2013
: CSOM/REST vers notre cher _api
Attention : tout n’est pas autorisé par CSOM/REST
- existence d’un user
- créer / change / delete un user profile
- poster au nom d’un tiers

Demo du feed REST Api
- utilisation d’un display template de recherche
- soit un hover panel présentant le feed social
- en pratique un appel CSOM sur le feed en async
- petit truc : bien attendre le chargement du chrome du panel pour lancer la requête
- développement d’un page html en layout : SP Post O Mati
- first call : get the token
- second : get the feed
- via _api/contextinfo
- récupère le token de session user
- permet de poster
- les messages
- les reponses
- dans les infos locales ou globales


Demo du User Profiles REST Api
- utilisation du profile pour récupérer l’id twitter
- utilisation de JSONP et un fonction de transfert
Demo finale : Mix everything
- App dans le Site SP
- utilisation d’une libraire spéciale SP : Request Executor
- appel externe avec gestion d’une identification spéciale
- permet les cross domain queries
- Principe de la cloche des ventes : a chaque vente dans le CRM, on le “sonne” à tous le monde via le newsfeed
- on commence avec une simple page HTML
- on l’intègre dans le CRM
- soucis : CRM bloque les appels cross d …
- en jouant avec les plugin de CRM + un compte Robot CRM dans les userprofiles.
- A chaque win, mentions et feed sont alimentés !
Remarques du speaker
- faites déjà marcher l’application avant de rentrer dans les détails
- attention d’ou vous vous connecter au service
- le choix de l’API et attention au mix
- Apps reste le meilleur point d’entrée : bien sur

Conclusion
l’intégration du social peut transfigurer ou humaniser vos applications. Le newsfeed de SharePoint sait le supporter et ses api REST rendent le tout vraiment faisable !
Au revoir à tous, il est temps de prendre l’avion
et de retrouver mon petit motard à la maison et ma Za 
Renaud Comte [MVP]
Live from Vegas
Soit un site WCM classique avec gabarits, MP, search, sécurité et …
Une des sessions au rythme le plus élevé, j’ai vraiment du mal a suivre et prendre des notes mais le sujet est fort bien présenté,… juste un peu trop vite 
Attention aux changements
- Claim Based: move to windows claims
- Search : everything change
- pas d’in place upgrade

Pourquoi migrer ?
- consolidation avec SP2013
- dépasser les limites de 2010
- performance
- nouvelle fonctionnalités
- …
Migrer demande du temps et de la préparation !
>>> tout dépend de comment vous voulez migrer : avec ou sans historique et son reclasssment
Faire l’inventaire
- code et WSP
- wireframe et design
- content and SPECS
- Migration goals and objectivs




Scenario de demo
- Phase 1 : just move
- Phqse 2 : new feature
- Phase 3 : evolve
Phase 1
- script de migration de la DB
- site 2010 toujours en ligne mais sans 15 expérience
- le 14 et 15 “hive“ sont toujours en ligne !
- Upgrade 15 by Site Settings
- Attention , il faut avoir préparer la nouvelle Master Page 15 ready
- préparer un MP next gen
- intégrer les nouveaux composants : merci SPDesigner Manager
- nouvelle navigation : metadata Nav
- conversion automatique du html en .master
- Navigation MMS
- update the MMS Service by PS
- activer les features de taxonomie et Metadata
- site settings : preciser la navigation par Metadata plutot que structurel
- pointer le Term Set dédié à la nav
- Publishing Cache
- ajouter le portalsuperuseraccount et le portalsurperreaderaccount en full control dans les Web policies
- sinon soucis en event viewer

Au besoin, la référence
http://technet.microsoft.com/en-us/library/ff607742.aspx
Conclusion
It works ! Mais comme le rappelle le speaker : prenez du temps pour évaluer et préparer, une migration est et restera toujours une opération traumatisante 
Renaud Comte [MVP]
Live from Vegas
Une session de feu même par le SP Cowboy : Eric Schupps


Prenant le scénario type d’une solution trans entreprise : le helpdesk, cette session veut présenter le cycle de production complète d’une vrai application d’entreprise à base de SP2013
- Spécification
- Design
- coding
- Packaging
- Security Premise/Cloud



le message de la session : You must unlearn what you have learned !
SP2013 avec le App cloud model impose une nouvelle réflexion dans la conception
techniquement :
- UI (JS)
- Auth
- WCF
- REST
- Office (si si)
- Phone
En terme de donnée :
- Azure SQL DB
- WCF Services
- Entity Framework
- ce discute mais permet de s’affranchir de bien de code de “plomberie” SQL
- JSON
- votre nouveau meilleur ami
- Asynchronous





Développement Web : tout un problème de contexte
il faut déjà déployer : soit 365 : simple ou On Premise : plus lourd, il faut configurer le S2S High Trust
En mode remote sur Azure , on voit bien passer les token via fiddler : SPAppToken si on
L’application est riche en fonctionnalité : interactif, chargement de KB, carrousel GEO des intervenantm drag and drop, …
L’inscription de votre App demande toujours de générer un App Principal
Truc & astuce
- Au niveau de vos appels, pensez bien à profiter des tokens spécifiques d’url pour trouver les url de contexte en REST
- Attention, les scopes sont deprecated
- en REST, une recherche doit utiliser le source ID et non le source Name de votre indexation
- d’ou le GUID pour l’appel de People search
Le developpement d’Office App devient aisé !
- toujours le même principe d’app avec manifest, remote et JS pour l’implémentation
- attnetionm il faut faire une conversion du JSON en Array Office pour manipuler les données plus aisément
Mobilité
- dev mobile classique à base de MVVM
- les appels REST sont les mêmes
- mais conversion du JSON en array pour la manipulation des datas ….
Packaging aka Manifest mon ami
Testing
- it’s a challenge !
- lot of effort for JS
- fiddler estmon ami
- Typescript
On Premise
- Complexe, vraiment et lourd
- Mais incontournable
- Assez difficile to make ACS et OAuth on Premise
- oblige MS à proposer un mode différent : S2S
- Ou sinon, configurez un private cloud : encore plus complexe si cous en avez pas les besoins
- La config des certificats touche les serveurs SP ainsi que les config des app
- vos applications sous S2S impose NTLM
- il faut une identité Windows : pas le choix




O365
- Dev / MarketPlace / Catalog
- Developper Site
- SSL
- Registration
- Parameter
- Permission
Azure
- Database
- Web
- Autohosted
- some limitations
- pas vraiment le modèle a conseiller si vous avez besoin de montée en charge
- Préférez le host Provider avec un package Azure classique
Petit truc (voir enorme):
- en testant la présence du ClientToken dans le host URL, vous pouvez savoir si il est vide aue vous êtes on premise ou cloud
- Ainsi votre App fonctionne Premise et Azure et vous ne travaillez que sur une seule version de l’application
Conclusion
Un immense bravo au travail préparatoire de cette demo, un véritable showroom de comment penser et déployer une app SP2013 complète de A à Z
Clairement un changement de philosophie à faire pour le futur
Renaud Comte [MVP]
Live from Vegas
image en upload
Ahhh enfin une session que j’attend avec impatience et hargne à chaque SPC : la gestion Multilingue
De tout temps un sujet polémique sous SP, voyons ce que propose la nouvelle version
.
Petit rappel sur le principe des variations
>>> maintenant elles sont focus uniquement sur le multilingue
What’s new
- Translation
- increased breadth scale and speed
- More control overs sync
- integration with search driven
Performance
- 50% de temps en moins si ajout d’une langue
- si erreur, la variation ne recommence plus du début¨
- labels max :
- 209 Premises
- 50 sur Online
Get your content where you need it
- contrôle centralisé
- content avaliable everywhere
- update to content appear automatically
- Distributed
Demo
- translation option
- Variation settings



Désormais (enfin), les variations gèrent :
- Document libraries
- Annoucement list
- Generics list
Demo de traduction live d’une news ainsi qu’un document word
Managed Navigation
Chaque Target posséde un Nav Term Set associé
>>> il supporte
- traduction
- url friendly
- SEO properties
- plus besoin de pack de langue (traduction à la volée ?)



Translation
- Secure connection to MS translator via SSL
- Fidelity
- Extensibiliy
- OM / CSOM
- custom libraries via le MS Translator Hub peut se connecter sur la SP Translation Machine
A noté que tout est traduit dans l’interface d’un site FR contenu, nav et url mais pas l’interface de gestion ??? Il faut ne pas oublier le MUI 
La traduction humaine est aussi possible heureusement via le support des normes XLIFF (package de traduction en norme Oasis et supporté par de nombreux outils de traduction)
- le ruban permet d’exporter le package ou de l’uploader


Recap
- perf ++
- better control on synx
- list support
- managed navigation
- translation integration
- human translation via XLIFF
Content where you want
Forcement lié au moteur de recherche du WCM sous SP2013

>>> Create once use often

Vous pouvez distribuer le contenu et les reutiliser. Par exemple, partager l’historique de la société en US mais avec les contacts canadiens locaux.
Demo
- elle repose sur la distribution du contenu via les catalogues de contenu
- une alternative serait d’utiliser la CSWP pour aspirer le contenu
En ce qui concerne les menu de Switch de langue, il n’existe pas de contrôle dédié mais un OM/CSOM existe pour l’implémenter au besoin
Conclusion
Enfin, un système de traduction a été rajouté gérant le SSL ou l’export XLIFF.
Beaucoup de soucis sont effectivement comblés via l’aide des nouveautés de SP2013 via le Search et la Metadata Navigation. Sans parler bien sur des gains en performance !
Comme le cross site publishing, le multilinguisme dépend d’un savant agencement des options du WCM de SP2013
Renaud Comte [MVP]
Live from Vegas
image en upload
Après tant de session orienté WCM, JS, Search, je ressens le besoin de revenir à mes racines ECM, voyons donc
Soit :
- Document Management App
- Opportunities from the cloud
- Different Host and Trust scenario
Soit une simple liste documentaire “Spec Library” avec des Document Set “Product Backlog”

Scénario 1
- APP
- Event Receiver to populat fields
- Client Web Part to display data from TFS
- will be hosted in Azure
- or anywhere else if you want
La demo vas reposer sur un Remote Event Receiver (avec OAuth sur Azure ACS )

Event Receiver
Soucis : on ne peut utiliser le WSP elements.xml pour le déployer
>>> on utiliseras les receivers et le CSOM pour l’enregistrer
On put profiter de l’ensemble des nouveautés du CSOM via le ClientContext mais surtout sur les nouveaux objets couvrant aussi bien la taxonomy que les config de fiedls
>>> pour rappel, le CSOM SP2010 n couvrait que les listes et la config de SPF, rien de ce qui concernais SPS (ECM, WCM, … dommage)
Client WP
Petit rappel : il ne s’agit d’une simple Iframe vers une host page
Pour connaitre l’item en cours de traitement, il faut requêter la parent page via JS pour obtenir l’ID
la suite de la session est du code de haut vol entre REST sur SP et TFS
Difficile de suivre surtout vu le rythme imposé pour tenir le délai
Le speaker insiste sur l’ensemble des possibilités d’extension qu’offre le App model avec le cloud et ou le corporate store

Difficile de dire le contraire mais le message est complexe vu le High Level du code fait en moins d’une heure
Un peu dommage mais le résultat : un document Set interagissant avec TFS via un endpoint Azure laisse imaginer bien des solutions.
Renaud Comte [MVP]
Live from Vegas
Restons sur la thématique du développement Javascript. Client Rendering ou comment remplacer le rendu des champs de liste via JS
Une session ne comportant qu’un seul slide à priori : du Client Side, MDS, Odata
La session commence par une revue du _api et de l’affichage de retour via json et odata

- Démonstration avec fiddler de la feature MDS : Minimum Download Stategy
- la navigation dans le site montre une diminution énorme du trafic
- tout fonctionne par delta
- plus de full reload de la page
- Utilisation du JS Link des listviewWP
- ajout d’un template remplaçant le current item rendering
- ajout d’un site bold sur le title
- advance : call REST sur une liste d’image et injection d’une vignette dans le rendu de la liste
- simple et terriblement efficace
- clin d’oeil Old School : concaténation et XmlHttp



Avec cet ajout de js, on peut overrider n’importe quel rendu de liste sans aucun hack particulier !!!
>>> sans forcement devoir passer par la XSL et ou SPD 
Ce fameux paramètre JSLink existe aussi dans la définition d’un Content type dans la déclaration du Field
Exemple venant de CKSScript.codeplex.com
il suffit d’ajouter le CT à la liste de demo et un simple champs texte devient un drop down avec un control de saisie en edit ainsi qu’un render particulier

http://blog.aptillon.com/2012/10/12/custom-field-types-in-sharepoint-2013-apps/
La même technique du JSLink peut être utiliser dans un custom field type par simple changement dynamique du param : soit un control complet du render via du JS en edit et en render
>>> aka MicroRendering

Demo
- Ajout d’une MAP view
- JSlink pointant un autre render template
- Server Render : la compo html se fait coté serveur désormais
SP2013 permet de Controller finement via JS le rendu de ces valeurs avec ou sans le MDS
Dernière demo bonus
- les display template de recherche
- utilise un html avec des tokens _# #_
- on peut aussi utilise le js sur le current context comme pour les JSLink et interagir sur le rendu du template
- conversion dynamique du html en template JS

Conclusion
Enfin un contrôle fin sur les champs avec toute la puissance du JS et Rest sans les problèmes de déclaration de custom field types : Merci
Surtout ca ouvre de sacrée possibilité comme injecter un player video dans un liste de lien , non ?
Renaud Comte [MVP]
Live from Vegas
une session animée par un MVP et un PM : ca promet …
la session est orienté développement javascript mais pas de centaine de lignes de JS mais de centaines de millier de JS et comment survivre voir performent dans de tel développement
JS devenant un pilier du dév SP 2013, cette reflexion n’est pas inutile non ?
TypeScript est un projet open source de Microsoft servant de compilateur JS pour résumer rapidement
>>> Vous écrivez un code JS plus structuré : typé, module, héritage,classe qvec constructeur, structure, … et Typescript vous génère le code Js équivalent tout simplement (en appliquant au passage les patterns Js les plus recommandés )

Et il indique les erreurs d’exécution/compilation en live comme sous VS en C# si vous préférez
D’ailleurs Typescript existe en éditeur Web ou en plugin VS2012 : à vous de choisir
.
Voila pour les grandes lignes : prometteur non ? De quoi vous faire aimer le Js si vous êtes un codeur C# stricte non ?
En pratique
Typescript repose sur 90% sur le langage JavaScript, les différences viennent juste des rajouts de Typescript
>>> vous n’êtes pas perdu, loin de la. vous pouvez même réutiliser rapidement votre code existant
Nouvelle options de Dev de SP2013
Le App cloud Model pousse clairement à l’utilisation massive de JS que ce soit pour le traitement via CSOM ou le client side pur et dur

le modèle de dev SP2013 tient particulièrement compte des soucis de Cross Scripting : soit toute la problématique d’authentificaion et d’autorisation des Apps avec OAuth et S2S
Demo
- SPREST est une librairie TS pour VS2012 et SP2013
- une Target de build permet la conversion TS/JS à la compilation (heureusement
) - SPRest est basé sur le pattern Promises (JQuery Deferred Object)
- les cascades longues de call async deviennent quasiment lisible et gérable
Exemple : commentaires des videos dans un liste SP - soit un App SP Menu (custom action)
- Ajout du SPREST.JS et du Default.js (resultant de la compilation TS)
- ne pas oubliez les références au fichier TS pour l'IntelliSense
- en ce qui concerne le vrai code TS
- il est largement simplifié par
- la structure de TS
- la gestion de SPREST des appels
Typescript in your project
il suffit de laoder le projet dans VS et de préciser la target du TSCompiler : done

Ces techniques de dev sont aussi disponibles pour les Office Apps (JS + Office JSOM + XML manifest)
Demo
- réutiliser les commentaires des videos dans un task pane d’Excel
Conclusion
L’utilisation de TypeScript face à JS dans le cas de dev advance d’app full JS CSOM a une vrai plus value
Effet Waoh pour mon coeur de développeur C# dans un monde plein de JS
Clairement, un de mes prochains projets d’investigation : au même niveau de KnockOut
>>> si KO et le MVVM me rend le JS sympathique, Typescript peut, je pense, me rassurer face à mes habitudes cartésiennes de dev C# sous VS 2012 (et gagner en productivité et qualité non ?)
Dixit Robert Bogue : Why JavaScript Makes Bad Developers
I need to end with a call to continue to learn and grow. Whether JavaScript is the right answer for you – or not – exploring new techniques, tools, and approaches are a good thing. In another old article, "The Great Divide", I talk about how people get stuck by not seeking out new and better ways of doing things. I'm not suggesting that you don't do JavaScript development or you ignore the changes that are happening in our marketplace. Instead, I'm advocating that you go in eyes wide open – and that you look for ways to minimize the pain. Right now, as it comes to JavaScript the way I'm looking at this is through TypeScript.
Renaud Comte [MVP]
Live from Vegas
Enfin, une petite session sur le Branding SP2013 avec Randy Drisgill : le papa de la starter master page 2010
Nous dirons une personne digne de confiance

La session vas évoquer 3 niveaux de branding : low / medium / high / effort
Branding :
- symbole de qualité
- concerne l’esthétique du site
- Master, page, layout, css, image
Rappel : même le plan de base sous 365 possède un site publique
SP2013 introduit un niveau intermédiaire de design en terme d’effort
>>> vous n’êtes plus obligé de forcement reprendre toute la Master grâce au design Manager

Page editing est similaire à SP2010 : peu de surprise
Le moteur de theming est proche de celui de Wordpress : simple et très visuel

- vous pouvez changer les thèmes de couleurs rapidement en ligne
- drag and drop le logo ainsi que l’image de fond : nice

Design Manager
la nouveauté : ease of branding & design
>>> permettre au designer classique de charter un SP
Disponible pour SP Server for sites avec Publishing
Le Snippet Manager permet de générer des samples SP prêt a l’emploie pour préparer votre propre Master
>>> comme un schéma prêt a coller

- il peut aussi générer les packages en autonome
- peut être importer facilement
- simple sandbox solution
Demo
Petit truc : mapper votre MPGallery à un drive

- Upload une charte HTML complete avec image et css
- Changement de classement face à SP2010
- Lancement de Design Manager depuis le site action (outil web si si)
- sélection de la Page html en draft
- conversion live en MP
- attention, votre charte doit être xhtml !
- il faut ensuite placer les PlaceHolder
- avant, ne pas oublier de publier la charte !
- menu Snippets
- sélection des composants SP basiques
- toutes ls propriétés sont accéssibles
- génère le code html du composant
- il ne vous reste plus qu’à l’injecter dans votre Master généré via le share drive
- Sauvegardez
- vos modifs de master sont en ligne !
- WAOH
- il ne reste plus qu’à retoucher si besoin


CSS
- Corev15 a encore grandit
- FF Firebug / IE Tool sont vos meilleurs amis
- il suffit ensuite de modifier votre CSS dans le drive et rafraichir
SharePoint can really look like what you want now
Full branding
Ne jamais oubliez un véritable Test & QA

- Attention,
- sous SPF ou sans Publishing : pas de Design Manager
- si MDS activé : il vous faut une Custom Master
- Minimal Download Strategy
le Design Manager ne remplace pas la refonte complète d’une master vierge mais dans 80% des cas, il peut être une vraie alternative a considérer

Dans le cas d’une refonte profonde et complexe : il y a toujours
>>> la démarche est quasi la même : à vous de manipuler les contrôles
WCM
la nouveauté : la Content Search WebPart
O365
Chaque plan proposé possède un site public
Une toolbar permet d’accéder aux principaux composant graphique et de les éditer online comme une page de publishing

Si publishing activé, le design manager est aussi disponible !
Conclusion
L’arrivée du Design Manager change le donne et rend enfin accessible le charting SharePoint
Imaginer donc qu Notepad ++ et autre éditeur Adobee sont enfin possible et recommandé !
Mais attention un charting avancé demandera toujours une bonne connaissance de SP2013 et de ces contrôles : à vous de pondérer le besoin réel
Renaud Comte [MVP]
Live from Vegas
Enfin une session avec le fameux Ted Pattison mais surtout sur un sujet peu voir pas couvert sur la SPC …
>>> le développement d’apps en Provider Host sur Premise
Ou si vous préférez : “comment coder en ASP.Net C# une app sur mes serveurs Premise”
En effet, SPhost vise SharePoint et AutoHost la version 365/Azure Cloud.
Question : Comment profitez du App model dans le cas de SharePoint On Premise ?
Une seule réponse le Provider Host et pour sa sécurité : le S2S High Trust
>>> Cette session étant la seule à l’évoquer, j’y suis présent
et au premier rang
Go : la session est présenté comme Hardcore par le speaker
Peu d’It présent à la session mais surtout des Devs ayant bien pratiqué la beta
>>> soit les seules pouvant comprendre le titre et le sujet de la session
Problèmes de sécurité sous SP2010
Code in farms solution need to be full trust, code run
- as current user
- as God account : SharePoint/System
Code in Sandbox : code use the current user permissions / no way to elevate permissions
>>> Microsoft need to found a new model to allow App Model developement
So bad : l’alarme de l’hotel vient de se déclencher …. 10 minutes de flash light et d’alarme plus tard, nous reprenons

Authentification & Authorisation
- SP 2013 supporte
- user authentification et app authentification
- configuring permissions for user and apps
Désormais, les utilisateurs sont identifiés par Claims : plus de classic mode (sauf en PS )
>>> les apps ne marchent que sous Claims security
App authentication
il y a 3 types d’authentification des apps
- internal
- external using OAuth
- External with S2S
Apps Architecture
- SP Hosted Apps
- App stored in a child site as app web
- only client side code
- Cloud Hosted
- deployed as remote web
- client and server code allowed
S2S High Trust
Trust connection between app and SharePoint
- eliminate the need for ACS
- trust use SSL certificates
- App use the private key to require access
- requires Security Token Service on SP Server(s)
OAuth is only working with O365


Ce mode a été proposé en certification à la certification OAuth mais ce n’est pas encore finalisé à priori, il faut cependant définir un mode de trust secure pour des serveurs On Premise a la différence d’O365
Architecture

Configuration
- PS of course + admin configuration
- Developper need to use TokenHelper class to access S2S token
- each SP server has to be configured
- S2S App need also a App Principal


La configuration reste assez complexe vu qu’il faut une certaine maitrise des problématiques de certificats et des tokens
La seule bonne nouvelle est que VS 2012 gère au moins la partie enregistrement de vos Apps S2S
En ce qui concerne le TokenHelper, il y a un piège : il ne gère que le NTFS, vous devez en implémenter vous même si vous utiliser du FBA ….

la solution VS pour du S2S demande de bien configurer l’ensemble des token id et client id dans le web.config afin de permettre l’authentification
Conclusion
hum hum difficile d’être optimiste en ce qui concerne un développement d’App on Premise. la plomberie de configuration demande un vrai investissement de paramétrage et de compréhension
Souhaitons tous que Microsoft finisse une documentation ainsi qu’une suite de PS clé en main ou la seule solution de faire des Apps sur du Premise sera en JS et SharePoint Host
Si vous êtes curieux, la session et le code est sur le site Critical Path section member : petit conseil, lisez le bien et faites vous votre avis
Renaud Comte [MVP]
live from Vegas
Mots clés Technorati :
spc12,
spc,
SharePoint
Continuons sur la dynamique de recherche surtout avec Scott Hillier
Soit les briques pour construire tout type d’application sur le search SP aue ce soit Premise ou Online
Search = Data Access Technologies

- meilleur outil pour aggréger l’ensemble des données d’un utilisateur
- comme toutes les taches ou schedule par exemple
- plus puissant aussi
- soit le tools 2013
- CAML and CSOM
- REST
- Search
- au revoir SiteDataQuery et Linq for SP (les modes passent décidemment)
Managed properties
- mapped toc rawled properties
- Site columns sont automatiquement déclarés comme Managed properties
- Publishing : ows_r_ 4 lettres
- metadata : ows_taxid
- all the other : ows_q_4 lettres
Keyword syntax
- Fast syntax is not more a good advice, it’s become uncool …
- learn some keyword tips like
- FileExtension:docx
- lastname:c*
- apps near SharePoint
- ContentClass:STS_List_Item_Events
Demo

- revue de sample de recherche utilisant des urls de query language
- No code !
- just a links list !
- Xrank to boost some result
- like Docx but without ignore PPT
- WORDS()
- permet de définir des équivalences comme REST et sa definition
Building Blocks
- Result sources
- Query Rules
- alters query under given conditions
- Result Types
- Search Navigation
Nous pouvons enfin exporter et importer l’ensemble des la configuration du search
>>> enfin la gestion de dev/recette/Prod est facilité …
No code search solution

- CSWP : gérer les “upcoming event”
- query : fixed query rules
- display : list & detail in 4 lines
- search tabs
- My events : reuse the query rules and the display
- My Tasks
- My teams
- My documents
- My portals
Microsoft a vraiment fait un lourd investissement dans la boite à outil de recherche
- Result source
- are reused in navigation tab or the CSWP
- Result types
- define some conditions
- define the display template url
- just some html, js, css and some token
- Query rules
- change dynamically the query of the user based on condition
- like
- training : force sur le path d’une liste dédié au training
REST and CSOM
N’oublions pas nos amis les développeurs : quand même 
Restful is the best investment : _api/search/query?querytext=’ ’

N’oublions pas les couples JS/CSOM ou CS/CSOM aussi au besoin ou CS/REST (un peu moins consistant)

Demo
- A to Z People directory
- REST for small letter search
- just surface the my site
- Permissions
- you have to trust
- some specific permission about user context or not
- SharePoint App : document app
- the app page reuse the WP from the classical search interface
- or use a dedicated look like A to Z list
Conclusion
Jamais la boite à outils du moteur e recherche n’a été si remplie : il ne reste plus qu’à en profiter et ce depuis tout types de périphériques ou interface, SP or not !
Renaud Comte [MVP]
live from Vegas
Session dans la mouvance actuel du Content Search et le WCM.
Petite originalité, une session indepth & overview, nous verrons bien
Avantage du nouveau modèle
- l’actuel est bien, pas de soucis avec le publishing tel que l’on connait et qui fonctionne
- le nouveau permet de s’affranchir de certaines limites connues du WCM actuel
- séparation des Site Collections
- élimine les problèmes de goulot d’étranglement des listes
- Publishing flexible et dynamique
- Séparation présentation & storage

- Ce n’est pas une question de recherche de contenu mais savoir si le contenu est prêt a être chercher et remis en page ou en avant
- en pratique
- le crawler indexe le SP content et les datas externes
- la recherche travaille directement avec la couche de publishing
- votre site devient l’interprétation d’une storyboard de contenu basé sur des query rules contextuel
- WCM devient SP Story Telling

- Component
- Content Search WP
- Display Templat
- Query rules & Builder
- Content Catalog
- Managed Navigation
Soit donner un skin à des résultats précis comme un diaporama pour des images ou une grid pour des documents
niveau performance, les pages SP ne sont appelés qu’une seule fois … lors de l’indexation. Lors de la partie Web, il ne s’agit que du cache du moteur de recherche
Content Search Webpart
Ces avantages et qualités sont contre balancés par le seach index lag … Mais les ajouts de Fast au moteur SP l’ont largement amélioré : performance, live crawl, ….
le soucis peut provenir si le créneau de mise en ligne de contenu est < 2 secondes.
PS : même dans ce cas, vous aurez bien d’autre soucis à gérer pour une telle disponibilités non ?
Demo
- utilisation de la content search WP
- Query Builder
- Refiner tab
Display templates
Des gabarits HTML de rendu des résultats réutilisables

Vous pouvez laisser les query rules aux gestionnaires de contenu et déléguer les display templates aux équipes de communications, tout simplement.
A noter que vous pouver définir des rules globales reutilisables dans les Content Search WP (et les personnaliser…)
Content Catalog
Nouveauté :
- activer & créer du contenu dans une liste
- indexer
- connecter et présenter son contenu comme catalogue/source

- disponible cross farm !
- juste un param de liste ou de library
- linked to the Metadata Navigation
Managed Metadata Nevigation
Enfin une navigation indépendante de la structure et de la hiérarchie de SharePoint. Elle s’appuie sur le plan de classement défini pour le site
- plus flexible
- contextuel
- global
- et au cas ou, plus de “pages” dans les URLS !!!!
Chaque point de la navigation peut exploiter un catalogue de contenu

Cross Site Publishing
What is it ? un peu tout a la fois
>>> un mixte de toutes les nouveautés de WCM 2013

Create content in a authoring site and use it in any SP publishing environment
- require
- Publishing feature
- Catalog
- same index service for every SP site
- do not replace content deployment


Est utilisé aussi pour distribuer le contenu en multi langue !!!
Conclusion
Enfin un panorama de l’envergure complet de l’implémentation du publishing sous SP2013
Que de bons changements, maintenant, il faut rentrer dans les détails
Renaud Comte [MVP]
live from Vegas
Mots clés Technorati :
spc12,
spc,
SharePoint
une session de Scot Hillier, un pur MVP codeur et surtout un JS Fan de longue date
![SPC 2012_thumb[1]_thumb SPC 2012_thumb[1]_thumb](http://blogs.developpeur.org/blogs/themit/SPC-2012_thumb1_thumb_thumb_00E7F6CD.png)
image en upload …
SP2013 demande clairement de bien connaitre et comprendre le javascript. Cette session veut nous donner les clés pour bien démarrer
L’ensemble des démos est dispo sur http://hillier.codeplex.com : Merci Scott !
trips and tricks
- Always use “strict mode”
- “use strict”;
- impose plein de contrainte
- durcit votre code et evite les fautes d’inattention du a la flexibilité de JS
- Avoid coercitiv operator
- Use pattern to structure your code
- Singleton
- Module
- méthode interne / externe
- Prototype
- permet de définir des objets et d’utiliser le NEW

- Deferred object : Promises
- Simplify asynchronous operations
- SP demande plus d’une opération async , soit des nested calls …
- tout devient complexe : spaghetti code ….
- utilise l’objet Deferred object de JQuery
- encapsulation de la complexite des nested calls
- cache des call
- incontournable si vous voulez survivre dans les apps JS

Demo de Deferred
- Soit une grid avec text et image
- double call sur l’artiste et ses jaquettes de musiques
- Création d’une app
- attention, les apps ont des droits comme un user ! Ne pas le negliger, ex : cross domain …
- définition des endpoints nécessaires
- on utilise SP.WebRequestInfo
- utilise les définition EndPoints
- l’utilisation du deffered se fait dans la classe de rendu via la fonction de resolve
- A noter : KnockOut pour le render

Using libraries
- segregate your code into libraries
- minify libraries
- consider the use of a CDN
- pointing an external url in the source element
- utiliser MS ou Google pour récupérer les libraies JQuery
- load SP libraries dynamically
- permet à vos apps d’être contextuel
- $.getScript
Demo
- Spinner en html 5 et non un gif animé
- sous VS
- en debug : version lisible
- en release : crucnh version
- utilisation de ///reference pour l’autocomplete mais sur les fichiers debug
- reference de script dans le code sur la release
App Practices
- REST
- MVVM Pattern
- App UI guidelines

Comprendre REST
- REST : use URI to specify an operation
- ODATA : maps CRUD to http verbs GET/POST/PUT/DELETE/PATCH
- Please use REST
- vous pouvez utiliser plus facilement toutes les libraries dsiponibles comme KO plein d’autre
- Plus simple de faire du JS et être 365 ready avec un SP Host App que de faire du Provider Host App juste pour écrire du CS
- Pour info
- le CSOM et les ODATA call ne sont que des call sur le REST SVC de SP2013, soit _api
Bref, la voie est tracé, il faut la suivre, tout simplement
- utiliser le $.getJson
- vous permet d’utiliser data.d.title directement sans parser le XML
- plus efficace que de le faire en JS pur via $.ajax

MVVM
- Ce pattern permet de séparer litteralement les données de sa presentation et de les synchroniser sur MAJ
- Le ViewModel sert de bus de communication.
- La librarie de référence : Knockout.js
- Arrêtez de concaténer et d’injecter votre html : binder le tout simplement !!!


AppUI guidelines
- permet de recuperer le charting de votre site SP dans votre App
- WebTemplate pour ASPX
- Chrome contol en JS pour les pages HTML
Demo
- Utilisation de
- chrome control pour la navigation : var json pour déclarer l’ensemble des pages de l’apps
- KO
- KO monitor un tableau
- tout le code charge des objets JS et les ajoute à la fin au tableau
- KO s’occupe de binder lui meme la grid
Conclusion
Session de haut niveau si jamais vous n’avez pas toujours plongé dans la puissance du JS et de ses “codes”
Scott donne de vrais bonnes clés pour bien démarrer dans le développements d’application business réelles sans tomber dans les pièges de débutant
Désormais les Best Practices de SP incluent celles du monde Client Side
(Aurelien Verla, si tu lis ce post, je sais que tu savoures ce moment
)
Pensez à vite downloader ces samples
et ensuite à bien les décortiquer
Ce sera vite une question de qualité et ou de survie
Renaud Comte [MVP]
Live from Vegas
Mots clés Technorati :
SharePoint,
spc,
spc12
[Une session orienté sur la customisation du content search, a priori, la nouvelle brique fondamental du moteur de SP2013

Le content search permet de s’affranchir de toutes les limitations connues de la CQWP : bienvenue à la CSWP
Ce composant profite du moteur d’indexation de SP largement remanié avec l’aide de FAST.


la CSWP utilise un query builder Web vous permettant de prévisualiser vos résultats.
Bonne nouvelle : au revoir le XSL lourd et imposant de la recherche SP, la CSWP utilise désormais des Display Templates.
Soit du HTML, du CSS et du JS 
Demo
- Content Search in Action
- just a WP in Content Roll Up category
- by default : result show 3 last Modified items
- build the quey
- select the base query like document
- restrict with custom prop
- add filter and so on
- change the display template
- combo of template with live preview

Aussi flexible si ce n’est plus que notre cher CQWP
il existe aussi un jeu de WP Search Drivent pour les types les plus important comme par exemple un carrousel JS d’image. ce ne sont que des CSWP personnalisé et re personnalisable évidemment
- Advance Query
- toolbar donne accès a une zone de recherche plus avancé
- ajout de propertie dynamique
- sql search en text modifiable
- idem pour l’order et les autres propriétés de la query
- Test Tab
- permet de simuler un peu les résultats de recherche avec un minimum de template et de refiner
la CSWP permet donc
- roll up document from another site collections
- change their look
- put a slideshow
- get the last updated web site
Les display templates
ils existent dans la MP gellery, just copy and update to change
Vous pouvez utiliser n’importe quel éditeur pour les mettre à jour
Demo
- open the MP with explorer
- folder : dsiplay Template
- 3 kinds : control item display
- there is 2 files : html and JS
- you modified the html
- SP generate the js automatically
- JS is the real display use by the engine !!!
- Edition live avec Notepad ++
- simple HTML avec du prop mapping
- prop:alias1,alias2
- on compose en JS l’utilisation des propriétés
- on met en page en html
- via des tokens de remplacements ou du JS
- _# value #_
- cela revient a mixer de la logique en js et du mapping
- un peu comme composer une page aspx en design avec du inline code
- simple et assez intuitif
- extrêmement puissant !
- vous sauvez depuis notepad ++
- le js est généré live
- F5 sur votre WP Page
- la modification est visible LIVE
- exemple en demo : gérer un “NEW” conditionnel


Bonnes nouvelles les WP de recherche ont toute été revus pour faciliter l’intégration et la personnalisation
Result types
- plumb properties
- create the look you want
- hook the template to result type
permet de relier un type de résultat dans un jeu de résultat : mieux identifier un type dans un ensemble
>>> soit des résultats bien plus lisibles ! Fini le melting pot visuel

Si vous utilisez des Site Columns dans vos Content Types, le crawl/search engine crée directement les managed properties : ENFIN !!!!
Il n’y a plus qu’à composer 
- Préparer une query définissant le result type (via un builder)
- on associe un display template
- en action
- désormais les marketing campaigns ressortent
- leur panel est personnaliser avec les meta data
- bien sur les templates utilisent le même système de token et js/html
- pour l’affichage d’une carte Bing Map
- utilisation mixte de JQuery event et de CSOM like
Avant : ppt classique

Après : Ppt campagne marketing

Demo : que faire en cas de problème ? ou comment coder debugger ces templates ????
- en cas d’erreur, le résultat en recherche contient une message de debug complet pour vous aider
- fini le XSL error global
- vous pouvez aussi utiliser un debugger JS
- le JS code est similaire au code du template
- ctx.CurrentItem : cette variable contient toute les datas de recherche en retour


Conclusion
la CQWP est morte, au revoir mon bon ami
Bienvenue à la CSWP : plus puissante, plus ergonomique, plus tout …
A se demander comment on n’a pu s’en passer depuis 10 dans SharePoint, et je ne vous rappelle pas la puissance du search engine FAST optimized 
Un hit ä suivre et a maitriser au plus tôt
Renaud Comte [MVP]
Live from Vegas
Mots clés Technorati :
sharePoint,
spc12,
spc
Une session plus technique pour changer (et faire plaisir à mon petit cœur de développeur)
![SPC 2012_thumb[1] SPC 2012_thumb[1]](http://blogs.developpeur.org/blogs/themit/SPC-2012_thumb1_thumb_2CE6271E.png)
image en upload …
Comme dirait le speaker Technical Evangelist : “it’s a great day to be a developper”
Scenario overview
- business : a mobile toolset for sales
- technical : best use of cloud technologies
- soit 8 à 9 layer techniques de Word en passant par win8 et azure, o365 …
L’application fonctionne sur Win8
- tiles dynamiques
- alertes
- app de présentation de data avec charts
- chart provenant de Excel Web App sur 365
- génération de document word avec données d’Azure
Le processus complet est présenté entre les 9 couches logiciels simplement et logiquement (avec en fond un rire global de la salle un poil apeurée vu la relative richesse et complexité de l’appli en demo)

Pour info, la vue web de l’appli sur 365 se fait directement depuis un IPAD (merci SP2013, JQuery mobile et Html5)
la demo enchaine avec des demandes de validation sous 365 de devis sous Word. les tqsks de vqlidqtion sont relqyé par les events de win8
Le devis une fois validé crée live un espace projet pour traiter la commande
Bref, une appli de demo mais basé sur un scénario crédible mais volontairement riche en options et technologie : entre petit bijou d’artisanat et l’usine à gaz




Mais en pratique :comment ca marche ?
Hosting : Azure + 365
api : The new _api aka REST
- client symmetrical
- OAuth
- + 2000 classes
- Odata
- Jquery compatible
- …
En résumé, l’api de choix pour les apps (qui enterre un peu le CSOM classique)
On enregistre l’App pour obtenir un App Principal qui sera utilisé pour l’ensemble des connections avec OAuth
Mais vous devez faire un TRUST de votre App ensuite pour valider le tout.
L‘authentification est transparente en apparence mais complexe en réalité. Merci OAuth et le framework App de tout bien gérer
- soit user credentials
- soit App token + User Token
- Soit App token avec full trus de l’utilisateur
- soit anonyme aussi, ne sait on jamais
Submit & request for quote forms
- it uses the Provider hosted app model
- MVC4 application on Azure
- SQLAzure too
le projet VS est présenté avec ses couches techniques
la page d’index de la solution Provider gère l’intégration dans 365
- on récupère l’url du site 365 cible
- getscript de la biblio JS SP.UI.Controls.js de la cible
- un callback JS charge la navigation avec les paramètres spécifiques de l’appli
les calls serveur se font via $.ajax sur les SVC du provider tout simplement
Windows Push Notification Services WNS
Ce service est piloté par le site 365. l’application cliente appelle aussi ce service pour alerter l’ensemble des acteurs connectés si évolution des devis
Techniquement, les calls reposent sur
- event receiver : remote/external/local
- custom code also
- on event or process
- depuis le JS des formulaires de saisie : tout est possible
- de simple flux XML :Toast
“it’s a component oriented development”
intégration WIN8
- Toast, tile, raw notification
- tiles, charts, …
- everything you want
api
- Win8 of couse
- SP
- Win Azzure if needed
App SharePoint
Tout repose sur du JS et du JQuery, tout simplement
Merci OAuth
Cette technologie est la clé de voute : C’est elle qui permet d’uploader, de valider, de connecter, …
Elle est incontournable pour tout type de Développement impliquant Azure et 365
Sans elle, aucune solution pour avoir une communication cohérente et transparente des permissions
Conclusion
L’application présenté est un véritable showroom complet de l’univers Microsoft.
Monstrueuse : oui mais facilement compréhensible étonnamment
- le pattern est toujours le même
- le modèle de développement des Apps est vraiment consistant que ce soit
- les 3 modes de SP
- cloud or not
- même pour les applications Offices
C’est vraiment une belle journée d’être développeur mais, mon dieu, elle vas être bien longue 
PS : après une petite discussion avec Todd Baginski, attention, le déploiement Autohost ne fonctionne que sur Azure, Pour utiliser le App cloud Model on Premise, et faire fonctionner OAuth, vous devez configurer vos serveurs avec S2S
Renaud Comte [MVP]
Live from Vegas
Mots clés Technorati :
spc12,
SharePoint,
spc
Pouvant partage mon agenda avec mon collègue, je peux profiter de certaines sessions orienté Business et retour d’expérience.

Comme celle ci sur le site internet de Jones Lang Lasalle, leader dans sur le content provider en Real estate

Jones Lang LaSalle is a financial and professional services firm specializing in commercial real estate services and investment management. Our more than 40,000 people in 1,000 locations in 70 countries serve the local, regional and global real estate needs of those clients
http://www.us.am.joneslanglasalle.com/UnitedStates/EN-US/Pages/Home.aspx
(oui c’est bien du SP)
Ce client historique Microsoft et surtout SharePoint, a travaillé des le début de la beta sur SP2013.
Actuellement, SharePoint est utilisé pour le site Web, l’intranet ainsi que la collaboration

Leur problématique est de bien gérer les agrégateurs de contenu que ce soit mobile, tablet ou tous nouveaux système sortant du néant mais vite incontournable.
Le besoin de mobilité pousse leur marketing team a être extrêmement agile
forte influence du traffic mobile sur le site : 182% d’augmentation en 1 an

Certes IE reste majoritaire , mais les autres navigateurs sont réellement présent comme les tablettes. A noter que Google pèse toujours 88% des search engines en tant qu’apporteur de trafic
stratégie:
- Cloud and independence
- focus on digital channel
- productivity apps : data driven
- social collaboration to drive people on objectivs

Conclusion de leur analyse :
- “We must think differently”
- no longer one size fit all
Leur implémentation de SP2013 repose sur l’ensemble des nouveautés… purement et simplement

Demo
- Market Presence on the web
- minimize the unvestment
- build their mobile footprint
- content shaping
- technical :
- generic search WP / custom Mobile support
- product catalog
- responsive design
- performance

- leur solution repose beaucoup sur l’intégration des résultats de recherche
- dans la navigation
- dans les carrousel de contenu
- dans la restitution de contenu
- mobilité
- la demo utilise un retro projecteur et un iphone : du live
- repose sur le multi channel de SP2013 et html5
- content segmentation & caching
- technical
- switch to a mobile Master Page
- channel aware webpart
- adapte elle même le contenu



Personnalisation : audience segmentation
soit capturer le comportement de l’utilisateur et adapter la “story” de navigation : content shapping
Content by Search
composant fondamental de leur implémentation
- séparation contenu présentation
- driven by
- scale and performance
- full metadata integration
- display use dedicated and by channell template
Device channel

enables taregeted display of content like Mobile 
- contain user agent strings
- assigned Master Page
Easy to use and control
Sum up : in a perfect world
- SP sites would be mobile friendly
- configuration vs customization
- get back to out of the box
- search would drive a transition from apush to pull marketing
- audience segmentation would fully drive user experience
- metrics and behavior would be fully baked in
- social fully integrated
- capitalize on other MS technologies and integrate emerging technologies

leur conclusion : si ils ne s’oriente pas sur cette voix et que MS pousse l’évolution de leur technologie dans ce sens, la prochaine SPC ne se fera pas à Vegas mais bien dans le désert …
Conclusion
SP2013 semble avoir apporte les briques des gestion qui manquait cruellement au développement WCM et a la gestion des mobiles et de leur contenu
Rien qu’a la vue des solutions et des résultats obtenus, la migration vers SP2013 des sites et serveurs WCM peut devenir une nécessité voir une urgence pour bien des sites SP de publishing
Mais attention, la réflexion devient plus riche et complexe que le simple besoin de publier du contenu bien formaté. il faut le pondérer et le mesurer aue ce soit avec les team techniques et marketing
PS du client speaker : population technique, pensez bien a travailler avec les équipes marketing car ils vont avoir besoin de vous, et ce sont eux qui ont les dollars pour faire le changement 
Renaud Comte [MVP]
Mots clés Technorati :
spc12,
SharePoint,
spc
Après un keynote bien dynamique, commençons le cycle de session avec le coding 2013

La vision : Modernize the platform
- plus de 700 000 SP coders
- 75% des dev utilisent HTML5

les fondamentaux
- Cloud designed
- Consistent Platform
- give choice to developper (why not use JS or PHP)
Soit le App Cloud Model
Demo
- A content App : intégrer Bing Map dans un Excel
- ajout d’une barre outlook pour linkedin ou map directement intégré au contenu du mail
- Access SharePoint
- App Part dans un team site : carrousel
- une app avec une intégration Webpart



Les apps peuvent venir d’un catalogue interne de son entreprise voir de la galerie ou le shop online
Le store permet de présenter et de consommer des apps
L’achat de Apps peut se faire directement pour l’organisation ou un nombre précis de users
Le développement Office et SP pour tous
- Access 2013
- Napa : online browser development
- VS2012 pour toutes les grandes customisations

Demo de Napa
Napa est un app SharePoint permettant de coder dans les navigateur des apps SharePoints sans aucune Install
il suffit de déployer l’app Napa dans un site SSP online par exemple, le modèle Developer site étant particulièrement pratique
- code online de l’app
- déploiement et Debug live
Un bouton permet de tout exporter ensuite sous VS 2012 et de l’étendre sous VS si besoin

Le tout sans absolument AUCUN paramétrage : tester et validé par votre serviteur sur un Eeepc sous win8
>>> il est loin de le temps des attach process sous VS 2003\5
vive les apps 
Renaud Comte [MVP]
Live from Vegas
Mots clés Technorati :
spc12,
SharePoint,
spc
Le show commence et a l'Américaine SVP : show light, musique de film, speaker a la voix grave et 10 000 personnes dans une seule salle …



Le Keynote commence par un grand “Merci” a sa grande communauté de UG, MVP, MCM qui grandit d’année en année
“SharePoint is a way of life”
la SPC en chiffre
- 10000 personnes de 85 pays
- 200 partenaires
- 120 Mvps
Le team SharePoint livre les bases de leur réflexion sur les nouvelles versions
“Que chacune puisse partager et créer son site web”
Pour cela, SP se doit de permettre d’être plus agile, flexible et rapide et ceux de tous les acces possible
il faut pouvoir permettre aux utilisateurs et aux entreprises de mieux partager et de gagner en agilité
Définir a “ New way to work together”
3 concepts : experience, innovation et ecosystem
Next release : leur plus investissement depuis le lancement de SP
>>> le team SP a été divisé en 2
- O365 : datacenter + soft + continuous updating
- le new SharePoint
Jeff Steper insiste sur l’investissement de MS sur les 3 nouveaux concepts
le team User interface a été doublé : clean UI de OWA a SP15
Longue Demo du nouveau O365

- interface 100% web
- multiplateforme
- AJAX, zero AX
- intégration du stockage personnel avec Skydrive
- seach everywhere live
- nouveau system de “Share”
- on partage a des gens, pas de permissions complexe
- Drag and drop directement dans les interfaces de liste (Big Applause)
- Partage interne et externe de l’entreprise via la messagerie
- synchronisation Skydrive Pro depuis Ipad, Surface, Mobile, …
- theming de SP
- drop live des logosm et choix des couleurs, fond, ….
- Team Site
- intégration des conversation directement dans le site : Newsfeed
- vue pleine ecran des WP
- gestion media in screen
- reprise par le Mysite
- tracking et gestion des projets
- manage everything in one place
- les tasks se sync entre site et votre propre compte Exchange
- en bidirectionnel
- appli SP
- dispo win phone 7 et 8
- bientot iphone et android debut 2013

Cloud : toutes les demos sont faites via un Datacenter Europe :)
intégration Yammer : une évidence pour les 2 entreprises
le meilleur du collaboratif et du social entreprise
- number 1
- rapid innovation via cloud updating
- Voluntary adoption
- Grande complicité des équipes
Lol : Yammer et SharePoint en Ganman Style

On ne peut plus renier les impacts du social networking : élection US, facebook et autre reseaux, …
- 200000 enterprises ont Yammer
- Estimation : 6,5 Billions USD
Social : :
- connect for communication and made enterprise change and evolve
- Transform the business
- be more organise
- be more involved in his enterprise and its goals
Yammer souhaite connecter les gens de leur outils principal en enteprise : Office bien sur
Demo
- boutton Socialize this
- creer un thread yammer depuis un simple doc depuis une doc lib
- depuis Yammer
- collaborer
- synchroniser via Skydrive
- commenter versionner et éditer les documents
- appli Win8 de Yammer sur surface




Roadmap : Yammer intègre le pack Office 365 gratuitement !
Enterprise Feature
Soit les nouvelles features du SP15
- Search everything everywhere
- vignettes et prévisualisation en task pane
- ouvre les documents en office Web app a la bonne page !
- Publishing
- SharePoint transforme lui meme un html en Master page
- Snippet : permet de générer des samples de SP
- les copier dans un tools comme dreamweaver
- le recoller dans SP
- End it’s done
- ECM
- Content Search WP
- au revoir la CQWP
- instant result instant index (merci Fast framework)
- ediscovery
- espace de recherche et de decouverte des bonnes informations
- Site Mailbox
- With Exchange
- SharePoint is in Outlook and vice & versa
- work closely and sync together



Innovation dans
- Sharing ans social
- Search
- BI
- ECM
- Task mngt
- Web Publishing

Investissement lourd dans le Cloud : Build from the Cloud up
>>> Ouragan Sandy a pousse plein de société de la cote est a migrer pour avoir rapidement un “recovery plan”
IT integration
- Upgrade d’une ferme SP2010 : zero impact meme visuel sur vos collections de site
- demo live
Performance
- 40% optimisation bandwith
- 50% faster server side
- SQL IO faster by binary management

Development
- we are not forget them, we focused on you !
- bien trop a dire et a montrer : allez voir les sessions
SharePoint 15 fonctionne a merveille on Premise mais tire son maximum avec le Cloud
Cloud App Model
- consistant entre Premise et Cloud
- loosely coupled to SP
Demo par Scott Gutthie himself
(Symbole fort pour ceux qui se rappelle les outils vsewss ...)

- from O365
- développement d’une WP depuis VS2012
- utilise un déploiement mixte Azzure
- permet de profiter de toutes les innovations de .net : MVC, SVC
- Local debug sur 365 sans SP local
- tout tourne en localhost mais avec les datas en trust de SP Online
- Merci Client contex et OAuth
- Jquery et Data Html 5
- Présentation des 3 modes de dev
- SP host
- Auto host (O365 + Azure)
- tout est automatisé et sécurisé
- Provider
- Manifest in SP
- Web App on Azure ou ailleurs !
- Workflows
- ils peuvent tourner sur le long terme sur le Cloud



Conclusion
Mais quel effet WAOH !
Steve Balmer avait dit pour SP2010 que MS faisait un ALL IN avec le Cloud
SP 2013 en est une preuve impressionnante voir bluffante, et ca ne fait que commencer …
Renaud Comte [MVP]
Live from Vegas
Mots clés Technorati :
SharePoint,
spc,
spc12
Après la SPC 2009 in Las Vegas, le retour tant attendu en 2012 avec en guest : SharePoint 2013

Ah Vegas :
Certes, il y a la folie purement locale




Mais bon si la visite du “strip” reste un incontournable, surtout après 11 h de vol depuis Frankfurt, la SPC c’est la première conférence pour et pur SharePoint , et version 2013 SVP !
- des sessions , trop de bonnes sessions
- certains créneaux sont de vrais crève cœurs vu les sujets
- un immense village partenaire pour croiser et échanger avec utilisateurs, client, CP, Experts et MSFTs
- du réseautage : 10 000 personnes uniquement sur les technologies SP
- un 50 aine de Français/Suisse, un douzaine de partenaire et votre Wygwam serviteur dévoué
- des expats comme notre canadien de Nicolas Georgeault

(d’ailleurs je ne suis pas seul, Laurent du bureau suisse m’accompagne pour mieux couvrir tout le contenu )
Biensûr le village partenaire et son coin communautaire et sa cohorte de MVP : 120 présents d’ailleurs avec un Wall of Fame 


j’y suis aussi 

le programme va être riche de contenu, je vais tenter de vous en “ramener” une petite partie via mon blog
Mais en attendant le keynote, il faut récupérer du décalage horaire …
A demain
Renaud Comte [MVP]
PS : vous saviez qu’il y avait un Microsoft Store temporaire à Las Vegas ?
Vive le dollar 

Les 10 derniers blogs postés
-
Conf’SharePoint : 10 bonnes raisons pour ne pas la rater par
Le petit blog de Pierre / Pierre's little blog le 05-14-2013, 02:24
-
[Event] Soirée de lancement Agile .NET France à Lyon par
Blog Agile/ALM de Vincent THAVONEKHAM le 05-13-2013, 01:29
-
.NET / Debug : inspection de la mémoire d'applications .NET (dump ou processus live) : première livraison d'une librairie .NET par Microsoft par
CoqBlog le 05-11-2013, 22:21
-
SharePoint : Incompatibilité avec Internet Explorer 10 (IE10) par
Blog Technique de Romelard Fabrice le 05-08-2013, 16:29
-
AutoSPInstaller pour SharePoint 2013 maintenant disponible en “RTM” par
Julien Chable le 05-06-2013, 23:30
-
[TFS2010] A la recherche du Shelveset perdu par
Blog de Jérémy Jeanson le 05-03-2013, 21:46
-
.NET / Debug post-mortem : obtenir le fichier mscordacwks.dll correspondant à un dump quand on n'a plus d'accès direct à ce fichier par
CoqBlog le 04-28-2013, 19:57
-
[W8] Afficher un graphe par CPU dans le gestionnaire des tâches par
Blog de Jérémy Jeanson le 04-28-2013, 17:48
-
[WCF] Limiter proprement l’accès à vos ressources serveur par
Blog de Jérémy Jeanson le 04-26-2013, 22:59
-
Event : Je serai speaker à la Conf’SharePoint par
Blog Technique de Romelard Fabrice le 04-26-2013, 12:00