4 share point office

Preview:

DESCRIPTION

SharePoint and Office Integration, eine kompakte Einführung

Citation preview

SHAREPOINT 2010

Eine kompakte Einführung

Jörg Krause

www.joergkrause.de

AGENDA Motivation Office als Client für SharePoint Tipps Praxis

MOTIVATION

Warum ist Office so wertvoll?

MICROSOFT SAGT:DAS IST DIE ZUKUNFT DER PRODUKTIVITÄT! Cloud / ServerÜberall verfügbar: Browser,

SmartPhone, PC

On-premise

Online

Business Intelligence

Content Managemen

tCollaboration Search

Unified Communication

s

ABER KÖNNEN IHRE TOOLS DAS LEISTEN? VBScript / VBA ActiveX Java .NET Third Party (keine Ahnung, macht Kollege XY) Tolles Produkt, leider proprietär Web Services? Ja, das planen die nächstes

Jahr

WIE DIE PRAXIS AUSSIEHT Es war einmal ein ganz normales

Unternehmen……4000 Mitarbeiter…viele gute Produkte…lange am Markt…gestandene IT-Experten

> 300 Tools, obwohl wesentliche

unternehmenskritische Applikationen

im SAP liegen

Große Unternehmen haben bis zu 8000 (!sic) Tools im Einsatz

ARBEITSUMGEBUNGAUS SICHT DER ANWENDER Überladene

Benutzeroberflächen, komplexe Produkte

Zerstreute Ablage von Mails, Dokumenten, Fax, Notizen etc.

Geringe Anpassung an Einzelarbeitsplatz

Langwierige Suche vonInformationen und Personen

Viele Insellösungen ohne Integration

Anwender ist Middleware

Office SuiteBrowser

Mailclient

Dateiablage

DBFrontend KalenderSAP

Client

OFFICE ALS CLIENT

Warum Office als Client für SharePoint so wertvoll ist

VORTEILE SHAREPOINT MIT OFFICE Für Benutzer

Konsistente Benutzeroberfläche Integration in Officeapplikationen

Für EntwicklerEinheitliche Entwicklungsplattform Interoperabilität, Basiert auf .NET

Für AdministratorenEinheitliche technische InfrastrukturEinheitliches Benutzer- und Rollenmanagement

OFFICE IST FÜR DEN ANWENDER SICHTBAR!

Aber was liegt unter der Oberfläche?

WOFÜR WIRD OFFICE HEUTE EINGESETZT?

Wieso nicht auch … zum Verwalten von Dokumenten? zum Analysieren von

Geschäftsdaten? zum Teilen von Wissen? zur Identifikation von Personen? zur Verknüpfung mit

Geschäftsprozessen?

als UI für all die „crazy“ Tools ??

Rechnen Mail

PräsentierenSchreiben

…Zusammenarbeit …Ideen …Anwendungen

• Schneller antworten

und mitarbeiten von

Überall• On- und Offline

• In allen Arbeitsumgebungen

• Professionelles

Arbeiten mit dem

kompletten Set an

Funktionen

• Darstellung und

Form optimal

• Präsentationen und Dokumente auch gemeinsam• E-Mail und PIM mit Outlook• Komplexe Arbeiten

WARUM LIEBEN WIR EIGENTLICH OFFICE?IMMER NOCH DIE BESTE UMGEBUNG FÜR…

Outlook 2010

Word 2010

Excel 2010

OFFICE ALS CLIENT – WAS HEIẞT DAS?

Weniger ist mehrWarum eigentlich immer E-Mail?PIM, hat hier einer PIM gesagt…

Der universelle Client1000 Tools oder nur ein Add-In?Dokumente, Dokumente, Dokumente…

Excel kann jederDER Client für BI, KPIs und mehrLasst ihnen ihr Spielzeug…

Und PowerPoint, OneNote, Access, …

TIPPS

Vorgehensweise

FALL I – OUTLOOK Externe Daten und Zugriff auf SharePoint-

Daten Social Connectors Und:

Synchronisiere Bibliotheken mit Outlook-OrdnernRegeln für E-Mail von / nach SharePointErfassen von Standard-Metadaten

