Markus Böhm Microsoft Schweiz GmbH [email protected].

58
Markus Böhm Microsoft Schweiz GmbH [email protected] SharePoint 2010 for Information Architects

Transcript of Markus Böhm Microsoft Schweiz GmbH [email protected].

Page 1: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Markus BöhmMicrosoft Schweiz [email protected]

SharePoint 2010for Information Architects

Page 2: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

AgendaSharePoint Architekturelemente

Daten in SharePointSharePoint Listen vs. DatenbankenContent-TypenÜbergreifende Suche

Dokumente

Page 3: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

ListItem

Site

WebPart

SiteCollection

WebApplication

ApplicationPool

IIS

WebPartPage

List

SharePoint «Org chart»

Page 4: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

WebApplicationSharePoint - 80

ApplicationPoolSPPool

IIS

Physische Datenspeicherung

ListTasks

SiteCollection/

SitespHome

ListTasks

SiteCollection/sites/products

SiteProductXY

ListTasks

SiteCollection/sites/customers

SiteCustomerABC

Page 5: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

WebApplicationSharePoint - 80

ApplicationPoolSPPool

IIS

«Informations-Inseln»

ListTasks

SiteCollection/

SitespHome

ListTasks

SiteCollection/sites/products

SiteProductXY

ListTasks

SiteCollection/sites/customers

SiteCustomerABC

Page 6: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

ApplicationPoolSPPool

IIS

Service Applications

ListTasks

SiteCollection/

SitespHome

ListTasks

SiteCollection/sites/products

SiteProductXY

ListTasks

SiteCollection/sites/customers

SiteCustomerABC

WebApplicationSharePoint - 80

Service ApplicationSearch

WebApplicationSharePoint - 80

Leistungen «zentral» zur

Verfügung stellen

Page 7: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Werkzeugkasten

Page 8: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Information Architect - Toolset

PowerShellSharePoint Designer

Page 9: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Daten in SharePoint

Von SharePoint Listen, Entity Frameworks und externen Contenttypen

Page 10: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Variante 1:Datenhaltung in SharePoint Listen

Page 11: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Beispiel einer SharePoint Liste

Page 12: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Auswahl einer Ansicht

Page 13: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Standard SharePoint Liste

Page 14: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

• Gehört zu einer Site• Erbt Security der Site, kann aber

abweichen – bis hin zu Row-Level-Security

• Spalten mit Vielzahl an Datentypen

• Ordner als Strukturierungsmittel• «beliebig viele» Einträge• Verschiedene Ansichten um

Listeneinträge zu präsentieren

SharePoint Liste

Page 15: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Einstellungen auf Ebene WebApplication

Page 16: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Weitere OptimierungsmöglichkeitenAuf Ebene Liste:

Auf Ebene View:

Page 17: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Variante 2:Entity Framework

Page 18: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Entity Framework in Visual Studio 2010

Page 19: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.
Page 20: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.
Page 21: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.
Page 22: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.
Page 23: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.
Page 24: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Gegenüberstellung (beta)SharePoint Liste Tabelle in einer Datenbank

VersionierungRow-Level Security

Performance

Rapid Prototyping Programmierung

Integration in Workflow-ing/-ed - Events (deleting, deleted, ...)

«Custom» Business-Logik

«the magic 5.000» Datensätze «unlimitierte» Anzahl Datensätze

Rich UI (InfoPath) selbsterstellte WebParts

... ...

Page 25: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Variante 3:External Content Types

Page 26: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

External Content Types im SharePoint Designer

Page 27: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.
Page 28: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.
Page 29: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.
Page 30: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.
Page 31: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.
Page 32: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.
Page 33: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.
Page 34: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.
Page 35: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.
Page 36: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Entscheidungshilfe

External Content Type3rd Party Daten, offline Nutzung

Listenad hoc, separate Instanzen mit

eigener Security

Entity FrameworkEine zentrale Liste mit vielen

parallelen Transaktionen

Page 37: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Von Daten zu Dokumenten - InfoPath FormulareDemo

Page 38: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

1. Aktiviere Feature«SharePoint Server Enterprise Site Collection features»

2. Im Ribbon wird die Aktion «Customize Form» eingeblendet

3. Form erstellen und publizieren

Zusammenfassung

Page 39: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Listen wiederverwenden

Page 40: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

WebApplicationSharePoint - 80

ApplicationPoolSPPool

IIS

Arbeiten mit Templates

ListTasks

SiteCollection/

SiteProject ABC

Liste mit individuellen Anpassungen

Page 41: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

WebApplicationSharePoint - 80

ApplicationPoolSPPool

IIS

Arbeiten mit TemplatesList Template

myTasklist

ListTasks

SiteCollection/

SiteProject ABC

GalleryList Template

SiteTopLevelSite

Save as Template

Page 42: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

WebApplicationSharePoint - 80

ApplicationPoolSPPool

