Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Iam Lug 2009 Integration And Coexistence Session

1,769 views

Published on

Presentation from IamLUG conference

Published in: Technology, Business
  • The Most Effective Natural Breast Enlargement Method... This is the MOST effective natural breast enlargement method ever shared... Just go to the website to see how a new magic strategy has been revealed that has plastic surgeons up in arms as woment no longer need to go through painful surgery. ✱✱✱ https://t.cn/A6Liz7kD
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

Iam Lug 2009 Integration And Coexistence Session

  1. 1. Integration and Coexistence: Leveraging Lotus & Microsoft products to build better solutions John Head Alex Kassabov PSC Group, LLC © 2009 by the individual speaker
  2. 2. Before We Begin • Please turn off/set to vibrate/mute all Cell Phones Pagers Computers Please remember to fill out your evaluations IamLUG 2009 1
  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 IamLUG 2009 2
  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 IamLUG 2009 3
  5. 5. Who Are We? • Alex Kassabov  Vice President of Collaboration at PSC Group, LLC  Involved in Lotus technology since 1995  Notes R3 – got dragged there kicking and screaming • Speaker  Lotusphere sessions on Desktop Integration  Collaboration Summit  GRAINTE Chicago Lotus User Group • Akassabov.wordpress.com IamLUG 2009 4
  6. 6. 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) IamLUG 2009
  7. 7. 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 IamLUG 2009 6
  8. 8. 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 IamLUG 2009 7
  9. 9. 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 IamLUG 2009 8
  10. 10. 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 Pro) • 2008 • 1998  Visual Studio 2008  Notes R5 with COM support  Notes/Domino 8.5 • 2001 • 2009  Notes/Domino 8.5.1  Notes Domino 6 • 2010  Visual Studio 2010  Office 2010 IamLUG 2009
  11. 11. 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 IamLUG 2009 10
  12. 12. 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 IamLUG 2009 11
  13. 13. Integration from the Notes Client • Integrating Microsoft Word • Integrating Lotus Symphony Documents • Mail Merge • Integrating Microsoft Excel IamLUG 2009 12
  14. 14. 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 IamLUG 2009 13
  15. 15. Creating a Word Document — ―Hello World‖ Demo — Example 1 Launch Microsoft Word and enter some text IamLUG 2009
  16. 16. 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. IamLUG 2009
  17. 17. Use the Microsoft 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! IamLUG 2009
  18. 18. Word Template — Data from Notes Demo — Example 2 Create a new document Prompt user Place data into document IamLUG 2009
  19. 19. 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 IamLUG 2009 18
  20. 20. Notes to Writer Demo — Example 3 ―Hello World‖ from Notes to Symphony Documents IamLUG 2009 19
  21. 21. 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! IamLUG 2009
  22. 22. Mail Merge from Address Book Demo — Example 4 Generate a mail merge from the personal name and address book IamLUG 2009
  23. 23. 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 IamLUG 2009
  24. 24. Working with Microsoft Excel Demo — Example 5 Create a spreadsheet from Notes data and generate a chart IamLUG 2009
  25. 25. 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 IamLUG 2009 24
  26. 26. 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 IamLUG 2009
  27. 27. 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 IamLUG 2009
  28. 28. Demo — Example 6 Word template that reads a Notes database via a Web service IamLUG 2009
  29. 29. Microsoft Excel and XML Demo — Example 7 Importing Domino data into a spreadsheet using XML IamLUG 2009
  30. 30. 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# IamLUG 2009 29
  31. 31. VSTO 3.0 Project Types IamLUG 2009
  32. 32. 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 IamLUG 2009
  33. 33. 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 IamLUG 2009 32
  34. 34. 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 IamLUG 2009
  35. 35. 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 IamLUG 2009
  36. 36. ASP.NET Calling Domino via a Web Service Demo — Example 9 Creating an ASP.NET Web page that calls Domino via a Web service IamLUG 2009
  37. 37. 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 IamLUG 2009
  38. 38. Domino Data in a Grid on an ASP.NET Web Page • This is what the data will look like in the grid control: IamLUG 2009
  39. 39. 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 IamLUG 2009
  40. 40. 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 IamLUG 2009 39
  41. 41. 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 IamLUG 2009 40
  42. 42. 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 IamLUG 2009 41
  43. 43. Google Docs Integration – Posting Documents Demo — Example 11 Posting Document to Google Doc from Notes IamLUG 2009
  44. 44. 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 IamLUG 2009 43
  45. 45. 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 IamLUG 2009 44
  46. 46. Real World Integration - Demos Demo — Example 12 Advanced VSTO Demos IamLUG 2009
  47. 47. 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 IamLUG 2009 47
  48. 48. 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 IamLUG 2009 48
  49. 49. 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 IamLUG 2009 49
  50. 50. 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 IamLUG 2009 50
  51. 51. 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 IamLUG 2009 51
  52. 52. 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_APIOOo_en.html IamLUG 2009 52
  53. 53. 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 IamLUG 2009
  54. 54. Follow Up How to contact us: John Head Alex Kassabov jhead@psclistens.com akassabov@psclistens.com Twitter.com/johnhead twitter.com/akassabov Linkedin.com/in/johndhead Linkedin.com/in/akassabov Facebook.com/johnhead Slideshare.com/johnhead IamLUG 2009 54

×