(To, From, …)Content Types regeln Erscheinen

in Outlook Programmieren, was nicht direkt geht

FALL II – WORD Briefe, Formulare, Dokumente mit

Externen Daten via BCSSharePoint-Listen

DOCX erstellen ohne Word auf dem ServerUnterstützt die Weiterverarbeitung und

KompatibilitätEin Format, alle Möglichkeiten

Add-Ins und Aufgaben statt 1000 Tools

FALL III – EXCEL DAS BI-Tool Sind Sie oder Ihre Kunden auch eine

Excel-Company? Okay, nicht unbedingt falsch,

denn jeder kann Excel

WO ANFANGEN? Die ganze „2010“-Palette verstehen:

SharePoint Foundation + Server InfoPath und SharePoint WorkspaceWord, Excel, PowerPoint, OneNote, PublisherOutlook und ExchangeAccess, SQL ServerLync und Communicator

Office 2010 Resource Kithttp://

technet.microsoft.com/de-de/library/cc303401.aspx

VORGEHENSWEISE Bebauungsplan erstellen / Tools

analysieren Abhängigkeitsmatrix erstellen Schnittstellen ermitteln und

dokumentieren Prioritäten festlegen und Extremfälle

ermitteln Auswahl sinnvoller Tools, keine 100%

Strategie Tipps:

Prototypen entwickelnAnwender mit einbeziehenProfessionelle Softwareentwicklungstechniken!

CLIENT OBJECT MODEL

Die technische Basis für die Integration

CLIENT OBJECT MODEL

CLIENT OBJECT MODEL Oft kein „echtes“ Coding erforderlich „Nur“ JavaScript, JQuery und SP.js Auch mit eingeschränkten Rechten Nutzung von Content Editor Webparts

AGENDA Was sind die Office Services? Word Services Excel Services Visio Services

AUTOMATION AUF DEM SERVER

Open XML SDK

Inhalte bearbeiten

Word Services

Inhalte rendern

WORD SERVICES

Server-Komponente für die Erstellung von DokumentenAusgabe kann direkt in Word benutzt werdenFelder werden fotwährend aktualisiert

SKALIERBARKEITMethode Seiten/sec Dokumente/h Dokumente/d

Word Services 20-30 7.200 172.800

Word 2007 ~5-7 900 21.600

Etwa 10 Mal schneller!

2007 2010

SHAREPOINT APPLICATION SERVICES

Evolution der Dienstarchitektur

Word Services bestehen aus:Word ServicesWord Service ApplicationWord Service Proxy

Skalierbare Architektur

Service ConsumerService Consumer

Service Application

Service Instance

Service Instance

Service Instance

Service Proxy

Service Proxy

ENTWICKLER: JOBS ERZEUGEN

string serviceAppName = "Word Conversion Service Application";ConversionJobSettings settings = new ConversionJobSettings(){ OutputFormat = SaveFormat.XPS};

ConversionJob job = new ConversionJob(serviceAppName, settings);job.AddFile("http://contoso.com/documents/source.docx", "http://contoso.com/documents/destination.xps");

job.Start(); // starts asynchronous

AddFile•String•String

AddFolder•SPFolder•SPFolder•Recurse

AddList•SPList•SPList•Recurse

ENTWICKLER: JOBS ÜBERWACHEN

string serviceAppName = "Word Conversion Service Application";

foreach (GuidjobID in ConversionJobStatus.GetAllJobs(serviceAppName, null)){ ConversionJobStatus status = new ConversionJobStatus(serviceAppName, jobID, null); PrintItems("Succeeded", status.Succeeded); PrintItems("NotStarted", status.NotStarted); ....}

void PrintItems(string status, IEnumerable<ConversionItemInfo> items){ foreach (ConversionItemInfo item in items) { Console.WriteLine("{0} - {1}", status, item.Message); }}

ENTWICKLER: JOBS KONFIGURIEREN

string serviceAppName = "Word Conversion Service Application";

WordService wordService = SPFarm.Local.Services.GetValue<WordService>();

WordServiceApplication serviceApp = wordService.GetChild<WordServiceApplication>(serviceAppName);

