Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Marcel Gnoth, NTeam GmbH www.gnoth.net Smarte und verbundene Dokumente mit Office 2003 und.NET entwickeln Geschäftsdaten intelligent mit Dokumenten verbinden.

Ähnliche Präsentationen


Präsentation zum Thema: "Marcel Gnoth, NTeam GmbH www.gnoth.net Smarte und verbundene Dokumente mit Office 2003 und.NET entwickeln Geschäftsdaten intelligent mit Dokumenten verbinden."—  Präsentation transkript:

1 Marcel Gnoth, NTeam GmbH Smarte und verbundene Dokumente mit Office 2003 und.NET entwickeln Geschäftsdaten intelligent mit Dokumenten verbinden Microsoft Office System 2003

2 Marcel Gnoth, NTeam GmbH Zur Person Dipl. Inf. Marcel Gnoth, MCSD –www.gnoth.netwww.gnoth.net NTeam GmbH, Berlin –www.nteam.dewww.nteam.de –Leiter Softwareentwicklung –MS Gold Partner Busines Intelligence, Information Worker, Advanced Infrastructur Autor dotnetpro und dotnet-magazin Trainer (u.a. SPC Berlin, )www.spc.de Themen –VB6, COM –Datenbanken, Yukon –Verteilte Informationssysteme mit.Net –Office System 2003 Integration –Reisen in ferne Länder:

3 Marcel Gnoth, NTeam GmbH Agenda Einleitung VBA und das Web Services Toolkit 2.01 Research Services XML-Schemata und Office Dokumente Smart Documents (ISmartDocument) VSTO 2003 VSTO 2005 Beta Smart Tags Information Bridge Framework (IBF) Fazit

4 Marcel Gnoth, NTeam GmbH Einleitung Office in den Unternehmen Microsoft Office System 2003

5 Marcel Gnoth, NTeam GmbH Office als Client Mehr als 400 Mio Officeinstallationen Für sehr viele Menschen ist Office das Hauptwerkzeug im Büro Wie kann Ihnen das Arbeiten leichter gemacht werden? Wenige neuen Features, Bessere Integration in die Unternehmens IT

6 Marcel Gnoth, NTeam GmbH Probleme im Büroalltag für Anwender... Anwender muss Informationen in verschiedenen Systemen zusammensuchen –Outlook, SharePoint –CRM, in HR, in SAP, in... –Anwender muss in der Lage sein, diese Systeme zu bedienen, auch wenn er/sie nur selten damit arbeitet Keine Unterstützung bei der Dateneingabe –Viel manuelle Tipparbeit Austausch zwischen den verschiedenen Systemen könnte für den Anwender leichter sein. –Nur Copy & Paste –Oder abtippen

7 Marcel Gnoth, NTeam GmbH Probleme im Büroalltag für IT... Office Dokumente sind Freitext –Nutzer kann fehlerhafte, unstrukturierte Eingaben machen –schlechte Datenqualität –Parsen nach Informationen aufwendig Dokumentformat properitär –Elektronische Verarbeitung (auf Servern) aufwendig –Austausch mit anderen heterogenen Systemen schwierig

8 Marcel Gnoth, NTeam GmbH Unterstützung durch Office 2003 Dokumente können als XML gespeichert werden –Austausch mit anderen Systemen –Verarbeitung auf dem Server ohne Office Verknüpfen eines Office Dokumentes mit einem XML-Schema –Prüfen von Nutzereingaben auf Fehler –Daten können einfach elektronisch weiterverarbeitet und ausgetauscht werden

9 Marcel Gnoth, NTeam GmbH Unterstützung durch Office 2003 Kontextbezogene Informationen bereitstellen –Aggregation von Informationen aus verschiedenen Systemen –Recherchieren von Informationen –Einfügen von Daten in ein Office Dokument Vermeidet Fehleingaben Erhöht Datenqualität

10 Marcel Gnoth, NTeam GmbH Viele Wege führen nach Friedrichshagen... Microsoft hat viel Energie unter die Oberfläche von Office gesteckt Die Anwender verwenden eh nur 10% der Möglichkeiten Deshalb viel Energie auf –Smart Clients und –Unterstützung von Information Workern Leute die schnell, einfach auf viele Infos zugreifen müssen Das (stärkste) Argument für Office 2003

11 Marcel Gnoth, NTeam GmbH Werkzeuge Viele Ansätze Taskpane / Aufgabenbereich –Formulare zur Dateneingabe –Nachschlageergebnisse –Informationen / Aktionen XML-Schemata –Kein Freitext mehr –Kontextbezogener Zugriff auf TaskPane Smart Tags –Kontextbezogener Zugriff auf TaskPane –Aktionen und Infos zu einem ausgewählten Wort Webservice Zugriff –Nachschlagewerke, Datenaustausch

12 Marcel Gnoth, NTeam GmbH Umsetzungen Und ich dachte immer Officeprogrammierung ist langweilig –Office VBA VS.Net, Toolkits und Werkzeuge ohne Ende... –XML, Research Service, Smart Tags, Smart Document, ISmartDocument, IBF, VSTO 2003 und 2005, WS für VBA, MOSTL, RSDE, RSCL, RSTV, MOSTL, SharePoint,

