Microsoft SharePoint Tour d horizon iware Janvier 2009 Centre de Compétences SharePoint 2009 Agenda Introduction, exemple Fonctionnalités de base Architecture Outils Listes, type de contenu, vues, webpart, BDC, webservice, feature, Workflow Visual Studio Wss, Moss
Historique 2001 Site Server Index&Search, Document Management, Web Content Management, ecommerce, 2001 Sharepoint Portal Server 2001 Reprend l essentiel 2003 WSS v2 & SPS 2003 Webparts, Collaboration Store 2007 WSS v3 & MOSS 2007 Objet de cette présentation Source: http://www.joiningdots.net/blog/2006/08/sharepoint-history.html Exemple RCSO-TIC 12 personnes collaborent pour attribuer des fonds à des projets de Ra&D (extranet) Collaboration Publication vers les chercheurs Outils Librairie de documents Processus, PVs, revues et fiches de projets, Liste personnalisée Membres du comité scientifique (reprise sur le site internet) Webparts(standards et personnalisés) Agenda, évaluation des demandes, PV s, Sous-sites CS-Admin(sous-sites, processus, wikis, ) Professeurs/collaborateurs
Exemple RCSO-TIC Entête / Navigation Modules / Navigation Contenu, webparts Exemple Entête-Navigation Utilisateur/connexion Liens (SP) Titre ou chemin Titre sous-site Racine, site, sous-site Recherche Administration
Modules / Navigation Visualisation-gestion du contenu Librairies de documents Listes personnalisées Discussions-forums Listes des sous-sites Gestion des droits Eléments effacés Contenu, webparts Visualisation-gestion du contenu WP Liste Description Accès aux propriétés du WP WP custom WP Editeur de texte
Terminologie SharePoint Web Application Content Database Site Site Collection List Definition List (instance) Fields List Columns Site Columns Content Types Web Application(s) Top Level Site(s) Site(s) Site(s) Site Collection Physical Server Fonctionnalités de base Collaboration Portal Enterprise Search Enterprise Content Management Business Process& Forms Business Intelligence Licensed for Internet/Extranet
Collaboration Espace de travail en équipe Bibliothèques de documents Agenda Discussions Gestion des versions, avec check-in/check-out Gestion des droits Blogs Wiki Intégration office
Portal Délivrer de l information et des applications dans le contexte de l utilisateur Partage D informations et de compétences D applications métiers De ressources spécifiques selon le rôle Fonctions Framework Modèles de site, sécurité, rôles, syndication Audience, personnalisation Webparts My site, public
Portal Interoperability Portal SharePoint Portal SharePoint Application OOB Web Parts* Web Page Custom WPs RSS Web Web Services BDC Other Portal Other Application SharePoint Storage * OOB Web Parts include: RSS Web Part, SAP iviewweb Part, Data View Part, WSRP Consumer Web Part, Page Viewer Web Part, BDC Web Parts, Search Federation Web Parts LOB System Database **Search protocol handlers can index content from external repositories Enterprise Search Trouver et agir User experience: hit highlighting, query correction, Intègre le Business Data Catalog Recherche sur les personnes et les compétences Recherche étendue OOB connecteurs Partage de fichiers, sites web, sites SP, dossiers publics Exchange, Lotus Notes Open Search Standard Management Règles d indexation Sécurité des accès (query and index-time security trimming) Source: http://www.microsoft.com/enterprisesearch/serverproducts/moss
Search, exemple 8 documents Compte «privilège» 6 documents Compte «lecteur» 2 documents dans des dossiers protégés Enterprise search in moss 2007 Critère de recherche Dépend des résultats
Search sur intra.iict My Site
Enterprise Content Management Document management Libraries, workflow, versioning, content types Information management policies Rules, expiration, auditing, Records management Rights (on& off line), record center Web content management Creating & editing pages, cache management, publishing Converting files to web pages Office files Business Process & Forms Workflow Automatisation de tâches répétitives Développement sur mesure Sharepoint Designer, Visual Studio Formulaires Création InfoPath Saisie des données InfoPath et/ou Browser (Moss 2007) Interaction avec les workflows Données XML
Exemple WF & Form Source: travail de diplôme Comem+ Exemple WF & Form
Business Intelligence Excel Services Dashboards & KPI s Report Center Websites Data Connection Libraries & Business Data Catalog Rapport, exemple KPI List Webpart Excel display KPI définition
Architecture logicielle Pile Technologique SharePoint Applications/Portals Collaboration Discussions Calendars E-Mail Presence Project Mgt. Lite Offline Enterprise Content Management Authoring Approval Web Publishing Policy/Auditing Rights Management Retention Multi-Lingual Staging Personalization My Sites Targeting People Finding Social Networking Privacy Profiles Search Indexing Relevance Metadata Alerts User Experience Business Application Integration Rich Forms Web Forms Biz Data Catalog Data in Lists LOB Actions Single Sign-On BizTalk Integration Business Intelligence Server Calculations Web Rendering KPIs Dashboards Report Centers SQL RS Integration SQL AS Integration Core Workspace Services Storage Security Management Topology Site Model APIs Repository Metadata Versioning Backup Rights/Roles Pluggable Auth Per Item Rights Trimming Admin UX Delegation Provisioning Monitoring Config. Mgmt. Farm Services Feature Policy Extranet Rendering Templates Navigation Visual Blueprint Fields/Forms OM and SOAP Events Deployment Operating System Services ASP.NET (Web Parts, Personalization, Master Pages, Provider Model for navigation, security, etc.) ADO.NET / SQL Server IIS Windows Workflow Foundation
Rôles des serveurs SharePoint Web Front End Shared Services Provider Index Server Query/Search Excel Calculation Server Forms Server Database Server Différentestopologies : D uneseulemachine jusqu àunearchitecture hautementdisponibleet évolutive Ferme SharePoint Serveurs Une collection de un à plusieurs serveurs, chacun ayant une ou plusieurs fonctions : Web Server Web front end (WFE) Pas de services oudonnées, ne sertquedu HTML Evolutif- Network Load Balanced (NLB) Application Server Héberge des services Database Server Configuration Contenu des sites
Ferme SharePoint Base de données de configuration le coeuret l âme de la ferme Service SPTimer le chef d orchestre de la ferme Central Administration Opérations/tâchesadministratives Plusieurs sites sur une ferme Browser: HTTP GET http://server/appname IIS / ASP.NET C:\inetpub\wwwroot\appname C:\inetpub\wwwroot\appname C:\inetpub\wwwroot\appname C:\inetpub\wwwroot\appname C:\inetpub\wwwroot\appname web.config web.config default.aspx web.config web.config default.aspx myapp.css C:\inetpub\wwwroot\appname C:\inetpub\wwwroot\appname myapp.css web.config default.aspx default.aspx default.aspx web.config myapp.css web.config myapp.css mycontrol.dll Database C:\inetpub\wwwroot\appname default.aspx mycontrol.dll myapp.css Database default.aspx myothercontrol.ascx C:\inetpub\wwwroot\appname mycontrol.dll C:\inetpub\wwwroot\appname mycontrol.dll myapp.css myothercontrol.ascx Database C:\inetpub\wwwroot\appname myapp.css Databaseweb.config myothercontrol.ascx mycontrol.dll myothercontrol.ascx C:\inetpub\wwwroot\appname web.config default.aspx web.config Database myothercontrol.ascx C:\inetpub\wwwroot\appname web.config mycontrol.dll Database default.aspx myapp.css mycontrol.dll default.aspx Database myothercontrol.ascx default.aspx myothercontrol.ascx myapp.css web.config myapp.css web.config myapp.css mycontrol.dll default.aspx Database default.aspx myothercontrol.ascx mycontrol.dll Database mycontrol.dll mycontrol.dll Database myapp.css myapp.css myothercontrol.ascx Database myothercontrol.ascx myothercontrol.ascx mycontrol.dll mycontrol.dll Database Database myothercontrol.ascx myothercontrol.ascx
Plusieurs sites sur une ferme Ghostedpage : Non customisée Réside sur le File System all work and no play makes Jack a dull boy all work and no play makes Jack a dull boy Unghosted page : Customisée Résidedansla base de données Page construite en mémoire Une seule infrastructure de Provisioningpour tous les sites WSS Architecture matérielle
Architecture serveurs Déploiement de base 1 serveur Tests/dév 2 serveurs Minimum Source: http://technet.microsoft.com/en-us/library/cc263044.aspx Architecture serveurs Redondance minimale La répartition des applications sur les serveurs est souple Ferme de 3 serveurs Ferme de 4 serveurs
Architecture serveurs Redondance plus forte Ferme de 5 serveurs Ferme de 6 serveurs Central admin
Central Administration Central Administration
Shared Services Provider Objectif: Séparation des services par rapport aux portails Requispour les fonctionnalitésoffice Server de niveau sites et cross-sites Profiles and Audiences My Sites Search All of Excel Services All of the BDC (Business Data Catalog) Shared Services Provider
SPGlobalAdmin SPWebServer SPWebApplication SPControl SPSite SPWeb SPList API SharePoint SPListItem Identité Authentification Authentification intégrée Windows ASP.NET Membership ASP.NET implémenteun fournisseursql Server MOSS estlivréavec un fournisseurldap Extensible via développement personnalisé Autorisation Contrôled accès/ Basésurdes rôles Personnalisation Système de User Profile Audiences- Content targeting
Outils Listes type de contenu Vues Webpart BDC Webservice Feature Workflow Liste personnalisée On peut définir les éléments suivants: Colonnes Types de contenu Workflows Formulaires d ajout / modification
Liste personnalisée Création (1) Liste personnalisée Ajouter une colonne
Liste personnalisée Editer élément Type de contenu But: encapsuler des colonnes et les rendre indépendantes d une liste Equivalent à une classe en POO Colonnes en tant qu attributs Workflows en tant que comportements Formulaires d ajout/édition/affichage personnalisables Système hiérarchique basé sur ID Association d un template office
Type de contenu Création (1) Type de contenu Ajout de colonne
Type de contenu Associer à une liste Type de contenu Edition d un élément
Type de contenu - Utilisation Word 2007 Vues Colonnes à afficher Tri Filtres Groupes Styles
Vue Création (1) Business Data Catalog (BDC) Connecteles serveursoffice aux donnéesmétier (LOB Systems) Web Parts Listes Recherche List store Search Index Profils utilisateurs Profile Store Applications spécifiques Business Data Catalog Métadonnées WS Proxy ADO.NET Service Web BizTalk, SAP, Siebel, existant, Base de données SQL Server, Oracle, OLEDB, ODBC
Objectifs BDC Pas de code à produire pour l intégration Centralisation du déploiement et de la sécurité des données Prise en charge de scénarios de portail et de collaboration : Requêtes sur les données, indexation, personnalisation Le BDC n est pas : Un outil de gestion de transactions, un moteur de workflow Un outil de transformation de données Un adaptateur BDC en action Téléphone Bureau Lieu de Travail IS-Academia MOSS User Profiles Active Directory Prénom Nom Mail Login My Site BDC Middleware MOSS Fonction Statut Unité de Recherche MOSS Entity MOSS Self Paced Biographie Recherche Enseignement Image
Exemple définition BDC Définition d une Entité Requêtedansla base de données Une entité BDC
Webpart Agencement de webpartssur la page d accueil d un site / sous-site Edition de paramètres Méthode pour développer ses propres webparts Création d une feature avec stsdev Utilisation d une webpart OOTB
Personnaliser une webpart Modifier une page de webparts avec Sharepoint Designer
Modifier une page de webparts avec Sharepoint Designer Webservices Url permettant d accéder aux webservices d un site sharepoint Exemple: http://{site_url}/_vti_bin/search.asmx Exemple: http://{site_url}/_vti_bin/sites.asmx Exemple: http://{site_url}/_vti_bin/lists.asmx Soap 1.1 et 1.2 Référence: http://msdn.microsoft.com/enus/library/cc752745.aspx
Webservices- Utilisation Retour d expérience Utilisation difficile Le contenu des requêtes et des réponses n est pas totalement défini dans le WSDL. Sur certaines plateformes, l'authentification NTLM peut poser des problèmes Problèmes de performances
Features Collection d éléments sharepoint Activable pour: Ferme Application Collection de sites Site Création d un squelette avec STSDEV Feature
Déploiement Manuellement en copiant des fichiers au bon endroit Packages auto-déployables(recommandé pour la prod) Ajout automatique des permissions (CAS) Etapes: 1. Créer un package de la solution avec «wspbuilder» 2. Ajouter la solution sur le «solution store» de la ferme 3. Déployer la solution sur la cible (application, site, ) 4. Activer la / les feature(s) Workflows
Workflows Personnalis é 3. Visual Studio 2008 Nb. Déploiements illimité Grande liberté pour la conception Compétences en programmation indispensables 2. Sharepoint Designer Pas de code => risque d erreur limité Déploiement limité à une liste Générique 1. Workflow prédéfini Paramétrable Pas d édition du comportement Etapes de conception d un workflow Liste / Content Type Elément de liste (p/ex un fichier) Dév. Template Workflow Associer Assoc. Workflow Démarrer Instance de workflow Paramètres d association Paramètres d initiation Exécuter Fin
2 types: Workflows Workflowséquentiel Machine à état Intégration de formulaires InfoPath Association Initiation Tâche Modification Utilisation d un workflow prédéfini (1)
Utilisation d un workflow prédéfini (2) Outils Visual studio
Visual Studio Développement de features Définition de sites / listes / colonnes / content types / menus, etc. Workflows Webparts W2003 Server, MOSS 2007 et VS2008 DLL Microsoft.Sharepoint.dllpour utiliser l API Sharepoint Débuggageen s attachant au processus sharepoint Microsoft.SharePoint.dll Modèle objet WSS 3.0 MOSS 2007 Microsoft.SharePoint.dll Microsoft.Office.Server.dll Microsoft.Office.Server.Publishing.dll Microsoft.Office.Server.Policy.dll Microsoft.Office.Server.Search.dll Microsoft.SharePoint.Portal.dll Microsoft.Office.Workflow.Tasks.dll Microsoft.SharePoint.Publishing.dll Microsoft.SharePoint.Workflow.Actions. dll.net managed API
Développement de workflow avec VS 2008 WorkflowCreationEnquetes.dll - WorkflowCreationEnquetes.Workflow1 Développement de workflow avec VS 2008
Développement d une webpart Développement d une webpart
2. Autres outils stsadm administration de sharepointen ligne de commande. stsdev création de squelettes pour le développement de featuresdans VS 2008 http://www.codeplex.com/stsdev guidgen générateur de guid reflector explorateur de classes pour des composants.net wspbuilder création de packages SharePoint SmartTemplates for Visual Studio - http://www.codeplex.com/smarttemplates WSS Moss Le choix
OOTB Layouts de base Sites prédéfinis (blogs, équipe, etc.) Sécurité, gestion des droits, synchronisation avec l AD Système de plugins (features) Moteur de workflows Moteur de recherche Interfaces pour l administration WebpartsOOTB (calendrier, liste de contacts, etc.) WSS MOSS Windows Sharepoint Services (WSS v3) Contient les briques de bases Fourni avec Windows 2003 Server Microsoft Office Sharepoint Server (MOSS 2007) Licence séparée Apporte des outils supplémentaires WSS 3.0 Moss 2007 Standard Moss 2007 Enterprise Collaboration Portal Enterprise Search Enterprise Content Management Business Process& Forms Business Intelligence Licensed for Internet/Extranet
WSS MOSS WSS3 Lists and document libraries Security Site templates for team collaboration Prebuilt Web Parts Management utilities Programming model Moss 2007 Portal site templates Content management applications Business intelligence (BI) applications Forms management Shared services Single sign-on (SSO) Advanced Web Parts Advanced management utilities Source: http://www.directionsonmicrosoft.com/sample/domis/update/2007/04apr/0407s2tpa_sb.htm Références Open source Codeplex open source project communityhttp://www.codeplex.com/ Articles Sharepointisan AwesomeDevAppPlatform - http://blogs.msdn.com/joelo/archive/2007/09/24/sharepoint- is-an-awesome-dev-app-platform.aspx Sharepoint is not a good development platformhttp://codebetter.com/blogs/jeffrey.palermo/archive/2007/09/ 13/sharepoint-is-not-a-good-development-platform.aspx Sharepoint is a good development platform for applications - http://andrewconnell.com/blog/archive/2007/09/24/6116.aspx
Au final Une grosse artillerie Compétences Savoir faire Potentiel Maturité Marché Questions / discussions S ilrestedu temps