Published on

PowerPoint as An Enterprise Reporting Framework: Harnessing the Power of OOXML

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide


  1. 1. PowerPoint as An Enterprise Reporting Framework: Harnessing the Power of OOXML
  2. 2. Agenda <ul><li>PSC Overview </li></ul><ul><li>PPTX & OOXML in Action: A Case Study </li></ul><ul><li>Technical Solution Summary </li></ul><ul><li>SDK 2.0 </li></ul><ul><li>Introductions: </li></ul><ul><ul><li>David Munaretto Vice President Microsoft Practice </li></ul></ul><ul><ul><li>John Head Director of Enterprise Collaboration </li></ul></ul><ul><ul><li>Andrew Schwantes OOXML Technical Champion </li></ul></ul>
  3. 3. PSC Overview <ul><li>Offices in IL, KS, MN </li></ul><ul><li>~100 Consultants </li></ul><ul><li>Mid Market Focus </li></ul><ul><li>Full Service Consulting Company </li></ul><ul><ul><li>Advisory Consulting </li></ul></ul><ul><ul><li>Solution Development </li></ul></ul><ul><ul><li>Broad Technical Competencies </li></ul></ul>Open Source Collaboration Enterprise Architecture Microsoft Advisory Services Business Solutions Technical Offerings Enterprise Services
  4. 4. PSC Value Proposition <ul><li>100% Focused on Business Value </li></ul><ul><li>Architecture & Integration are the keys to delivering business value </li></ul><ul><li>Core Project Types </li></ul><ul><ul><li>Business Consulting and Analysis </li></ul></ul><ul><ul><li>Portals, Dashboards, Web </li></ul></ul><ul><ul><li>Workflow / BPM </li></ul></ul><ul><ul><li>Complex Application Dev. / Integration </li></ul></ul><ul><ul><li>Key Line of Business Systems </li></ul></ul>
  5. 5. PSC & Microsoft <ul><li>Managed Partner with SMS&P </li></ul><ul><ul><li>Custom Development </li></ul></ul><ul><ul><li>SharePoint Solutions </li></ul></ul><ul><ul><ul><li>Workflow </li></ul></ul></ul><ul><ul><ul><li>Web Content Management </li></ul></ul></ul><ul><ul><li>Document Generation / Office Integration </li></ul></ul><ul><ul><li>Notes Migrations </li></ul></ul><ul><li>Representative Clients: </li></ul><ul><ul><li>Gallagher Insurance </li></ul></ul><ul><ul><li>Tennis Corporation of America </li></ul></ul><ul><ul><li>Brunswick </li></ul></ul><ul><ul><li>Research Director </li></ul></ul><ul><ul><li>JP Morgan Chase </li></ul></ul><ul><ul><li>Barilla </li></ul></ul>
  6. 6. Alignment with Microsoft Portals Dashboards ECM WCM OOXML Presentation Custom Development Process Structured Integration Mission Critical Applications Customization SQL Reporting Services PerformancePoint WWF Infopath Forms Server HIPAA SOX SAP Peoplesoft JDE Legacy Systems OOXML
  7. 7. Vision for OOXML & Office <ul><li>Develop Solutions that use Microsoft Office as the enterprise reporting framework </li></ul><ul><ul><li>Presentation Quality Management Reports and Other Business Outputs </li></ul></ul><ul><ul><li>Dynamic, on the Fly Reporting </li></ul></ul><ul><ul><li>Eventually tightly coupled to SharePoint </li></ul></ul><ul><ul><ul><li>Data Source (Lists, BDC) </li></ul></ul></ul><ul><ul><ul><li>Presentation Layer </li></ul></ul></ul><ul><li>Why? </li></ul><ul><ul><li>Microsoft Office is where Information Workers spend the majority of their time </li></ul></ul><ul><ul><li>Business People know how to use Office </li></ul></ul><ul><ul><li>Tight integration and interoperability between Office Products </li></ul></ul><ul><ul><li>Eliminate the need to spend money on other complicated reporting tools </li></ul></ul>
  8. 8. Case Study – The Client <ul><li>Client creates presentations for their clients to use as selling tools </li></ul><ul><li>Builds hundreds of PPTs with over 400 slides four times a year </li></ul><ul><li>The process… </li></ul><ul><ul><li>Data Received from 3 rd Party </li></ul></ul><ul><ul><li>Imported into Excel </li></ul></ul><ul><ul><li>Manually Edited and Formatted </li></ul></ul><ul><ul><li>Charts Copied into PPT </li></ul></ul>
  9. 9. The Problem… <ul><li>4 times per year  13 times per year </li></ul><ul><li>Self reported data  Automated data collection… order of magnitude increase. </li></ul><ul><li>Manual Creation No Longer Possible without adding a “Small Army” </li></ul><ul><li>SLA with customers required turnaround of deliverables within days </li></ul><ul><li>Too many steps to get to the client deliverable. </li></ul>
  10. 10. Case Study - Solution <ul><li>Leverage OOXML and PowerPoint to generate their Product “on the fly” </li></ul><ul><ul><li>Eliminate import to Excel </li></ul></ul><ul><ul><li>Eliminate manual “copy and paste” of charts and Graphs from Excel to PowerPoint </li></ul></ul><ul><ul><li>Process order of magnitude more data </li></ul></ul><ul><ul><li>Create a rules engine to administer rules and scenarios </li></ul></ul>
  11. 13. Content Substitution Results <ul><li>200 presentations are created each batch </li></ul><ul><li>Each presentation consists of 440 slides including 372 charts/tables </li></ul>
  12. 14. System Overview Database Data File Data Loader Service Statistics Calculator Service PPTX Generator Service PPTX Output Web Tools
  13. 15. Service Workflows
  14. 16. User Workflows
  15. 17. Our Solution – Phase 1 <ul><li>Leverage the OOXML format </li></ul><ul><li>Template represents actual output </li></ul><ul><li>Search and iterate through components on each slide and replace data as required </li></ul><ul><li>Template takes in account maximum bounds for repeating sections and table pagination </li></ul>
  16. 18. Template Creation <ul><li>Client provides presentation with placement of grids, charts, and text token substitutions </li></ul><ul><li>Develop data queries for charts and grids </li></ul><ul><li>Populate database with configuration information for each slide </li></ul>
  17. 19. Slide Configuration in Database <ul><li>Tables that mimic the slide to chart/table relation </li></ul><ul><li>Slide entries provide fields for custom token substitution and suppression formula </li></ul><ul><li>Chart and slide entries provide fields for the dataset query,component order, title text </li></ul><ul><li>Table entries provide field for custom format processor </li></ul><ul><li>Slide index is tied to the slide order in the template </li></ul>
  18. 20. Slide Processing Overview
  19. 21. Slide Text Processing <ul><li>Collect all text parts in document </li></ul><ul><li>Match text to list of tokens for substitution </li></ul><ul><li>Replace token with result from substitution query </li></ul>
  20. 22. Slide Table/Chart Processing <ul><li>Result set from data query in database returns the labels and data for the table/chart </li></ul><ul><li>Replace template data values with corresponding values from data query result </li></ul><ul><li>Clean up table/chart by removing extra columns and rows from data series </li></ul><ul><li>Apply custom formatting to data if custom format processor exists </li></ul>
  21. 23. Format Processing <ul><li>Each chart or table can have an associated custom format processor </li></ul><ul><li>Format processor performed in code, some schemes require comparing values outside of the given table/chart </li></ul>
  22. 24. Slide Suppression <ul><li>Depending on product and document version certain sections of the presentation may be omitted </li></ul><ul><li>Remove extra table data slides </li></ul><ul><li>Remove data slides that produced empty results </li></ul>
  23. 25. Take Two – Content Generation <ul><li>Web based toolset to allow user to create a presentation dynamically </li></ul><ul><li>Template is a single master slide that provides overall presentation theme </li></ul><ul><li>All content and configuration for slides and presentation reside in database, or other external data sources (i.e. Sharepoint) </li></ul><ul><li>Provide scripting for custom formatting for tables/charts </li></ul>
  24. 26. Taking Advantage of SDK 2.0 <ul><li>More document centric approach has closed the gap of difficulty for generating content versus replacing content </li></ul><ul><li>Spend more time analyzing and implementing the business rules and less time creating the document </li></ul>
  25. 27. OOXML SDK 2.0 Comments <ul><li>Thank you Document Reflector </li></ul><ul><li>Strongly typed document object model removes the complexity of having to develop the XML </li></ul><ul><li>The OpenXmlDiff and Class Explorer tools have greatly increased productivity using OOXML as a document generation framework </li></ul>
  26. 28. OOXML SDK 2.0 Questions <ul><li>What changes will impact OOXML going from Office12 to Office14? </li></ul><ul><li>What increase in efficiency in document production will occur from doing Content Generation versus Content Substitution? </li></ul>
  27. 29. Thank You! John’s Blog – johnhead/twitter [email_address] Andrew’s Blog – [email_address] PSC’s website