Today at SharePoint Conference 2014, we are thrilled to announce that Office Developer Tools for Visual Studio 2013 – March 2014 Update is available to download! The March 2014 Update ships with a ton of new features that improves support for Office 365 Cloud Business App and apps for Office/SharePoint in Visual Studio 2013 RTM. It also allows you to build new types of apps for Office that are enabled in Office 2013 SP1 and Office 365. In addition, “Napa” Office 365 Development Tools is also being updated, which means you can start building new types of apps for Office anywhere through your web browser as long as you sign up for an Office 365 Developer Site. In this article, I’m excited to share with you more details about these new features.
Office 365 Cloud Business App (CBA)
Visual Studio 2013 introduced the new Cloud Business App project template which enables developers to quickly build modern business applications that can integrate with and extend the Office 365 platform experience. In this update, we’ve been focusing more on increasing the productivity or developers building this class of applications. Additional capabilities have been added to provide better support for your application connecting to existing enterprise data sources. It also becomes much easier to integrate documents into your application now.
Attaching to Enterprise Data
Connecting to multiple Enterprise data sources is a common requirement in a business application. Office 365 Cloud Business App allows you to attach your data from databases, SharePoint, OData Services and WCF RIA Services. The March 2014 Update also offers first class support for SAP Netweaver Gateway. When connecting CBA to SAP, it honors SAP annotations for Phone, WebAddress, and Email; speeding up your configuration of entities consumed from SAP Netweaver Gateway.
Figure 1: SAP is available as a data source now!
Enterprise data sources usually contain a huge number of data entities, whereas a typical business application interacts with only a few of them. In order to make it easy for you to find the entities you want to connect to, the Attach Data Source Wizard is improved, which allows you to search the entities based on the name and filter the entities between different categories. It also shows you the relationships of the entities within the data source.
Figure 2: Enhanced Attach Data Source Wizard
If your business application needs to attach to a large data sets, you will be pleased with the updated entity designer in this release, because we’ve improved the performance around attaching to data, as well as many design-time gestures.
The layout of the entity designer has been enhanced for large data sets, so that you can easily browse the relationships between the entities. You can also re-order the properties in alphabetical order with just one click.
Figure 3: Improved Entity Designer
In addition to the large amount of entities, enterprise data sources involves a wide array of data types. The March 2014 Update now supports complex data types and provides better support on the person type as well.
If your Cloud Business App attaches to a SharePoint list that includes a person type column, those columns will automatically light up as a contact in the application. For example, if you have Lync installed on your machine, which connects to the same active directory that your SharePoint site uses, person type columns show the values as Lync contacts and activates Lync features automatically in your application.
Integrating Document Experiences into your Application
Documents are critical pieces of information in many business applications. For instance, you may want to show a list of documents that are specific to a product when a user chooses to view the product’s details. You may also want to allow your users to manage documents in the application. Office 365 Cloud Business App now enables you to attach to a SharePoint document library list and set up relationships between the list entity and another data entity. With this capability, you can quickly build an application that shows documents related to a specific data field.
In addition, when you attach your application to a SharePoint host-web document library, the application will be integrated with a set of new document controls, which allows your users to create new Office documents (either blank documents or from document templates that are available in the attached document library), open documents in Office Web App or Office client, and upload existing documents. All of these are provided by the tools without requiring any extra coding from you.
Figure 4: Integrating documents into your application
Rapid Application Development
We’ve also done a lot to help you build applications faster by making smarter default UI layouts based on your data model. To make sure you can work better with different data types (e.g. people, document, etc.) that you are interacting with, we’ve been taking effort to deliver the right controls through the tools for the right situation. For example, the summary control provided by Cloud Business App enables your application to show the summary property specified for your data entity. You can define any property in your data entity as the summary property. In this release, the summary control is updated to display the default control for the underlying semantic type. With this support, if the summary control is associated with a person type, the Person Viewer control will be used by the summary control, which can present more information about a person (e.g. the person’s name, title, and display picture).
After a data source is attached to your application and the data model is designed, you probably want to implement searching and sorting functionality for your users. The latest Office Developer Tools update not only generates the basic data browsing and editing screens for you, it also provides data filtering support automatically. Without any extra steps on your part, the Cloud Business App generates the set of mobile-optimized screens, which allows your users to search data tables and sort the table using table headers.
Figure 5: Built-in sorting support for the table control
In order to help you quickly build commonly-used screens for your users to browse, view and edit data in your application, a common screen set is introduced in this release. Instead of creating browse, view and new/edit screens one by one, you can now simply choose to create a common screen set, which will generate all these three types of screens at once. The common screen set also hooks up the data tables and relationships automatically for you.
Figure 6: The Common Screen Sets help you to create all the commonly-used screens at once
Bookmarking is another common requirement in web applications, because users usually want to bookmark a frequently-visited page in your application for quick access to that data. In this release, we’ve updated the URL used in the Cloud Business App to make it friendly for bookmarking. Without requiring you add any extra code, your users now can always go right back to any page in the application or pin a page to the start screen on their mobile devices.
Watch the videos and read the walkthroughs to learn more about the new features of Cloud Business Apps.
App for Office Development
An app for Office is basically a webpage that is hosted inside an Office client application. You can use apps to extend the functionality of a document, email message, meeting request, or appointment. Three types of apps are supported in Office: task pane apps, content apps and mail apps. Task pane apps work side-by-side with an Office document, and let you supply contextual information and functionality to enhance the document viewing and authoring experience. Content apps integrate web-based features as content that can be shown in line with the document. Mail apps display next to the currently viewed Outlook items: email message, meeting request, meeting response, meeting cancellation, or appointment.
Office 2013 SP1 and Office 365 supports PowerPoint content apps, Access Web App content apps and allows your mail app to be activated in compose forms (i.e. when users are writing a new email message or creating a new appointment). Office Developer Tools for Visual Studio 2013 – March 2014 Update supports all of these new app types across the development cycle from project creation, manifest editing, programming, debugging to publish. “Napa” Office 365 Development Tools also updated to support these new app types.
You can create all these new kinds of apps the same way you create any new app for Office, via the “App for Office” template in the Visual Studio 2013 New Project dialog. Especially for content apps, two creation options are introduced in this release. One simply allows you to create a basic app, which contains minimum sample code, while the other contains more sample code to demonstrate how to implement an app for Excel and Access Web App to visualize data. You can choose between these two project templates in the project creation wizard to get a quick start for your app.
Figure 7: New app for Office project creation flow with more template options
An Activation page is introduced in the task pane app and content app manifest editors. It provides different options for you to specify how you want the app to be activated. Based on your input, it also shows you where the app will be finally activated.
Figure 8: Activation page in the app for Office manifest editor
To provide a better programming experience for the new app types and the new app activation model, IntelliSense has been improved as well. The IntelliSense only shows the APIs that are valid for the target app hosts. For example, if you build a content app that only targets the Access Web App, only those APIs that are supported in the Access Web App will show in the IntelliSense. If you build a mail app that you only want it to be activated when users are writing an email message, the mail app APIs that are only supposed to be used when users are reading the message will be hidden from the IntelliSense so that you will never call APIs that do not apply. Moreover, the Activation page in the task pane app / content app manifest editor includes an option that you can select to only show IntelliSense with the APIs that belong to the API sets you specified in the manifest.
When it comes to app for Office debugging, you now have a few more options in the March 2014 Update as well. For Excel task pane and content apps, you can debug them in the Office Web App in addition to the desktop client. You can choose between Internet Explorer and Chrome (if they are installed on your machine) through the app project properties window to launch the Office Web App for debugging.
Figure 9: More debugging options available in the app for Office project properties window
In addition to the Office Web App debugging support, the new tools also enable you to debug “Just My Code” for both apps for Office and SharePoint. With this option enabled, you will no longer be presented with the JavaScript exceptions that are irrelevant to your code.
App for SharePoint Development
Apps for SharePoint are self-contained pieces of functionality that extend the capabilities of a SharePoint website. Apps integrate the best of the web and SharePoint; they are targeted, lightweight, and easy-to-use, and do a great job at solving a user need. Users discover and download apps from the Office Store or from their organization's private App Catalog and install them on their SharePoint sites.
The app for SharePoint tooling now allows you to target your app exclusively to SharePoint Online in Office 365, or target to an on-prem SharePoint Server 2013 (which can also run in SharePoint Online). Through a simple switch in the app for SharePoint project properties page, the tools will update the SharePoint version number and the SharePoint Client Components assembly references used in your project accordingly.
Figure 10: Re-targeting a SharePoint version through the app for SharePoint project properties page
In addition to the new features introduced by the new capability of the SharePoint platform, the feedback from our customers (like you) is another important channel that helps us to deliver better development tools. With the VS2013 RTM release, we got a lot of positive feedback for the MVC web application support for apps for SharePoint. To enhance the support with ASP.NET MVC web applications, we added MVC support for client web part pages in this update. If your app for SharePoint project is associated with an ASP.NET MVC application, when you add a client web part and choose to create a new part page in the client web part creation wizard, a client web part controller and a default view will be added, following the MVC pattern.
Figure 11: MVC support for the client web part
Another piece of feedback we kept hearing from our customers is the list instance support for remote event receivers. In VS2013 RTM, when you create a remote event receiver, Visual Studio only allows you to pick a list template. Now, it also shows all the list instances in the project, so you can create a remote event receiver for a specific instance. Visual Studio will create the correct manifest based on your selection.
Figure 12: List instance support for remote event receivers
Summary
Office Developer Tools for Visual Studio 2013 – March 2014 Update has even more features that enable you to build Office 365 Cloud Business Apps that integrates with enterprise data and documents as fast as possible. The tools fully support apps for Office 2013, Office 2013 SP1 and Office 365 development, and help you build apps for SharePoint 2013, SharePoint 2013 SP1 and SharePoint Online in Office 365 more efficiently with more enhanced features. Now it’s time to download the tools, explore all of these new features, and see how they can make your daily work more productive!
In addition, “Napa” Office 365 Development Tools is also updated with new capabilities with this release. Simply signing up for an Office 365 Developer Site, you will enjoy building apps for Office in your web browser right away!
Don’t know yet how to get started building your apps? Go to http://aka.ms/BuildSharepointApps and explore tons of walkthroughs, samples and videos today!
If you have any feedback about this tooling release, please feel free to share your comments with this post, or share your suggestion through Visual Studio Office/SharePoint User Voice site. If you have questions or need help on troubleshooting, our experts are waiting for you at the apps for Office and SharePoint forum.
Enjoy!
Keith Yedlin
Group Program Manager
Microsoft Visual Studio Cloud Business Apps