13 Marcel Gnoth, NTeam GmbH Technologieübersicht TaskPane –Research Services –IBF –ISmartDocument –VSTO Im Dokument –SmartTags –XML –VSTO 2005 Kontextbezogene Hilfe

14 Marcel Gnoth, NTeam GmbH VBA und Webservices Zugriffe auf die schöne, bunte Web Service Welt von VBA aus Webservice Toolkit 2.01

15 Marcel Gnoth, NTeam GmbH Office 2003 Webservice Toolkit 2.01 Separater Download Tools -> Add Webreferenz Erzeugt VBA-Proxyklassen Dynamische Listen über WS Zugriff –Amazon, eBay,...

16 Marcel Gnoth, NTeam GmbH Demo VBA und Webservices Webservice Toolkit 2.01

17 Marcel Gnoth, NTeam GmbH Fazit Sehr leichte Einbindung von WS in VBA

18 Marcel Gnoth, NTeam GmbH Research Services Nachschlagewerke für das eigene Unternehmen Webservices und die TaskPane Microsoft Office System 2003

19 Marcel Gnoth, NTeam GmbH Research Services (RS) – Überblick Recherche von Informationen über Webservices –Word, Excel, PPT, Outlook, Publisher, OneNote, Visio, IE Anzeige der Informationen in der TaskPane Übernahme von Daten in das Dokument Office eigene Dienste Kommerzielle Anbieter Eigenentwicklung –WS mit beliebiger Sprache implementieren –WS kann auf beliebiger Plattform laufen –WS muss zwei XSD – Schemata unterstützen

20 Marcel Gnoth, NTeam GmbH Verfügbare Research Services Lokal auf dem Computer –Thesaurus und Übersetzung Office 2003 Research Services –Wörterbuch, Enzyklopädie, Web Suche, Aktienkurse Kommerzielle Anbieter –Factiva, eLibrary, Gale, WorldLingo –Weitere werden kommen SharePoint Portal server

21 Marcel Gnoth, NTeam GmbH Research Beispiele

22 Marcel Gnoth, NTeam GmbH Eigene Research Services entwickeln Beliebige Sprache, beliebige Plattform Ein Webservice mit zwei Methoden –Register (oder Registry-Keys direkt schreiben) –Query –SOAP Response muß Schemata entsprechen MS Werkzeuge –RS - SDK –RS - Development Extras RS mit Smart Tags erweitern –Daten in das Dokument einfügen –Andere Aktionen starten... –Dll auf dem Client benötigt!

23 Marcel Gnoth, NTeam GmbH RS – Schemata

24 Marcel Gnoth, NTeam GmbH RS SDK – Schemata WS Registration –Request –Response WS Query –Request –Response Beispiele, Doku, Schemata Codieren der Werbservice Antworten ist fummlig –(zu) viel Handarbeit –Nicht wirklich schön.WriteStartElement("Content", ns:="urn:Microsoft.Search.Response.Content").WriteElementString("P", "Folgende Pokemon wurden gefunden:").WriteStartElement("Image source=""" + pathHTTP + "Pokemon/Gengar.gif"" ").WriteEndElement().WriteElementString("P", "Name: " + m_Pokemons.Name).WriteStartElement("Tabular").WriteStartElement("Record").WriteElementString("Name", "Type")

25 Marcel Gnoth, NTeam GmbH RS – Smart Tags Verwenden von Smart Tag Actions Definiert durch Query Response Simple Smart Tags –Insert, Copy, NewQuery, Hyperlink Smart Tag API –Dll –Sehr flexibel

26 Marcel Gnoth, NTeam GmbH Demo RS Hallo Welt SmartTag Northwind RS Research Services

27 Marcel Gnoth, NTeam GmbH RS – Development Extras (RSDE) Separater Download Research Services Class Library (RSCL) –OO-Wrapper für SDK Schemata –Macht das Leben leichter –Mit Quellcode RSCL Wizard –Neuer Projekttyp –Mit Quellcode Viele Samples Research Services Tracing and Validation Tool (RSTV)

28 Marcel Gnoth, NTeam GmbH Demo RSCL Wizard und RSTV RSDE

29 Marcel Gnoth, NTeam GmbH Deployment / Registry Installation durch Anwender –Eingabe der URL Installation durch Admin –Verwenden einer.reg - Datei HKEY_CURRENT_USER\Software\Microsoft\... …Office\11.0\Common\Research HKEY_LOCAL_MACHINE\Software\Microsoft\... …Office\11.0\Common\Research Ausnahme: eigene Smart – Tags –Dll auf dem Client –Später mehr

30 Marcel Gnoth, NTeam GmbH Fazit Einfache Recherche aus Office Applikationen heraus Kombinieren mit Volltextsuche des SQL Servers Dynamisches Update WS können auf jedem System gehostet werden! SELECT ProductName, QuantityPerUnit FROM Products WHERE CONTAINS(ProductName, ' FORMSOF (INFLECTIONAL, dry) ')

31 Marcel Gnoth, NTeam GmbH XML – Schemata und Office Dokumente Schluss mit dem Freitext Microsoft Office System 2003

32 Marcel Gnoth, NTeam GmbH Überblick Office Dokumente (Freitext) mit einem XML-Schema verknüpfen Daten können als XML gespeichert (und weiterverarbeitet) werden Trennung der Daten von der Präsentation