serviceApp.MaximumConversionAttempts = 5;serviceApp.Update();

EXCEL SERVICES

EXCEL SERVICES 2007

Calculated data and charts

BrowserWeb Part

Custom Applications

Spreadsheets/Calculated data

Office SharePoint Servers with Excel Services

Excel 2007Design and author

Spreadsheets/snapshots

Call UDFs

NEU IN 2010 Weite Funktionsunterstützung

Eingebettete Bilder Sparlines PowerPivot Bedingte Formatierung

JavaScript Object model REST API Chart Web Part data provider Visio data provider

NEU IN 2010 SharePoint Integration

Excel-Sheets sind per default vertrauenswürdig, wenn nach SharePoint veröffentlicht

Spezifische Fehlermeldungen bei Datenaktualisierung

EXCEL SHAREPOINT

PRODUKTE• Excel Services

• SharePoint 2010 Service-Applikation• Zentrale Verwaltung von Excel-Sheets• Integriert mit den SharePoint BI-Funktionen

• Excel Web Access• Interaktiver Browserclient für die direkte Bearbeitung• Kann alle Teile eines Excel-Sheets darstellen• Nutzt AJAX• Web Parts zeigen Teile von Excel-Sheets an

EXCEL JAVASCRIPT OBJECT MODEL Integriert mit Excel Web Access (EWA) Schreiben / Lesen basiert auf EWA

var ewa;function initialize() { ewa = new Ewa.EwaControl("ewa"); ewa.openWorkbookAsync("http://server/mywb.xlsx", Ewa.SessionMode.View, "salesreps", onWorkbookLoaded);}

function onWorkbookLoaded(result) { if (!result.succeeded) { alert("Error"); return; } // hook up to events that we're interested in workbook = ewa.get_activeWorkbook(); ...}

EXCEL REST API Excel Daten direkt lesen: Werte in benannte Bereiche schreiben Daten in folgenden Formaten holen:

ATOMHTML Image

EXCEL REST API Ideen:

Charts in WebseitenWindows 7 Gadget mit Excel-DatenMashups auf Webseiten

EXCEL REST API

ASPX:http://example.com/_vti_bin/ExcelRest.aspx

Datei auswählen:

lib/folder/file.xlsx

Resource wählen:model/Charts('Mein Chart')

RESSOURCEN /model

Allgemeiner Zugriff auf die Ressource /Ranges('Blatt!Von|Bis'), /Ranges('Name')Bereiche

/Charts('Name')Diagramme

/Tables('Name')Tabellen

/PivotTables('Name')Pivot Tabellen

BEISPIELE

http://<Server>/_vti_bin/ExcelRest.aspx/Docs/Documents/sampleWorkbook.xlsx/

Gesamtes Arbeitsblatt:

model?$format=workbook

model?$format=html

model?$format=atom

Bereich (Format ist optional):

model/Ranges('Sheet1!A1|G5')?$format=html

Benannter Bereich:

model/Ranges('name')

Zelle laden und ändern:

model/Ranges('Sheet1!A1|G5')?Ranges('Sheet1!C3')=demo

Chart laden:

model/Charts('Chart%201')

Chart laden und Wert ändern:

model/Charts('Chart%201')?Range('Sheet1!A1')=26.5

EXCEL REST API

Einstieg:http://msdn.microsoft.com/en-us/library/ee556842(v=office.14).aspx

ACCESS SERVICES

ACCESS SERVICES

Access Datenbanken inSharePointNicht nur Access-DB in Bibliothek

Übertragung auf SharePoint Technologien:Tabellen ListenAbfragen, Reports, Formulare Web basiert

Synchronisiert Änderungen zwischen Access und SharePoint

ENTWICKLER: ACCESS SERVICES Integriert:

Entwicklung in Access ServicesUI-MakrosDaten-Makros

Nicht unterstützt:VBAAction QueriesFull UI Macros (Traditionelle Access Macros)

VISIO SERVICES

VISIO SERVICES Datengebundene Shapes Visio Viewer Web Part JavaScript Object Model

VISIO JAVASCRIPT OBJECT MODEL

Navigation Highlighting Event Handling Extracting data Overlaying images

Recommended