Presentation given at BIWUG. We dive into the world of Office Add-in development. I'll give an overview of the possibilities of Office Add-ins, cover what is new in Office 2016 and discuss the recent enhancements that have been made to the Office.js APIs. I’ll share some experiences from real-life implementations… or how theory and practice do not always match.
3. About me
Peter Plessers - peter.plessers@spikes.be
SharePoint Architect at Spikes
http://www.spikes.be
Co-founder of Tasks in a Box
http://tasksinabox.com
4. Agenda
What are my options?
Office Add-Ins
Task Add-Ins
Content Add-Ins
Command Add-Ins
Mail Add-Ins
Office UI Fabric
Lessons learned the hard way
5. Visual Basic for Applications
Visual Studio Tools for Office
Office Add-Ins
6.
7.
8.
9. Office Add-Ins VSTO VBA
Automations & Interaction with host
computer
a a
User Interface Customizations Partial a Partial
Interaction with Office APIs Partial a a
Offline Availability (HTML 5 capabilities) a a
Support for team development + source
control
a a
Run code at application-level a a
Sandboxed environment a
Compatibility Office 2013+
(Windows & Mac*)
Office Online
Mobile
Office 2007+
(Windows)
Office 2000+
(Windows & Mac*)
Applications Outlook
Word
Excel
PowerPoint
Project
Office Mix
Access Web Apps
Outlook
Word
Excel
PowerPoint
Project
Visio
InfoPath
Outlook
Word
Excel
PowerPoint
Access
15. Task Pane App User Experience
Familiar User Experience
Leverages familiar Office UI paradigm
Reference Information
Ideal for providing reference information associated with document.
26. Extracted Entities
Entity Type Text Detected
Address US postal addresses
1 Microsoft Way, Redmond WA, 98052
EmailAddress Any SMTP address
MeetingSuggestion A reference to an event or meeting
Let’s meet next Tuesday for lunch.
Contact A personal name related to other entities
Randy Byrne, 1 Microsoft Way, Redmond WA, 98052
PhoneNumber US telephone numbers
(555) 867-5309
TaskSuggestion Actionable sentences in an email
Please install office 2013 on my computer.
Url A filename or web address
27.
28. Get subject of selected mail
Office.context.mailbox.item.subject
Get attachments of selected mail
Office.context.mailbox.item.attachments
Accessing Mail Properties
29. In Add-In:
1. Get a callback token from Exchange server
2. Call custom web service passing callback token + email
id
In custom web service:
1. Authenticate to Exchange server with callback token
2. Call EWS to get attachments for email
3. Return result
Get Attachments
30.
31. • Get the same look & feel of native Office
applications
• Collection of CSS, HTML and JavaScript
• Features
• Typography
• Color Schemes
• Icons
• Animations
• Responsive Grid
Office UI Fabric
34. • Test in multiple browsers / desktop applications
• Security zones in IE
• Differences in capabilities
• E.g., Outlook for Mac does not support APIs for compose mode
• EWS Callback Token Bug !!!
Lessons Learned
Template may not be modified
Twitter hashtag: #spsbe for all sessions
Currently Apps for Office are available in the following shapes
Content App – These are embedded into the main content similar to a chart or image would be.
Task Pane App – These appear in the sidebars
Mail App – Dedicated experience for email inboxes
The basic components of an app for Office are an XML manifest file and a webpage. The manifest defines various settings and points to the webpage that implements the app UI and custom logic
One reason to create a task pane app is that it provides Office users with a familiar user experience. For example Microsoft Word and Microsoft Excel have exposed many of its internal features using task panes so task pane apps provides a familiar Office UI paradigm.
Task pane apps are ideal for providing users with reference information. For example, a task pane app can perform Internet searches or lockups and provide reference information that can be inserted back into the current document.
This slide contains a screenshot showing the app after it has been inserted in a document. In Microsoft Word 2013. Different apps provide different user experiences. This app which is available for free on the Office Store allows the user to leverage the Marriam-Webster online dictionary lookup service to look up words and terms right from within Microsoft Word.