33 Marcel Gnoth, NTeam GmbH XML in Office Offenes XML-Dateiformat Verknüpfen der Dokumente mit einem XML-Schema GUI-Integration über Aufgabenbereich (auch Outlook ein bisschen)

34 Marcel Gnoth, NTeam GmbH Freitext

35 Marcel Gnoth, NTeam GmbH Freitext

36 Marcel Gnoth, NTeam GmbH Inhalt als XML 3/24/2004 XML Conference (Europe) Role of XML on the Desktop Health Agency % The team comprises great innovators Contact their IT Manager Finance Agency Organize another European tour

37 Marcel Gnoth, NTeam GmbH Formatierungen

38 Marcel Gnoth, NTeam GmbH Formatierung als XML WordML Eigenes Schema HTML ähnlich Keine verschachtelten Tags John Doe Health Agency

39 Marcel Gnoth, NTeam GmbH Dokumente und XML-Schemata Selbstdefinierte (Geschäfts-) Schemata –Datenorientiert Kunde, Auftrag, Mitarbeiter,... –Erlauben Zerlegung des Dokumentes in Datenelemente MS-Referenz-Schemata –Präsentationsorientiert Fett, Kursiv, Tabelle, Zelle,... –WordprocessingML, SpreadsheetML, FormTemplate, DataDiagramingML –Offen und Lizenzgebührenfrei –Erzeugen und verändern von Officedokumenten auf dem Server ohne Office –Austausch in heterogenen Systemen

40 Marcel Gnoth, NTeam GmbH Hello Word in WordML Hello World John Peltonen John Peltonen T04:15:00Z T04:15:00Z SHARP Hello WordML!

41 Marcel Gnoth, NTeam GmbH Hello World-etwas schöner Hello World John Peltonen John Peltonen T04:15:00Z T04:15:00Z SHARP Hello World! Section Properties Namespace Declarations Document Properties

42 Marcel Gnoth, NTeam GmbH WordML – im Detail XML erlaubt keine überlappenden Tags wie HTML: This is some bolded and Italicized text WordML: This is some bolded... etc...

43 Marcel Gnoth, NTeam GmbH XML und Word Plain XML vs Word XML: Your XML WordML Microsoft Corp. 2/21/2003 Strong Buy Word Microsoft Corp. 2/21/2003 Strong Buy Microsoft Corp. 2/21/2003 Strong Buy Save Data Only or Transform Transform Open/Save Database WYSIWYG Web Page Microsoft Corp. 2/21/2003 Strong Buy Transform

44 Marcel Gnoth, NTeam GmbH XML in Word-Formularen

45 Marcel Gnoth, NTeam GmbH Demo Word – XML – Excel Microsoft Office System 2003

46 Marcel Gnoth, NTeam GmbH XML - Schema Validierung Bei der Eingabe Platzhalter bei der Eingabe Dokumente schützen

47 Marcel Gnoth, NTeam GmbH Demo Schemalvalidierung und Platzhalter Microsoft Office System 2003

48 Marcel Gnoth, NTeam GmbH Fazit XML-Format eröffnet viele neue Wege –Verarbeiten von Dokumenten ohne Office –Schemavalidierung –Datenaustausch

49 Marcel Gnoth, NTeam GmbH Smart Documents ISmartDocument COM Schnittstelle Microsoft Office System 2003

50 Marcel Gnoth, NTeam GmbH Smarte Dokumente Programmieren der Taskpane Dokument mit benutzerdefinierten Schema verknüpft Code wird Elementen des Schemas zugeordnet Code –Lokal auf Client oder –auf Server –Wird auf dem Client ausgeführt Erhöhte Sicherheit Einfaches Deployment

51 Marcel Gnoth, NTeam GmbH Smart Document - Komponenten Dokument mit XML Schema Solution URL verweißt auf XML-Manifest Manifest beschreibt Dateien des XML-Expansion Packs –Code (Dll), Bilder, Daten Komponenten können von Webserver geladen werden Jetzt ist das Doc Smart XML Schema Document XML Manifest name address dllimageschemaconfig Solution URL

52 Marcel Gnoth, NTeam GmbH Wo zu finden..? Word 2003 und Excel 2003 Word: Tools -> Templates and Add-ins Excel: Data -> XML -> XML Expansion Packs

53 Marcel Gnoth, NTeam GmbH Smart Dokument Installation Manifest muß signiert sein Manifest muß von einem vertrauten Server stammen.net CAS

54 Marcel Gnoth, NTeam GmbH Demo SmartDoc verwenden Smart Documents

55 Marcel Gnoth, NTeam GmbH Das Manifest 1.0 NorthwindSmartDocDemo Smart Doc Files smartDocument Northwind Smart Document Demo solutionActionHandler 1.1 NorthwindSmartDoc.dll NorthwindSmartDoc.DocActions other 1.2 Interop.SmartTagLib.dll Schema Files schema Northwind Work Absence Form Schema schema 1.0 workabsence.xsd

56 Marcel Gnoth, NTeam GmbH ISmartDocument COM – Schnittstelle –VB6 oder.Net oder VC++ oder Delphi –Office Setup PIAs für Word/Excel und Smart Tag Support mitinstallieren !!! –17 Methoden Populate OnChange –8 Eigenschaften