IIS

Arbeiten mit TemplatesList Template

myTasklist

ListTasks

SiteCollection/

SiteProject ABC

ListTasks

SiteProject DEF

GalleryList Template

SiteTopLevelSite

Create List

Page 43: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Bemerkungen

Galleries gibt es auch auf Ebene der Subsites – die Wiederverwendbarkeit des Templates gilt dann nur für den entsprechenden Teilbaum

Achtung:Das Erstellen einer Liste aus einem Template erzeugt eine eigenständige Kopie dieser Liste.

Wie kann ich bei vielen Listen die Strukturen zentral «im Griff behalten» ?

Page 44: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Content-Typen

Page 45: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

• Weitergeführt aus SharePoint 2007• Beschreibt «Struktur» und «Verhalten» einer

Informationen (Policies, Workflows, ...)• Listen können CT’s zugeordnet werden• Es wird eine Kopie des CT erstellt• Ich kann nachträgliche Änderungen an der Struktur

des CT an alle betreffenden Listen weitergeben

Content-Typ (CT)

Page 46: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

• Mit Hilfe von Content-Typen können Informationen Listen-übergreifend abgefragt werden

• Werkzeug: Content Query Web Part• Nachteil:

Einsatz nur innerhalb einer Site Collection

Daten übergreifend abfragen

Page 47: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Demo

Content-Typen und Site Templates

Page 48: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

• SiteCollection A kennt Content Type «Contract»• Site Collection A übernimmt die Rolle eines Hub• Der Hub stellt den CT «Contract» über die «Metadata Service Application» alle

Interessierten zur Verfügung

• Site Collection B nimmt die Rolle eine Spoke ein• Der Spoke konsumiert die Content Typen über die «Metadata Service

Application»• Der Content-Type «Contract» steht im Spoke als ReadOnly Version zur

Verfügung!

• Publikation läuft über einen TimerJob – neue Content-Typen sind daher nicht unmittelbar im Spoke sichtbar!

Demo

Neu: Site Collection übergreifende CT

Page 49: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

• Liste in einer Site speichert Daten im lokalen Context der Site

• Mit Hilfe von Content Typen können Informationen «Site übergreifend» abgefragt werden (CQWP) – aber nur innerhalb einer Site Collection

• CT Hub/Spoke hilft bei der Pflege zentraler Informationsstrukturen – die Informationssuche bleibt aber auf Site Collection eingeschränkt

Zwischenstand

Page 50: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Metadaten in SharePoint 2010

Page 51: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

• Stellt Metadaten in Form von «Terms» zur Verfügung• Hierarchisch• Mehrsprachig• Synonyme

• Listen können Spalten vom Typ «Metadaten» enthalten – diese greifen auf den zentralen Katalog zu

• Metadaten innerhalb der Liste können als Suchkriterium eingesetzt werden

• Mit Hilfe der Volltextsuche können Metadaten auch SiteCollection übergreifend gesucht werden

DEMO

Metadaten Service

Page 52: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Dokumente

Page 53: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

• «Document Libraries» sind Listen – daher gilt alles bisher gesagte auch hier

• Neue Features in SharePoint 2010• Document ID

Eindeutige Kennzeichnung des Dokuments innerhalb einer Site Collection

• Document CenterSpeziell optimierte Dokumenten Bibliothek für grosse Dokumentvolumen

• Records Center«Archivierung» von Meilensteinen im Dokument-Lebenszyklus

Dokumentbibliotheken

Page 54: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Remote Blob Storage

Relational Access

SharePoint Object Model

ContentDatabas

e

SQL Server

ConfigDatabas

e

Page 55: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Remote Blob Storage

SQL RBS Client Library

Provider Library

X

BLOB Store X

Relational Access

Provider Library Y

Provider Library Z

BLOB Store Y

BLOB Store Z

Provider API

SharePoint Object Model

ContentDatabas

e

SQL Server

ConfigDatabas

e

Page 56: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Speichern eines Dokuments

SharePoint Web FE

SharePoint Object Model

Relational Access

1. Save Request

3. Save BLOB

4. Write BLOB

5. Return BLOB Id

6. Save Metadata & BLOB ID

7. Back to User

BLOB Store

ContentDatabas

e

SQL Server

ConfigDatabas

e

2. Enforce Biz Logic

BLOB Store Provider Library

RBS Client Library

Page 57: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.

Lesen eines Dokuments

SharePoint Web FE

SharePoint Object Model

Relational Access

1. Open Document

4. Read BLOB

5. Read BLOB

6. Return BLOB

3. Get BLOB Id

7. BLOB Data to User

BLOB Store

ContentDatabas

e

SQL Server

ConfigDatabas

e

2. Enforce Biz Logic

BLOB Store Provider Library

RBS Client Library

Page 58: Markus Böhm Microsoft Schweiz GmbH markusb@microsoft.com.