O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

MMLUG 2009 Integration And Coexistence Session

1.447 visualizações

Publicada em

Integration and Coexistence: Leveraging Lotus & Microsoft products to build better solutions.

Publicada em: Tecnologia, Negócios
  • Entre para ver os comentários

MMLUG 2009 Integration And Coexistence Session

  1. 1. MWLUG Conference 2009 Empowering the Lotus Community Integration and Coexistence: Leveraging Lotus & Microsoft products to build better solutions John Head IBM Center PSC Group, LLC Chicago, IL August 27-28, 2009
  2. 2. Before We Begin • Please turn off/set to vibrate/mute all Cell Phones Pagers Computers Please remember to fill out your evaluations
  3. 3. What We’ll Cover … • Who we are? • Integration Background • Integration from the Notes client • Integration from other applications • Integration from a web browser • Integration with Google Docs • Real World Integration • Looking forward • Wrap-up and Q&A
  4. 4. Who Are We? • John D. Head – Director of Enterprise Collaboration at PSC Group, LLC – Involved in Lotus technology since 1993 – OpenNTF.org Steering Committee Member and IP Working Group Chairman • Speaker – Over 30 sessions at Lotusphere since 1996 – Speaker at Lotus Developer , ILUG, UKLUG, and other conferences • Author – Publications on Office and SmartSuite integration with Notes – LotusUserGroup.org contributing Author and Forum moderator – ―Lotus Symphony for Dummies‖ Technical Editor – ―Self Assessment and Strategy Guide for Migrating from Domino Document Manager ― Redbook Author • www.johndavidhead.com twitter.com/johnhead
  5. 5. PSC Group, LLC  IBM Premium Business Partner for 19+ Years  Host of the following blogs:  Microsoft Managed Partner  Ed Brill’s (www.edbrill.com)  Notes & Domino 8.5 Design Partner  Lotus Design Blog(Mary Beth Raven) (www.notesdesign.com)  OpenNTF.org Alliance Member, Steering  LotusStaffNotes (Brent Peters) (www.lotusstaffnotes.com) Committee Company, & Former Host of  Lotus Connections Team OpenNTF.org (synch.rono.us)  Lotus Sametime  Winner of 2007 & 2009 Lotus Awards! (www.thesametimeblog.com)  Domino Server Team (www.dominoblog.com)  Lotus Mashups (www.mix-and-mash.com)  Chris Pepin IBM CTO’s Office (www.chrispepin.com)
  6. 6. Demo Databases • Presentation example database – Single database with all examples – You can configure it for your Notes client – Example numbers in the presentation match those in the database • Lotusphere 2009 session database – From Genii Software – Updated version inside the demo database • Personal name and address book – My demos work with the standard Notes 6, 7, 8, & 8.5 templates
  7. 7. Let’s take a little poll … • Who is using … – Office 97 and earlier – Office 2000 – Office XP – Office 2003 – Office 2007 – Office 2010 Beta – OpenOffice / StarOffice – Lotus Symphony – iWork – Other
  8. 8. What We’ll Cover … • Who we are? • Integration Background • Integration from the Notes client • Integration from other applications • Integration from a web browser • Integration with Google Docs • Real World Integration • Looking forward • Wrap-up and Q&A
  9. 9. Integration History • 1994 • 2004 – DDE with Ami Pro – Notes Domino 6.5 with LS2J and DXL • 1996 • 2005 – Notes R4 – Notes Domino 7 with Web services – OLE • 2007 – LotusScript – 2007 Office System – VBA – Lotus Notes/Domino 8 • 1997 – Lotus Symphony – SmartSuite with LotusScript (Word • 2008 Pro) – Visual Studio 2008 • 1998 – Notes/Domino 8.5 – Notes R5 with COM support • 2009 • 2001 – Notes/Domino 8.5.1 – Notes Domino 6 • 2010 – Visual Studio 2010 – Office 2010
  10. 10. The Good News • We have entered the ―Industrial Revolution‖ period of the Integration Era • In the ―Medieval Times‖ – DDE with Ami Pro – NotesSQL was used to get even the most basic of data – OLE embedding – Notes F/X
  11. 11. The Good News (continued) • The Renaissance brought us new tools – OLE automation – COM automation – And much more • The Revolution brings us major changes – A true competitor to Office – Visual Studio.NET 2008 and VSTO 3.0 – Code begins to move from inside a document to complete applications
  12. 12. Integration from the Notes Client • Integrating Microsoft Word • Integrating Lotus Symphony Documents • Mail Merge • Integrating Microsoft Excel
  13. 13. Integration from Notes • From Notes, you will write code to manipulate the application • In most cases, you will be converting Visual Basic for Applications (VBA) code to LotusScript • The VBA code will be written so it saves in Notes as LotusScript • Once you get the knack of converting the code, you can focus on the process vs. the code
  14. 14. Creating a Word Document — ―Hello World‖ Demo — Example 1 Launch Microsoft Word and enter some text
  15. 15. The Easiest Way to Start • Microsoft Office provides us with a recorder • Records all keyboard actions – Mouse actions are sometimes recorded, so avoid when possible • Generates VBA code for you • Easy way to learn how something is done – Table is created – Page settings are set – etc.
  16. 16. Use the MS Constants Database • Provides a listing of all Microsoft Office variables and their converted constants • Extraction of constants by John Collidge • Database built by Tom Duff • OpenNTF.org project • Supports Microsoft Office 2000, XP, 2003, and 2007 • More features planned!
  17. 17. Word Template — Data from Notes Demo — Example 2 Create a new document Prompt user Place data into document
  18. 18. Introduction to OpenOffice.org Development • Designed on an interface-based component model called Universal Network Objects (UNO) • UNO definition – UNO offers interoperability between different programming languages, different object models, different machine architectures, and different processes; either in a local network or even via the Internet – UNO components can be implemented in, and accessed from, any programming language for which a UNO language binding exists
  19. 19. Notes to Writer Demo — Example 3 “Hello World” from Notes to Symphony Documents
  20. 20. Merging Mail from Notes • Most requested Notes-to-Office Integration functionality • Users have no idea how to get data from Notes into Word • Lotus has not provided this functionality … yet • Quick win for you — take this code back and add it to your boss’s personal name and address book and be the HERO!
  21. 21. Mail Merge from Address Book Demo — Example 4 Generate a mail merge from the personal name and address book
  22. 22. Integration with Microsoft Excel • Working with Excel is very different from Word • The objects we use are different Microsoft Word Microsoft Excel Text Position/Cursor Cell Paragraph Range Page Worksheet Document Workbook • In Excel, we tend to move more data from Notes to the application – Lots of rows in Excel vs. filling in bookmarks in Word
  23. 23. Working with Microsoft Excel Demo — Example 5 Create a spreadsheet from Notes data and generate a chart
  24. 24. What We’ll Cover … • Who we are? • Integration Background • Integration from the Notes client • Integration from other applications • Integration from a web browser • Integration with Google Docs • Real World Integration • Looking forward • Wrap-up and Q&A
  25. 25. Moving to the Other Side • This part covers the more advanced subjects – Such as automating Lotus Notes from Microsoft Office and other technologies – We will use COM, XML, Web services, and .NET technologies – As the title suggests, this part is more technical We are about to pick up the pace
  26. 26. Automation from the Microsoft Side • Many integration scenarios require that user interaction start, or solely be, from an application other than Notes • Many times we will not have the Notes client installed • We will not be writing LotusScript – We may call LotusScript through the Notes COM interface • We need to take advantage of ―new‖ technologies – XML – Web services – .NET – Managed code
  27. 27. Demo — Example 6 Word template that reads a Notes database via a Web service
  28. 28. Microsoft Excel and XML Demo — Example 7 Importing Domino data into a spreadsheet using XML
  29. 29. VSTO Versions • Visual Studio Tools for Office – Version 1 = VSTO 2003 with Visual Studio.NET 2003 – Version 2 = VSTO Second Edition with Visual Studio.NET 2005 – Version 3 = VSTO 3.0 with Visual Studio.NET 2008 • Unless you are forced too, only use VSTO 3.0 • VSTO allows for VB.NET and C# – PSC has moved to C# for all our development – C# is more powerful – More third-party tools available for C#
  30. 30. VSTO 3.0 Project Types
  31. 31. VSTO 3.0 and Microsoft Word and Domino Web Service Demo — Example 8 Creating a new Word document that prompts the user and fills out Domino data via Using VSTO
  32. 32. What We’ll Cover … • Who we are? • Integration Background • Integration from the Notes client • Integration from other applications • Integration from a web browser • Integration with Google Docs • Real World Integration • Looking forward • Wrap-up and Q&A
  33. 33. Ways to Add Domino Functionality to ASP.NET • Using Domino Web services • Using Domino Web agents and XML • NOTE: Selecting the right option is dependent on the Domino Server version and the developer’s skill
  34. 34. ASP.NET Calling a Domino Web Service • We can call the same Domino Web service we have used before • ASP.NET will import the Web service • Code behind the button will be virtually the same as when ASP.NET called Domino via COM
  35. 35. ASP.NET Calling Domino via a Web Service Demo — Example 9 Creating an ASP.NET Web page that calls Domino via a Web service
  36. 36. ASP.NET Can Also Work with Domino XML • ASP.NET can display Domino data in a great grid control • Steps to make this happen: – Drag a GridView data control onto your page – An XMLDataSource object is automatically added – The XMLDataSource is associated with the GridView control – Set the DataFile property of the XMLDataSource to the XML agent
  37. 37. Domino Data in a Grid on an ASP.NET Web Page • This is what the data will look like in the grid control:
  38. 38. Displaying Domino XML in an ASP.NET Web Page Grid Demo — Example 10 Creating an ASP.NET Web page that uses the grid control to display Domino XML
  39. 39. Microsoft SharePoint Integration • Integration at the Notes client – Mainsoft Sharepoint Integrator • Integration with Domino data – A combination of • VSTO • Domino XML • Some magic :-) • Samples inspired by Gary Devendorf @ Microsoft • Demo in download database
  40. 40. What We’ll Cover … • Who we are? • Integration Background • Integration from the Notes client • Integration from other applications • Integration from a web browser • Integration with Google Docs • Real World Integration • Looking forward • Wrap-up and Q&A
  41. 41. Google Docs Integration • Higher degree of difficulty • Java code integrated with the Notes 8 and 8.5 Standard Clients – Eclipse.org plug-ins • A sidebar application that displays the documents – Just like Quickr! • This sample is not for the timid! • There is also a C# library available
  42. 42. Google Docs Integration – Posting Documents Demo — Example 11 Posting Document to Google Doc from Notes
  43. 43. What We’ll Cover … • Who we are? • Integration Background • Integration from the Notes client • Integration from other applications • Integration from a web browser • Integration with Google Docs • Real World Integration • Looking forward • Wrap-up and Q&A
  44. 44. Real World Integration • Real World Use Cases • Zain Africa Challenge Application – www.zainafricachallenge.com • PSC won the 2009 Best Philanthropic Lotus Award for this solution • Integration Samples – Excel for reporting – Word for Scripts – Integra for XML export
  45. 45. Real World Integration - Demos Demo — Example 12 Advanced VSTO Demos
  46. 46. What We’ll Cover … • Who we are? • Integration Background • Integration from the Notes client • Integration from other applications • Integration from a web browser • Integration with Google Docs • Real World Integration • Looking forward • Wrap-up and Q&A
  47. 47. Looking Forward • 2009 – Lotus Symphony Toolkit with Notes 8.5.1 • LotusScript and Java • Requires 8.5.1 Client • Full automation API – XPages in the Notes Client in 8.5.1 • Automation from the web • 2010 – Visual Studio 2010 with VSTO 4 – Office 2010 • Backstage
  48. 48. What We’ll Cover … • Who we are? • Integration Background • Integration from the Notes client • Integration from other applications • Integration from a web browser • Integration with Google Docs • Real World Integration • Looking forward • Wrap-up and Q&A
  49. 49. We Only Scratched the Surface • There are over 3 hours of content available for this presentation • Search Slideshare for Lotusphere 2009 JMP205 • Over 25 demos including – Symphony Spreadsheets – Microsoft PowerPoint – Symphony Presentations – Microsoft Project – Microsoft Visio – Microsoft InfoPath – ASP.NET and COM – Google Docs consuming Domino XML
  50. 50. Resources • Microsoft Office developer’s Web site – http://msdn2.microsoft.com/en-us/office/default.aspx • Microsoft Developer Network – http://msdn.microsoft.com • Microsoft Office blog listing – http://msdn2.microsoft.com/en-us/office/aa905342.aspx • PSC’s Reporting and Office Integration page – www.psclistens.com/enTouchCMS/app/viewCategory? catgId=66
  51. 51. Resources (continued) • OpenOffice.org – http://www.openoffice.org • OpenOffice Developers Guide – http://api.openoffice.org/DevelopersGuide/DevelopersGuide. html • Programming OpenOffice with Visual Basic – http://www.kalitech.fr/clients/doc/VB_APIO Oo_en.html
  52. 52. Lotus Community Sites Planet Lotus (www.planetlotus.org) is an aggregation of Lotus related blogs and news IdeaJam (www.ideajam.net) is a place where people can post and share their ideas, and gauge the marketability, popularity and viability with input from others OpenNTF (www.openntf.org) is a site devoted to getting groups of individuals all over the world to collaborate on Lotus Notes/Domino applications and release them as open source IBM’s Official portal for developers including a dedicated section for Lotus (www.ibm.com/developerworks/lotus) Bleedyellow.com provides community implementations of Lotus Connections and Sametime Lotus Greenhouse (greenhouse.lotus.com) is a live community website where you can use Lotus Collaboration Products for free! LotusUserGroup.org is the on-line home of the IBM Lotus community for regional and virtual user groups The Lotus Community Podcasts
  53. 53. Follow Up How to contact us: John Head jhead@psclistens.com Twitter.com/johnhead Linkedin.com/in/johndhead Facebook.com/johnhead Slideshare.com/johnhead

×