57 Marcel Gnoth, NTeam GmbH Namespace XML-Schema ISmartDocument-Porperties –SmartDocXmlTypeCaption –SmartDocXmlTypeCount –SmartDocXmlTypeName (Zuordnung zwischen Schema-Elementen und dem Code) Public Const BASEURI As String = " urn:www.gnoth.net.PokemonSD " Public Const Poke_NAME As String = BASEURI & "#Name" Public Const Poke_SKILL As String = BASEURI & "#Skill" Public Const Poke_TYPE As String = BASEURI & "#Type" Public Const TYPESCOUNT As Integer = 3

58 Marcel Gnoth, NTeam GmbH Fröhliches Late Binding mit Zahlen #VacationRequest ControlCount = 5 ControlIndex + 100

59 Marcel Gnoth, NTeam GmbH Ablauf

60 Marcel Gnoth, NTeam GmbH Demo Smart Doc implementieren Smart Documents

61 Marcel Gnoth, NTeam GmbH Smart Doc Security Manifest Security Check –Tool verwenden um Manifest und Code zu signieren –xmlsign.exe, SmartDoc SDK –Kann auf Entwicklerrechnern deaktiviert werden Kleine Regdatei –Quellserver muß zu Trusted Sites gehören Localhost = Intranet, trusted = nicht vertraut [HKEY_LOCAL_MACHINE\Software\Microsoft\Office\Common\Smart Tag] "DisableManifestSecurityCheck"=dword:

62 Marcel Gnoth, NTeam GmbH Smart Document Security - CAS.Net – Code Access Security (CAS) –Für Dateien, die auf den Client runtergeladen und ausgeführt werden sollen –CAS kann zentral von Admins ausgerollt werden –Detaillierte Einstellungen Caspol.exe -ag All_Code -url "file://C:/Smart Doc Files/*" FullTrust -n NorthwindSmartDocDemo

63 Marcel Gnoth, NTeam GmbH Vertigo Wraper Kostenlos, mit Quellcode nicht supported –http://vertigosoftware.com/wrapperhttp://vertigosoftware.com/wrapper –Gute FAQ! Neue Projekttypen in VS.Net Kapselt das ISmartDocument Interface –Objektorientiert –Programmierung einfacher –Weniger Flexibilität

64 Marcel Gnoth, NTeam GmbH Fazit Sicherheit und Deployment Endanwender erhält kontextsensitive Hilfe Entwicklung ist nicht so elegant COM – basierte Schnittstelle (PIA) Wird mit VSTO 2005 obsolet

65 Marcel Gnoth, NTeam GmbH VSTO 2003 Visual Studio Tools für Office V1.0 Word und Excel mit VS.Net programmieren Microsoft Office System 2003

66 Marcel Gnoth, NTeam GmbH Überblick Strategisches Tool für die Office programmierung –VSTO 2003 nur für Word und Excel –VSTO 2003 ist eine V1.0, der nächste Sprung kommt mit VSTO 2005 –Office Applikationen haben COM-API VSTO soll Interop erleichtern VSTO bietet: –Vorlagen für VS.Net –Aktualisiert lokale Entwicklereinstellungen (CAS) –Code Behind – Modell, aber keine Office Designer Gedacht für professionelle Entwickler –VS.Net –.Net Framework –Wird nicht VBA ersetzen (Für Enduser)

67 Marcel Gnoth, NTeam GmbH VSTO – Entwicklert programmiert Runtime Design time Developer Visual Studio

68 Marcel Gnoth, NTeam GmbH Runtime Design time Business Logic Developer Code will typically be stored on a share or server for easy deployment and maintenance. NET Assembly Visual Studio VSTO – Deployment

69 Marcel Gnoth, NTeam GmbH Runtime Design time Business Logic Excel Assembly is downloaded from share or server and code runs, subject to restricted security policy. NET Assembly.NET Security Policy VSTO – Anwender

70 Marcel Gnoth, NTeam GmbH Demo Erzeugen einer VSTO Lösung VSTO 2003

71 Marcel Gnoth, NTeam GmbH Sicherheit VBA Code in Dokumenten wird geblockt –Low, Medium, & High security modes AuthentiCode signatures for code authenticity Codeausführung: Alles oder nichts Anwender treffen mutige Entscheidungen –Dumm, aber glücklich!

72 Marcel Gnoth, NTeam GmbH Überblick - Sicherheit VSTO erzeugt normale.Net Assemblies Code Access Security (CAS) muß auf dem Client konfiguriert sein Keine Entscheidung des Anwenders –Kein Makro aktivieren J/N Auf Entwicklerrechner wird die CAS bei Projekterstellung durch VSTO aktualisiert

73 Marcel Gnoth, NTeam GmbH Verknüpfung Dokument – Assembly Document Property wo Assembly liegt CAS Wenn Web offline, dann lädt Word vom Assembly Cache

74 Marcel Gnoth, NTeam GmbH Überblick Deployment Click Once Depolyment Komponenten einer VSTO Solution: –Quellcode (im Source Safe ) –Kompiliertes Assembly auf einem Server –Office Dokument Enthält Link zum Assembly auf dem Server Zentrales Update auf dem Server

