Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater...

42
Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater [email protected] Microsoft Deutschland GmbH Developer Platform & Strategy Group

Transcript of Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater...

Page 1: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Smart(e) Software entwickeln mitMicrosoft Office System 2003

Dirk PrimbsTechnologieberater

[email protected]

Microsoft Deutschland GmbHDeveloper Platform & Strategy Group

Page 2: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Was Sie heute erwartet Rundgang: Wie sieht das neue Office aus? Entwicklerrundgang: What‘s in it for

Developers? XML mit allem Drum und Dran

• Word ML

• Infopath

• Research Pane

Smart(e) Software entwickeln• Visual Studio Tools for Office

• Smart Tags

• Smart Documents

Zusammenfassung & Ausblick

Page 3: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Demo

Rundgang durch Microsoft Office System 2003

Entwicklerrundgang: What‘s in it for Developers?

Page 4: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Neu in Word, Excel & Co. Word

• Lese-Layout• Dokumentenvergleich• …

Excel• Listen• Verbesserte

Statistikfunktionen• Dokumentenvergleich• …

Access• Anzeige von

Objektabhängigkeiten• Im-/Export von Listen• Kontexthilfe in SQL Views• …

Outlook• Suchordner• Lese-Layout• Ansichten• …

Frontpage• XML & XSLT Integration• Sharepoint-Entwicklung• …

Neue Applikationen• Infopath• OneNote

Office allgemein• Arbeitsbereiche• XML-Unterstützung• Stift-Unterstützung• …

Page 5: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Neues für Entwickler XML „an allen Ecken und Enden“

• Infopath• Word ML• XML Smart Tags

.NET in Office• Web Services integrieren• Visual Studio Tools for Office

Arbeitsbereiche• Research Pane• Smart Documents

Integration in SharePoint• Listen aus Excel und aus Access auf Sharepoint

veröffentlichen• Dokumente auf dem Sharepoint ein-/auschecken• Sharepoint Seiten mit Frontpage editieren

Page 6: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

eXtreme Marketing Language - XML

XML ist nicht nur Ersatz für CSV XML ist mögliche Darstellung für…

• Daten mit Metainformation (XML-Dokument, *.xml)

• Struktur von XML-Dokumenten (XML-Schema, *.xsd)

• Umwandlung zwischen verschiedenen Schemata(XML-Transformation, *.xsl)

Page 7: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

XML Support im Office System

Office bringt Schemata für bisher noch nicht im XML-Format speicherbare Dateien

Die Office System 2003 unterstützt aber beliebige Schemata

• Eigene Schemata

• Standards von Verbänden oder großen Unternehmen

• Können einfach mit Dokumenten verknüpft werden (Drag-n-Drop)

Page 8: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

XML in Excel

Mehrere Schemas bzw. XML-Quellen in einer Arbeitsmappe

• Import / Export einzeln per Quelle

• Datenanbindung per Quelle

• Bereichseigenschaften / Formatierung per Quelle

• Verwendung von Excel-Listen

Page 9: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

XML in Excel

Visuelle Werkzeuge verfügbar Drag & Drop in Tabellen

Page 10: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

XML Programmierung

Objekt Modell um XML-Fähigkeiten erweitert• Objekte:

XmlDataBinding, XmlMap, XmlNamespace, XmlSchema, Xpath

• Collections: XmlMaps, XmlNamespaces, XmlSchemas

Programmatische …• Anbindung an XML Datenquellen

• Bindung von XML Datenstrukturen an Daten in Arbeitsmappen

• Referenz auf XML Schemas

• …

Page 11: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Demo

Excel-Dokument an XML-Schema binden

Daten aus Excel in XMLspeichern

Page 12: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Word als XML Editor Nativer XML Editor

• Grafische Unterstützung bei Erstellung

• XML Tags (mit Hierarchie-kontrolle)

• Strukturanzeige (Navigierhilfe)

Page 13: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

XML Schema Validation XML Markup + Eingaben während der

Eingabe gegen Schema geprüft Icons, Wellenlinien + Kontextmenüs zeigen

Fehler an

Page 14: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Word-ML

Vollständig formatierte Word-Dokumente Alle Einstellungen bzw. Infos wie ".doc" Speichern im XML-Format

Page 15: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

XML in Word

Mixed Content möglich• Text und XML-Elemente

• Daten oder alle Infos speichern

XML Transforms (XSLT)• Benutzerdefinierte Ansichten

