Word on the Server


Published on

Get to know about the new Word Web App and how you can edit those word documents online.
Learn also how to use the new Word Automation Services in order to automate those document conversion tasks.

Published in: Technology
1 Like
  • Be the first to comment

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

No notes for slide

Word on the Server

  1. 1. Word on the Server<br />Mohamed YehiaMay 2010<br />
  2. 2. Who Am I<br />Technical Architect<br />www.mohamedyehia.net<br />@mohdyehia<br />myehia@live.com<br />facebook.com/mohdyehia<br />
  3. 3. Where Am I<br />Ireland<br />Senegal<br />Egypt<br />India<br />
  4. 4. Agenda<br />Word Web App<br />Word Automation Services<br />
  5. 5. WORD WEB APP<br />
  6. 6. Word Web App<br />Enable users to view and edit documents in the browser<br />Available via<br />SharePoint 2010<br />Windows Live<br />
  7. 7. Word Web App<br />Word Web App Viewer<br />Server optimized engine<br />Default click for documents on SharePoint<br />Converts files to PNG or use Silverlight<br />Word Web App Editor<br />Server editing of Open XML documents (.docx)<br />Utilizes Open XML SDK <br />
  8. 8. Word Web App<br />Part of Office Web Apps<br />Requires Office 2010 Client Enterprise CAL<br />Activate Site Collection feature<br />Configure Open Behavior<br />
  9. 9. Word Web App<br />DEMO<br />
  10. 10. WORD automation services<br />
  11. 11. Background<br />Customers automate Word client<br />Not recommended by Microsoft<br />Application Object Model was not designed for bulk automation<br />Does not scale <br />Dialog boxes “stop” automation<br />Require reboot on server every X hours<br />
  12. 12. Why?<br />DOC<br />PDF<br />Word<br />Word<br />MHTML<br />XPS<br />Word<br />SQL<br />Word<br />Word<br />Word<br />
  13. 13. What is Word Automation Services?<br />In SharePoint 2010 (Standard & Enterprise)<br />100% server-side rendering<br />Save As on the server<br />Read/write any format understood by Word client<br />High volume throughput with scalability<br />Pagination, TOC, Content Controls, Updating fields<br />Printing on server through PDF/XPS<br />
  14. 14. Performance<br />
  15. 15. Configuration<br />Central Administration > Application Management > Service Application<br />Recommendation<br />Worker processes = # of processors on the server -1<br />Max of 90 document conversions per worker process per minute.<br />
  16. 16. Configuration<br />
  17. 17. Word automation services<br />DEMO - CONFIGURATION<br />
  18. 18. Object Model<br />Microsoft.Office.Word.Server assembly <br />Under Microsoft Office 2010 component<br />Start a conversion job<br />
  19. 19. Starting a Job<br />ConversionJobjob = newConversionJob(“Word Automation Services”);<br />job.UserToken= site.UserToken;<br />//specify job settings<br />job.Settings.OutputFormat= SaveFormat.PDF;<br />job.Settings.OutputSaveBehavior= SaveBehavior.AlwaysOverwrite;<br />job.Settings.UpdateFields= true;<br />//job.AddFolder(inputFolder,outputFolder);<br />//job.AddFile(inputFilePath, outputFilePath)<br />job.AddLibrary(inputLibrary, outputLibrary);<br />job.Start();<br />
  20. 20. Monitoring a Job<br />ConversionJobStatus status = newConversionJobStatus(wordServicesName, jobId, null);<br />while (true)<br /> {<br />Thread.Sleep(10000);<br /> status = newConversionJobStatus(wordServicesName, job.JobId, null);<br />if (status.Count == status.Succeeded + status.Failed)<br /> {<br />Console.WriteLine("Completed, Successful: {0}, Failed: {1}",<br />status.Succeeded, status.Failed);<br />System.Collections.ObjectModel.ReadOnlyCollection<ConversionItemInfo> failedItems =<br />status.GetItems(ItemTypes.Failed);<br />foreach (ConversionItemInfofailedIteminfailedItems)<br />Console.WriteLine("Failed item: Name:{0}", failedItem.InputFile);<br />break;<br /> }<br />
  21. 21. Word automation services<br />DEMO – OBJECT MODEL<br />
  22. 22. Build Rich Solutions<br />Word Automation Services + Open XML SDK are designed to be complimentary<br />SDK for file manipulation<br />Word for file conversion/archiving tasks<br />Deals with binary formats as well<br />Open XML SDK<br />Print<br />Template<br />Documents<br />Data<br />PDF<br />Word Automation Services<br />
  23. 23. Word automation services<br />DEMO – OPEN XML SDK<br />
  24. 24. Key Takeaways<br />Word is now on the Server<br />Browse and Edit<br />Save As on the server<br />Program against the document<br />Office Services + Open XML SDK = Rich end to end solutions<br />Co-Authoring opens new solution possibilities<br />
  25. 25. Resources<br />Blogs<br />Eric White’s blog: http://blogs.msdn.com/ericwhite<br />Doug Mahugh’s blog: http://blogs.msdn.com/dmahugh<br />ZeyadRajabi + Brian Jones’ blog: http://blogs.msdn.com/brian_jones<br />John Durant’s blog: http://blogs.msdn.com/johnrdurant<br />MSDN<br />Contains how-to articles and documentation<br />Forums related to SDK, code snippets download<br />http://msdn.microsoft.com/office/xml<br />
  26. 26. Thanks<br />Next Session <br />Tools in Visual Studio 2010 for Sharepoint2010 byMadhurAhuja<br />Join us @ Microsoft Egypt<br />SharePoint 2010 Community Launch on May 12th<br />www.mohamedyehia.net<br />@mohdyehia<br />myehia@live.com<br />facebook.com/mohdyehia<br />
  27. 27. Thanks to our sponsors<br />