75 Marcel Gnoth, NTeam GmbH Demo Security & Deployment VSTO 2003

76 Marcel Gnoth, NTeam GmbH Fazit Ziemlich wenig bis jetzt Hilft bei einigen Details bis jetzt Fast das Gleiche kann auch ohne VSTO mit normalem COM Interop erreicht werden Der große Wurf wird erst mit der nächsten Version kommen –Aufgaben Bereich / Task pane –Offline Daten / Data Island –u.a.

77 Marcel Gnoth, NTeam GmbH VSTO 2005 Beta 1 Jetzt gehts erst richtig los Microsoft Office System 2003

78 Marcel Gnoth, NTeam GmbH VSTO Roadmap Office Professional Edition 2003 Visual Studio projects for Word and Excel Document-centric customizations Version 2003 Word and Excel hosted in VS IDE View controls ActionsPane Schema-based programming model Server-accessible data island Version 2005 Visual Studio.NET 2003 Visual Studio 2005

79 Marcel Gnoth, NTeam GmbH Neue Designer 1. Drag+Drop onto Designer 2. Designer- generated managed classes 3. First- class managed citizens

80 Marcel Gnoth, NTeam GmbH Programmierbare TaskPane 1. Design a UserControl 2. Add control behaviour 3. Add the control to the ActionsPane

81 Marcel Gnoth, NTeam GmbH So schauts dann aus...

82 Marcel Gnoth, NTeam GmbH XML Knoten und die TaskPane 1. Design multiple UserControls 2. Map XML schema 3. Code UserControl behaviour

83 Marcel Gnoth, NTeam GmbH Demo Die TaskPane

84 Marcel Gnoth, NTeam GmbH Dateninseln im Dokument 1. Attribute the DataSet as Cached 2. The DataSet is Cached as XML in the doc Vorteile –Office Dokumente auf dem Server verarbeiten –Offline Modus

85 Marcel Gnoth, NTeam GmbH Data Islands auf dem Server Keine Officeinstallation auf dem Server ServerDocument doc = new ServerDocument("expenses.xls"); CachedDataItem cdi = _ doc.CachedDataManifest.Views["Sheet1"].CachedData["Expenses"]; cdi.Xml = "new xml string";

86 Marcel Gnoth, NTeam GmbH VS Tools für Office 2005 Windows Client Microsoft Office Professional 2003.NET Framework Schemas Data Island VSTO Runtime Web Services Client VSTO Assembly Deployment Server LoB Data

87 Marcel Gnoth, NTeam GmbH VSTO 2005 Data Island Zugriff auf dem Server Windows Server.NET Framework Data Cache Data Island Server-side Assembly Server VSTO ServerDocument Assembly

88 Marcel Gnoth, NTeam GmbH Smart Tags Kontextbezogene Hilfe Microsoft Office System 2003

89 Marcel Gnoth, NTeam GmbH Was sind SmartTags? Verknüpfen Text in Dokumenten mit Geschäftsprozessen Smart Tag Action Button Lila gepunktete Linie: Smart Tag Kennzeichnung

90 Marcel Gnoth, NTeam GmbH Entwicklung von Smart Tags Microsoft Office Smart Tag List (MOSTL) –Für einfache Smart Tags –Leichte Entwicklung und Deployment –Können automatisch aktualisiert werden Smart Tag API –Alle Möglichkeiten des.Net Frameworks –Programmierung (COM-Interface) C#, VB.NET, C++ oder VB6.Net Applikationen verwenden COM Interop oder VSTO Loader –Benötigen Setup (Einträge in die Registry)

91 Marcel Gnoth, NTeam GmbH MOSTL Erzeugen einer XML Datei C:\Programme\Gemeinsame Dateien\Microsoft Shared\Smart Tag\LISTS\1031 Lamborghini Cars 350, 400, Countach, Diablo, Espada, Gallardo, Islero, Jalpa, Jarama, LM002, Miura, Murcielago, Silhouette, Urraco &View Information

92 Marcel Gnoth, NTeam GmbH COM – API - SmartTagLib Dll – Projekt (Klassenbibliothek) Verweis auf Microsoft Smart Tags 2.0 Type Library COM Bibliothek recognizer Klasse implementieren –ISmartTagRecognizer(2) –ProgID und GUID Attribute action Klasse implementieren –ISmartTagAction(2) –ProgID und GUID Attribute [ProgId("MlbSmartTag.Recognizer"), GuidAttribute("90D62E8D-79E F-BF3EC133698D"), ComVisible(true)] public class Recognizer : ISmartTagRecognizer2, ISmartTagRecognizer { }