der Daten

• Beliebige Transforms

XML Schemas (XSD)• Liefern XML Tags für eine def. Struktur

• Daten-Validierung gegen Schema

Page 16: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

XML in Word - Programmierung

Objekt Modell um XML-Fähigkeiten erweitert• Objekte:

XMLChildNodeSuggestion, XMLNamespace, XMLNode, XMLSchemaReference, XSLTransform

• Collections: XMLNodes, XMLSchemaReferences, XSLTransforms

Programmatischer Zugriff auf …• Nodes

• XML Schemas

• …

Page 17: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Demo

Word ML XSL Transformationen

Page 18: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

InfoPath

Neues Mitglied der Office-Familie Wysiwyg Entwicklungsumgebung

für Formulare• Entwerfen/Ausfüllen von Formularen

• Erzeugen, Sammeln und Updaten von Informationen

Visuelle Entwicklung per Drag & Drop

In Office-Familie passende Oberfläche

XML Basis (nativer Support)

Page 19: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

InfoPath

Einfaches Wiederverwenden von Daten – eliminiert Mehrfacheingaben

Arbeiten mit Daten steht im Mittelpunkt Formulare

• Auf Basis von Datenbankabfragen, WebServices oder XML-Schemas

• Reichhaltige Möglichkeiten zur syntaktischen Kontrolle der Eingabe

• Logische Kontrolle möglich, aber nicht Fokus

Page 20: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

InfoPath Form Definition

Views(XSLT)

URL or URN

Form Template (XSN)

.XML

Schema(XSD)

Default Data(XML)

Business Logic

(JS, DLL)

SolutionDefinition

(XSF)

Page 21: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

InfoPath

Sämtliche Daten werden im XML-Format gespeichert

Ideal in Zusammenarbeit mit Windows SharePoint Services oder SharePoint Portal Server

Einfach programmierbare Task-Pane *.mht – Datei mit Erweiterungen für

JavaScript

Page 22: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

InfoPath - Programmierbarkeit

Script Editor Objekt Modell Editierbare Steuerelemente Clear Text XML Format Möglichkeiten zum

• Erstellen von Ansichten

• Benutzerdefinierten Scripting

• Steuern des Laufzeitverhaltens

• Integrieren von Formularen direkt in Server oder WebService

Page 23: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Demo

Infopath

Page 24: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Visual Studio Tools for Office

Enthält…

• Neue Projektformen für VS.NET mit Excel / Word als UI

• Access 2003 Developer Extensions/Runtime

• SQL 2000 Developer Edition

• VB.NET Standard 2003

…und nicht…

• Office

• Visual Studio.NET 2003 Prof

Der beste Weg: MSDN Abo !!

Page 25: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Vorteile von VSTO

VSTO ist mehr als der .NET Weg für VBA Projekte

• Produktivität von Visual Studio.NET

