ArcGIS for SharePoint makes it easy to spatially enable existing SharePoint lists and libraries that contain coordinates by adding the ArcGIS Location Field. But what about creating lists and libraries that are spatially enabled by default? This is one question we’ve heard a lot, so we decided to take a closer look.
SharePoint Lists and Templates
As you probably know, SharePoint allows you to create and store data and documents through lists and document libraries. Lists are simply how SharePoint represents tabular data, while document libraries expand on that concept by requiring that a particular kind of document be associated with each record in the table. SharePoint allows open-ended definition of each list’s or library’s schema by letting you add columns to it, choosing the data type, name, and other settings for each column. SharePoint also allows you to define views, which include a specific subset of columns for display. In this way, lists and libraries can be tailored to capture specific information about the particular type of data they are meant to contain.
There are many cases where different lists are meant to contain data about the same type of objects, so it makes sense for them to use the same data structure. For example, suppose an organization manages remediation projects, and those projects always have a particular set of personnel roles (e.g. project manager), contact information, budget figures, status indicators, project description, and other information. Data about each project is stored in a record contained in a list, and the different pieces of data are captured by different columns. But suppose this is a large organization that manages many such projects for many different clients. So rather than having one huge list that contains all the remediation projects, they are divided into different lists – one for each of the organization’s clients.
So what happens when there’s a new client? Obviously, a new list is needed, but that list should have the exact same set of columns, views, and properties as every other list containing the organization’s remediation projects. The list could be created manually, and the same columns, views, and properties could be specified one-by-one, but that’s time-consuming and error prone – particularly when the process is repeated many times.
Fortunately, SharePoint has a great solution for this problem – list templates. List templates define the default properties and content for a list (or document library), including the list’s columns and views. Through SharePoint, you can easily create list templates based on existing lists, so that you can then use the template to create new lists with the same schema. List templates can be created as follows:
- If you have an existing list that you would like to create a template from, navigate to it. Otherwise, create a new list and add the columns to it that you would like to include in the template. Create the views you would like for the template as well.
- From the List tab, click the List Settings button:
- Under Permissions and Management, click the “Save list as template” link:
- Fill out the template information as desired and click OK to create the template. The template name is the name that will be shown when creating new lists. Note the “Include Content” checkbox as well – if you want records included in lists created from the template by default, make sure to check this.
That’s all it takes to create the template. Now, when you create a list by selecting More Options from the Site Actions menu, you’ll see the template included as a list type – right alongside SharePoint’s built-in types:
The file for the template is stored in the site collection’s List Template Gallery, which can be accessed from the Site Settings page. If you want to use the template on other site collections, all you have to do is download the file from the gallery and add it to the gallery of the other site collections. You can do that through SharePoint’s web UI, SharePoint Designer, or programmatically.
Adding Location to Templates
Of course, many types of data have a coordinate location associated with them. With the remediation projects example, for instance, each project would naturally have a location where the remediation is taking place. With ArcGIS for SharePoint, you could easily map project locations in lists that have already been created and populated. But what about the case where there’s a new client, and hence a new list? Just like any other manual steps, manually adding the Location Field every time a new project list is created is not desirable. To make the locational component a default part of the list, simply do the following:
- Create a new list, adding the columns, views, and specifying the settings you would like to include in the template. Alternatively, if you already have a list to use as the basis for the template, navigate to it.
- Add the ArcGIS Location Field to the list. Make sure to specify the columns in the list that contain the coordinates when adding the field.
- Create the template as described in steps 2-4, above.
That’s really all there is to it. In just a few steps, you can provide your organization with list types that integrate location and accurately reflect your organization’s business processes in a standardized way.
SharePoint, Silverlight, Office