93 Marcel Gnoth, NTeam GmbH COM – API - SmartTagLib Assembly Version konfigurieren –Default ändern von 1.0.* auf einen Wert Zum Debuggen die Start Action auf Word oder Excel setzen –Project Properties | Configuration Properties | Debugging | Start Action | … … Start Application (C#) … Start external program (Visual Basic.NET)

94 Marcel Gnoth, NTeam GmbH Demo Smart Tag Programmierung Research Services Smart Tags

95 Marcel Gnoth, NTeam GmbH Smart Tag Installation Setup Program installiert Dll Muss registriert werden –Als COM Komponente –Als Smart Recognizer und Action Selbstregistrierende DLL (ComRegisterFunctionAttribute) Schlüssel bei der Installation erzeugen HKEY_CURRENT_USER\Software\Microsoft\Office\Common\Smart Tag\Recognizers HKEY_CURRENT_USER\Software\Microsoft\Office\Common\Smart Tag\Actions Wenn der VSTO Loader verwendet wird, dann CAS!

96 Marcel Gnoth, NTeam GmbH Download Smart Tag Developer Tools Smart Tag Explorer –Zeigt an, welche Smart Tags auf einem Rechner aktiv sind Recognize Tester –Ermöglicht das Testen, ob ein Smart Tag bestimmte Tokens erkennt

97 Marcel Gnoth, NTeam GmbH Demo Smart Tag Developer Tools Smart Tags

98 Marcel Gnoth, NTeam GmbH Information Bridge Framework Office Dokumente mit verschiedenen LOB – Daten verknüpfen Information Bridge Framework

99 Marcel Gnoth, NTeam GmbH Warum IBF ? Find Customer Account Rep Find Orders MS WordTask Pane Option1 Child Label Mary : Ford order is late. Please investigate. Unproduktiv und Fehleranfällig! Copy & Paste s und Dokumente beziehen sich auf Geschäfts- Entitäten –Kunde, Bestellung,... Oft befinden sich die Daten in verschiedenen Systemen Es gibt keinen einfachen Weg diese Daten in Beziehung zu setzen Einarbeitung in die Systeme Copy & Paste ist einzige Integration

100 Marcel Gnoth, NTeam GmbH Warum IBF Verknüpft Office Documente mit Daten Zugriff auf Daten über Webservices Informationen werden komfortabel in der TaskPane angezeigt Wenig Programmieren, deklarativer Ansatz

101 Marcel Gnoth, NTeam GmbH Demo Was kann IBF Information Bridge Framework

102 Marcel Gnoth, NTeam GmbH IBF-Überblick-Grafik Web Service-basierende Architektur (SOA) Zentraler Metadaten / GUI Server Runtime für Smart Tag / XML Ereignis Initiierung Windows Forms und Taskpane Unterstützung Metadata Finance ERP CRM Smart Clients Web Services

103 Marcel Gnoth, NTeam GmbH IBF-Architektur Windows 2003 Server Services.NET Framework IBF Metadata Store SQL Server 2000 IBF (Metadata Service) Windows Client XML Microsoft Office Professional Edition Web Services.NET Framework Information Bridge Framework Client Server CRMERPOther Data Metadata Service Information Bridge Engine 1 User selects Show Details from Smart Tag 2 CAS Interprets Context using Metadata 3 Call Web Service to retrieve data Smart Tag Displays data in Taskpane 5 4 Returns data

104 Marcel Gnoth, NTeam GmbH IBF-Architekur Legacy App Workflow Engine SiebelSAPMS-CRM Information Bridge Back-end Services Client Office Application Smart Tag Smart Doc Task Pane Manager Host Renderer IBF - UI IBF Engine Metadata Cache Metadata Designer Metadata Web Service Metadata Compliant Service Adapter Compliant Service (Native) BizTalk EAI Existing Web Service XML Instance Data Metadata

105 Marcel Gnoth, NTeam GmbH IBF-Entwicklung Lets walking through the dark forrest … Inspiriert durch Vijay Desai. (Sep, 2004) Information Bridge Framework

106 Marcel Gnoth, NTeam GmbH Überblick einer einfachen IBF-Entwicklung 1.Sorgfältige Planung (Use Cases) 2.Definieren von: –Entities (Geschäftsobjekten) –Beziehungen der Entities untereinander –Views (Darstellung der Geschäftsobjekte) –Operations (Welche Aktionen) 3.Erzeugen eines /mehrerer Webservice –Nach Möglichkeit IBF-konform (nicht zwingend) 4.XML Strukturen von Entities erzeugen –WsdlToMetadata.exe 5.Metadaten mit VS.Net-Metadata-Explorer erzeugen 6.SmartTag entwickeln 7.GUI entwickeln (UserControl), nicht zwingend

107 Marcel Gnoth, NTeam GmbH Planung - Anwendungsfälle Applikation: GreetingService Anwender öffnet Word Tippt Namen von Freunden ein SmartTag-Recognizer erkennt Namen Anwender ruft SmartTag->Show Detail auf SmartTag-Action ruft IBF auf, übergibt erkannten Anwendernamen IBF ruft Webservices auf und erhält Ergebnis Ergebnis wird in der TaskPane in einem selbstentwickelten UserControl angezeigt

108 Marcel Gnoth, NTeam GmbH Entities, Views, Operations Entity: Friend Schema

109 Marcel Gnoth, NTeam GmbH Entities, Views, Operations View: getGreetingMessage Schema Hello William

110 Marcel Gnoth, NTeam GmbH Entities, Views, Operations Operation: GetGreetingMessage

111 Marcel Gnoth, NTeam GmbH Der Webservice Neues Projekt: FriendService Neuer WS: SayHello Zwei neue Klassen für –Friend-Entity –Enthält XML-Attribute –GreetingMessage–View... [XmlRoot("Friend", Namespace="urn-GreetingService-Data")] public class Friend { private string name; [XmlAttribute("Name")] public string Name { get { return this.name; } set { this.name = value; } }

112 Marcel Gnoth, NTeam GmbH 3. Der Webservice Ein ganz normaler Webservice Testmethode einfügen (siehe Code) [WebService(Name="Greeting Service", Description="A Service to send out greeting messages", Namespace="http://InformationBridge/SayHello")] public class SayHello : System.Web.Services.WebService { private GreetingMessage greetingMessage; [WebMethod(Description="A method to greet a friend")] public GreetingMessage GetGreetingMessage(Friend aFriend) { greetingMessage = new GreetingMessage(); greetingMessage.Name = aFriend.Name; if (aFriend.Name=="Marcel") { greetingMessage.Salutation = "Hello "; } else { greetingMessage.Salutation = "Guten Tach "; } return greetingMessage; }

113 Marcel Gnoth, NTeam GmbH Demo Webservice Projekt und Test Information Bridge Framework

114 Marcel Gnoth, NTeam GmbH Metadaten anlegen Zwei Gruppen von Metadaten Daten und Logik –Webservice Zugriffe –Operations, Entities Darstellung –Views –GUI-Elemente in der TaskPane Neuer Projekttyp in VS.Net

115 Marcel Gnoth, NTeam GmbH Metadaten-Typen Metadata = Ein Projekt der IBF Lösung Entity = Geschäftsobjekt View = eine Ansicht eines Geschäftsobjektes Ports = Quelle für XML, Daten, Schemata, … Schema = XML-Schema Transformation = wandelt XML in anderes XML

116 Marcel Gnoth, NTeam GmbH Entities und Views Eine Entity kann auf verschiedene Art Dargestellt werden Informationen können aus unterschiedlichen Quellen (WebServices) stammen Kunde –Finanzen –Bestellungen –Privates Entity(Author)Entity(Author) View(AuthorSummary)View(AuthorSummary)View(AuthorRoyaltyData)View(AuthorRoyaltyData)

117 Marcel Gnoth, NTeam GmbH Überblick Metadaten In IBF gibt es eine ganze Reihe von Metadaten Relationship View 2EntityScopeEntity (Output) Schema Entity 2 (Input) Schema Reference Service Operation Instance View Locator View 1 Entity 1 Service Operation Instance View Locator Port

118 Marcel Gnoth, NTeam GmbH Relationships Ein Autor hat viele Bücher geschrieben Die Entitäten stehen in Beziehung zu einander So kann der Anwender später ein Drill Down machen

119 Marcel Gnoth, NTeam GmbH Relationships von verschiedenen LOB Systemen Office 2003 IBF Engine Metadata Cache Information Worker Client side Server side Pubs database Fulfillment System Web Service Relationship in Metadata Informationen können aus mehreren LOBs zusammengesammelt werden

120 Marcel Gnoth, NTeam GmbH Metadaten – Geschäftsdaten Metadata Scope SayHello Entity Friend View GreetingMessage Friend.DefaultViewName = GreetingMessage Port XML und Schema für Friend-Schema Port XML und Schema für GreetingMessage-Schema Zuweisen der Schemata zu Entity und GreetingMessage

121 Marcel Gnoth, NTeam GmbH Metadaten – Der Webservice Port SOAP für den Webservice anlegen –Hier wird die Webreferenz verlinkt Operation für GetGreetingMessage anlegen –Port SOAP zuordnen –Entity Friend zuordnen

122 Marcel Gnoth, NTeam GmbH Metadata Aktueller Stand der Metadaten Ports Schemata Operation Port zum Webservice

123 Marcel Gnoth, NTeam GmbH Demo Metadata-Explorer und XML-Datei Information Bridge Framework

124 Marcel Gnoth, NTeam GmbH Publishing Metadata

125 Marcel Gnoth, NTeam GmbH Metadata Explorer: The Publish Metadata Dialog Box

126 Marcel Gnoth, NTeam GmbH The Publishing Process Metadata Services VS.NET Metadata Designer SQL Server Client side Server side Office 2003 IBF Engine Metadata Cache Information Worker Solution Developer ReadWrite XML File

127 Marcel Gnoth, NTeam GmbH Demo Publishing Information Bridge Framework

128 Marcel Gnoth, NTeam GmbH Die GUI

129 Marcel Gnoth, NTeam GmbH Die GUI Title Bar Region Caption Region

130 Marcel Gnoth, NTeam GmbH Die GUI – Eine Überschrift (Title bar) View GreetingMessage Verfügt über MenuItemDefinition – Properties –Menüaussehen wird über XML definiert –XML kommt aus einer Operation –MenuType = 1 (Anzeigen) –MenuDefinitionOp…Instance hinzufügen –Operation hinzufügen

131 Marcel Gnoth, NTeam GmbH Die Operation Name des erkannten Freundes anzeigen Input ist ein Schema vom Typ Friend das auch den Namen (Attribut Name) enthält Menüs müssen ein bestimmtes IBF Schema erfüllen Output der Operation muß ein Schema vom Typ MenuDefinitionSchema Deshalb Operation vom Typ: OperationTransformationAggregation

132 Marcel Gnoth, NTeam GmbH Die Operation – Wir zeigen eine Überschrift an … Ports für XML-Text Schemata Operation wandelt Friend Input in MenuDefinition Output um

133 Marcel Gnoth, NTeam GmbH Überschirft Metadaten Anzeige der Knoten Information Bridge Framework

134 Marcel Gnoth, NTeam GmbH Aktionen Aktionen bestehen aus Instanzen mehrerer Operationen

135 Marcel Gnoth, NTeam GmbH Aktions Designer: Instanzen von Operationen erzeugen Metadata Explorer Action Canvas Toolbox

136 Marcel Gnoth, NTeam GmbH Aktions Designer – Parameter Die Operationen können sequentiell ausgeführt werden Über Transformationsinstanzen können Ein- und Ausgabeparameter zwischen den Operationsinstanzen zugewiesen werden

137 Marcel Gnoth, NTeam GmbH Aktionen testen Build & Execute Action Button Build & Execute Action Context Menu Item

138 Marcel Gnoth, NTeam GmbH Demo Aktion aus VS heraus testen Information Bridge Framework

139 Marcel Gnoth, NTeam GmbH IBF Client –Microsoft Office System (InfoPath, Word, Excel, Visio, Outlook) –Visual Studio Tools for Office (VSTO) Actions Pane Deep document centric integration with Word and Excel –Information Bridge Framework (IBF) Context & Action Services Engine (CAS) Smart Tag driven Windows Forms Can use either use.NET Assemblies or Web Services Server –Microsoft Windows Server 2003 IBF uses IIS6 for the reading/writing web services that access the metadata server. –SQL Server 2000 Used as the Metadata Server store –IBF Metadata Server based on SQL Server 2000 Metadata store is relatively small (~5MB) as it only stores metadata and not data directly.

140 Marcel Gnoth, NTeam GmbH Server Konfig All services reside on a single machine Web services are hosted on one or more separate servers SQL Server 2000 MDS Read / Write Web Service Authorization Manager MDS Read / Write Web Service Authorization Manager SQL Server 2000Web Server

141 Marcel Gnoth, NTeam GmbH Client Konfig IIS & SQL Server 2000 MDS Read / Write Web Service Authorization Manager Windows XP Metadata Designer Visual Studio.NET Office 2003 IBF Client IIS & SQL Server 2000 MDS Read / Write Web Service Authorization Manager Metadata Designer Visual Studio.NET IBF Client Office 2003

142 Marcel Gnoth, NTeam GmbH Fazit Hohe Lernkurve –Sehr gute XML, XSL, XSD, … Kenntnisse ! Entwicklung wird noch nicht genug unterstützt –Version 1.5 für QI 2005 geplant ! –Unterstützung für Entwickler stark verbessert Zugriff auf beliebige Webservices möglich –Metadaten werden einfacher, wenn die Webservices sich wohlverhalten –Get und Put für Entitäten, Beziehungen zwischen Entitäten VSTO 2005 bietet ähnliche Funktionalität –Leichter für Entwickler mit.net Erfahrung Auf dem Client muss IBF Runtime sein

143 Marcel Gnoth, NTeam GmbH Fazit Und was nun...? Microsoft Office System 2003

144 Marcel Gnoth, NTeam GmbH Ergebnisse VBA bleibt VSTO 2005 wird ein großer Schritt nach vorn IBF steckt noch in den Kinderschuhen, hat aber großes Potential Research Services: gutes Aufwand Nutzen Verhältnis Formulare in Word oder InfoPath –Je nach Schwerpunkt ISmartDocument ist aufwendig zu programmieren –Wird mit VSTO 2005 obsolet VSTO 2003 bringt nicht wirklich Punkte Office Dokumente gewinnen viel durch XML Unterstützung Verbessertes Deployment und Security

145 Marcel Gnoth, NTeam GmbH InfoPath 2003 Toolkit für VS.Net Info Path mit Assemblies verknüpfen

146 Marcel Gnoth, NTeam GmbH InfoPath Entwicklung Java Script oder VB Script Mit dem Toolkit kann auch in.Net entwickelt werden –Neues Projekttemplate in VS.Net Info Path- oder Wordformulare? –InfoPath muss auf den Clients installiert –Der Schwerpunkt bei Infopath liegt auf den Formularen und dem Zugriff auf Datenquellen oder WS –Der Schwerpunkt bei Word liegt auf Dokumenten

147 Marcel Gnoth, NTeam GmbH Tipps Zuerst VS.Net und dann Office 2003 installieren –GAC muss vorhanden sein, wenn Office die PIAs installiert Dann Office 2003 Professional or Professional Enterprise Edition installieren –Andere Versionen unterstützen keine Smart Doc Entwicklung Primary Interop Assemblies bei Office installieren –Nicht standardmäßig ausgewählt –Run From My Computer Option verwenden

148 Marcel Gnoth, NTeam GmbH Alles wird gut Uff...


Herunterladen ppt "Marcel Gnoth, NTeam GmbH www.gnoth.net Smarte und verbundene Dokumente mit Office 2003 und.NET entwickeln Geschäftsdaten intelligent mit Dokumenten verbinden."

Ähnliche Präsentationen


Google-Anzeigen