• Spracheauswahl (VB.NET/C#)

• Zugriff auf Basisklassen des Frameworks

• Besseres Deployment/Update/Security-Modell

VSTO heißt .NET Projekte mit Excel oder Word als Oberfläche !!

Page 26: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

VSTO im Detail

Verknüpfung von Code & Dokument

• Funktionalität steht in einem „Code-Behind“-File

• Automatische Aktualisierung bei Änderungen an der Assembly

Assembly wird geladen sobald das zugeordnete Dokument geöffnet wird

Verbindung zw. Dokument und Code erfolgt über Dokumentenattribute

• _AssemblyLocation0

• _AssemblyName0

Page 27: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Sicherheit & VSTO

Office Security:

• Nur Dokumenten, die lokal installiert sind wird vertraut

• Dokumenten im Netzwerk wird nicht vertraut

• Per Mail gesandten Dokumenten wird nicht vertraut

• Dokument wird in jedem Fall geöffnet, der Code jedoch ggf. nicht zur Ausführung gebracht

Page 28: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Sicherheit & VSTO II

.NET Security:

• Assemblies werden vom CLR Loader geprüft

• CLR Loader ignoriert Standard-Berechtigungen (z.B. Lokaler Computer => Full Trust)

• Explizit Berechtigungen müssen gesetzt werden. (VSTO Wizard setzt diese automatisch)

Page 29: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Ladevorgang

Benutzer öffnet Dokument

CustomProps?

Trusteddoc?

Trustedcode?

New / OpenEvens werden

gefeuert

Nein

Nur Doc

Nein

Nur Doc

Nur Doc

DownloadAssembly

Nein

EntladeAppDomain

Fehler

Eventsregistrieren

Ja

Fehler

Ja

ErzeugeAppDomain Fehler

CLR ladenJa

Fehler

Page 30: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Demo

Visual Studio Tools for Office Entwicklung & Deployment

Page 31: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

SmartTags

Erkennen spezifischen Text in einem Dokument und bieten dazu Aktionen an

Einige im Lieferumfang dabei Arbeiten in Word, Excel, PowerPoint,

Access, Outlook und IE

Page 32: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Programmierung von Smart Tags

ISmartTagRecognizer2

• COM Interface für den Erkenner

• Weist den Smart Tag Type zu

ISmartTagAction2

• Bietet Aktionen auf Basis des Typs an

Vorteil:

• Man kann weitere Aktionen auf vorhandene Erkenner aufsetzen

Page 33: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Smart Tags: Neu in Office 2003

Neue Möglichkeiten• Verfügbar in Word, Excel, Outlook, PowerPoint,

Access und IE

• Erkenner triggert eine Aktion bei Erkennung

• Smart Tag Reload ohne Restart der Applikation

• Dynamische Smart Tag Menüs

• Kaskadierende Menüs

• Tokenizer in Erkenner eingebaut

• Reguläre Ausdrücke in MOSTL

• Neue Smart Tag Varianten• Expiring

• Unsavable

• Fragile

Page 34: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Demo

Smart Tags mit XML

Page 35: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Smart Documents

Programmierbarer Aufgabenbereich

Benutzer navigiert im Dokument, editiert

Word informiert externe DLL mittels XML Tags

Komponente kommuniziert mit Backend

Stellt beliebigen Aufgabenbereich dar

SmartDoc.DLLSmartDoc.DLL

Nimmt Einfluss auf Dokument

Page 36: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Smart Documents

Smart Document DLL wird an XML-Schema gebunden

Jedes Dokument, welches dieses Schema implementiert, kann auf Lösung zurückgreifen

Page 37: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Demo

Smart Document

Page 38: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Zusammenfassung

Die Office kann viel mehr als nur Briefe schreiben (aber das auch ;-)

Das Office System stellt einen Teil der Microsoft Smart Client Initiative dar

Office hat Potential…

Page 39: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Fragen!?

Uff...Uff...

Page 40: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Mehr Office Wissen…

2-tägiges technisches Training: "Microsoft Office System: XML, Smart Tags, Smart Documents und Infopath für Developer"  (€ 449,- zzgl. MwSt.)

Kurzbeschreibung:das 2-tägige technische Training ist speziell für Entwickler konzipiert, die Applikationen mit Office

2003 entwickeln möchten. Das Seminar vermittelt profunde Kenntnisse, um Anwendungen auf der Basis von Office 2003 und Visual Studio .NET mit XML, XSLT und C# zu entwerfen. Sie lernen, wie Smart Documents, Smarttags, Listentechnologie und InfoPath eingesetzt und unter Nutzung von Webservices plattform- und applikationsunabhängig Informationen zu beziehen.Die theoretischen Inhalte werden durch Demonstrationen des Seminarleiters und durch praktische Übungen vertieft.

Mehr Informationen und Online Anmeldung unter http://www.microsoft.com/germany/partner/trainings/tech_trainings/office-system/index.asp

Zielgruppe: Entwickler und IT-Professionals, die Office-Applikationen mit Microsoft Office 2003 entwickeln wollen

Voraussetzungen: - gute Programmierkenntnisse - Kenntnisse in XML, XPath und XSLT - Kenntnisse in C# - Office-Anwenderkenntnisse

Page 41: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Noch mehr Office Wissen…

Newsgroupsnews.microsoft.com

Office Developer Portalhttp://msdn.microsoft.com/office

Microsoft Developer Networkhttp://msdn.microsoft.com

…auch in Deutschhttp://www.microsoft.com/germany/msdn

Page 42: Smart(e) Software entwickeln mit Microsoft Office System 2003 Dirk Primbs Technologieberater dirkp@microsoft.com Microsoft Deutschland GmbH Developer Platform.

Und noch mehr Office Wissen

Developers only… Office System Einführung

• In den Niederlassungen von Microsoft

• Tieferen Einblick in die Technik und Funktionsweise der Office

Anmeldunghttp://www.microsoft.com/germany/aktionen/officesystemeinfuehrung/