In this chapter, we will be covering the integration options. The new application model in SharePoint 2013 offers a number of options for your application to integrate deeply with SharePoint, other systems, and data. These options are as follows −
In user interface integration, three main integration points are available to you as a part of the SharePoint application model, which are as follows −
App Parts and Pages offer you the ability to surface your applications’ user interface to your users. For people familiar with SharePoint 2010, App Parts are similar to Web Parts.
App Parts are reusable and configurable windows into your application.
Pages are much like an App Part except that they are viewed in a larger, fuller window style.
The ribbon was first introduced in SharePoint 2010. It provides a central location for all actions that a user may want to take on documents and other data.
In SharePoint 2010, developers could include custom actions for their applications in the ribbon; SharePoint applications also allow this customization. This enables you to include actions where users expect them, alongside all the other standard actions SharePoint provides.
The Action menu is a context-aware menu on items in a SharePoint list or library. For example, in a SharePoint document library the Action menu exposes common functions such as Check In and Check.
Another term commonly used for this menu is Edit Control Block.
SharePoint applications allow you to include additional actions on this menu. For example, it is a great location to display your application’s functions, which apply to a single list item.
Navigation lets users find your application, and integrating with the Ribbon and Action menus lets your users take actions in the same familiar location that they do elsewhere in SharePoint.
Using one or more of these building blocks enables you to integrate your application’s user interface with that of SharePoint’s and expose your app to its users.
Providing a UI for users is usually the most prominent aspect of any application. On the other hand, responding to the actions users take- either within an application, or to interact with an application, is also extremely important.
The key features are −
SharePoint applications provide the ability to both respond to activities within your application such as a button click and respond to activities within SharePoint such as a document being checked out etc.
Responding to activities within your application is very straightforward. Your application’s UI and code run remotely from SharePoint and are simply surfaced via App Parts and Pages. For this reason, responding to an event such as a button being clicked in your application is entirely tied to your application’s programming framework. For example, if your app is built with ASP.NET then you simply catch the OnClick event for an ASP.NET button.
SharePoint does not get in your way for these types of events. For responding to events that occur inside SharePoint, such as a document being saved or updated, SharePoint provides event receivers.
SharePoint 2013 also provides event receivers that allow applications to respond to events occurring within a SharePoint site.
Data is the heart of every application, which is typically, what users want to work with within your application. SharePoint provides a number of out-of-the-box options for storing and working with data. These options are as follows −
Storing and manipulating data within SharePoint.
Working with data that lives external to SharePoint.
From the very first version of SharePoint, the goal has been to make working with data simple and straightforward for users.
The simplest example of this is the concept of list data. Users are able to store and work with tabular style data via a common web interface.
Many see using lists analogous to using a table of data in a database. SharePoint applications can also take advantage of these same data storage capabilities natively by using lists, SharePoint offers developers the ability to take advantage of many of the data storage capabilities that SharePoint provides without having to reinvent the wheel.
If used properly, SharePoint can save time and effort and potentially reduce the management and support costs of your operation.
The following are the core data-storage capabilities −
Lists − For storing structured data, much like in a table.
Libraries − For storing unstructured data, such as in a document or file.
SharePoint provides a comprehensive set of APIs for developers to use within the applications to interact with and manipulate data that resides in SharePoint. For SharePoint applications, those APIs are exposed in the Client-Side Object Model (CSOM).
You will see many of these options in the forthcoming chapters.