Project Module

Projects allow end users to save the state of the viewer, share the saved viewer state, and reload it later. The ability to share projects makes them a valuable collaboration tool. For example, a user could open the viewer, pan to a location, add markup, and then save the project. The user can then share the project with colleagues so they can load the project, see the user's changes, and add their own changes.

For saved projects to preserve settings such as layer visibility, your map document (.mxd file) must assign unique IDs for map service publishing. To do so, open your map document in ArcMap, right-click the map, select Data Frame Properties, select Allow assignment of unique numeric IDs for map service publishing, save and publish the map service.

Projects belong to the site of the viewer that created the project. A user cannot create a project in one viewer and then load the project in a viewer that belongs to a different site. If the site has more than one HTML5 viewer, a project can be created in one HTML5 viewer and loaded in the site's other HTML5 viewers.

HTML5 Viewer projects require Geocortex Essentials version 4.5 or newer.

Projects are saved on the server, in the Geocortex Data Store. Geocortex Essentials Manager provides an interface to the Data Store that administrators can use to manage projects. For information, see Geocortex Data Store.

What Projects Save

When you save a project, the following aspects of the viewer's state are saved:

  • Map's center point

  • Currently selected basemaps

  • Layer visibility

  • Currently applied layer filters

  • Currently selected layer theme

  • User-added layers, including layers added dynamically from a layer catalog

  • Uploaded files such as CSV files or shapefiles

  • Markup (graphics and text) from measurement and drawing tools

  • List of saved filters and queries

  • Current feature set, and where it is displayed (Results List or Results Table)

  • Current set of selected features

  • Current feature details, and how they are displayed (compact or expanded)

  • Heat maps

  • Clustering

  • Highlights

  • Pushpins

  • Plotted coordinates

  • Current map tip

  • Current mouse coordinates selection

  • Bookmarks

  • Custom labels

  • Custom symbolization

Instead of saving the map extent, the project saves the map's center point. This preserves the scale level when the project is loaded into a map viewport that has different dimensions than the original viewport.

A bookmark is not restored from a project if a bookmark with the same name already exists in the user's personal bookmarks. This ensures that a user's personal bookmarks are not overwritten by project bookmarks.

Project bookmarks are not saved with the user's personal bookmarks. Project bookmarks are available only while the project is loaded.

Project Tools

By default, the I Want To menu's Global menu has tools for working with projects, shown in the image below.

Project tools, shown in the Desktop interface

 

Open - Open the Projects panel. The Projects panel lists the projects that this user is allowed to load. The user clicks a project in the list to load the project. This restores the viewer state that is saved in the project.

Save - If a project is currently loaded and the user has the necessary privileges, update the project with the current viewer state. Otherwise, create a new project using the name and description entered by the user.

Save as - Create a new project using the name and description entered by the user.

You can also add the project tools to the tabbed toolbar. In the list of available tools, you can find Open, Save, and Save as tools in the Global Tasks tool group. If you configure the viewer to use the Full GIS Toolbar, then users can access the project tools on the toolbar's File tab. For more information about toolbar configuration, see Toolbar.

Creating Projects

The user must be signed in to the viewer to create a project.

To create a project, the user opens the I Want To menu and selects Save. The Save Project panel appears, where the user enters a unique name and optional description, and then chooses Save to create the project.

Alternatively, the user can click Save as instead of Save, provided a project is not currently loaded. If a project is already loaded, the Save function saves the loaded project instead of creating a new one.

Loading Projects

The user does not need to be signed in to load a project. However, this requires additional configuration in Manager. For information about allowing access to "Everyone (no sign-in required)", see Access Privileges and Guest Links.

To load a project, the user opens the I Want To menu and selects Open to open the Projects panel. The user can then select a project from the projects list.

Projects panel, showing two projects

Project Ownership

To create a project, the user must be signed in to the viewer. Users who access the viewer under Anonymous Access cannot create projects.

The user who creates a project is the project's owner. Project owners have full access to the project:

You can change a project's owner in Manager. For instructions, see Geocortex Data Store.

Sharing Projects

By default, only the project owner can see the project. It does not appear in the Projects panel for other users. The project owner can share the project with other users from the Share Project panel.

The project owner can open the Share Project panel at any time by following the steps below:

  1. Open the I Want To menu, and select Open.

  2. Use the Action icon beside the project that you want to share.

  3. Select Share.

    The Share Project panel opens.

    Default appearance of the Share Project panel

Other users can also open a project's Share Project panel using the steps above. However, unless they are the project owner, the access privileges and guest links are not visible.

The method that the owner uses to share a project with other users depends on whether the users will sign in to the viewer or not:

Access privileges and guest links do not allow users to bypass site security. Site security is enforced no matter what method is used to share a project.

Configuring access privileges does not have any effect on the permissions that are configured in the site.

Access Privileges

The project's owner can assign access privileges to other users and groups of users. For example, if the project owner signs in to the viewer using ArcGIS Online credentials, then the owner can assign access privileges to ArcGIS Online users and groups. Similarly, if the owner signs in using Identity Server, then the owner can assign privileges to Identity Server users.

The owner can assign access privileges to:

The access privileges are:

Guest Links

A project's owner can create guest links (URLs) that enable other users to launch the viewer and load the project. There are two types of guest link:

To share guest links with users who are not signed in, you need to configure the Geocortex Data Store to Allow Public Read Access. For information, see Geocortex Data Store.

We recommend that you only share guest links, especially the Edit guest link, when you have no other option.

To create a guest link, the project's owner clicks the Add Link tool for the desired type of guest link and then clicks Save Sharing. The owner then sends the link (URL) to the user. Once a project owner has shared a guest link with a user, the user can share the link with other people.

The project's owner can revoke guest links so the links no longer work. To revoke a guest link, the owner clicks the Remove Link tool for the desired type of link, and then clicks Save Sharing. This removes the guest links from the Share Project panel and stops them from working. After the owner removes a guest link, users can no longer use the guest link to launch the viewer or load the project.

Removing a guest link does not stop user sessions that are already in progress. However, if the user used an Edit link, they lose the ability to update the project as soon as the owner removes the link. The owner can create a new View link or Edit link using the Add Link tool .

Once a project owner has removed a guest link and clicked Save Sharing, there is no way to make the link work again. Clicking the Add Link tool does not restore the old guest link—it creates an entirely new link.

Effect of Data Store Policies on Projects

The Data Store policy that is configured in Manager determines whether the guest links require users to sign in. The following table summarizes how the different policies affect sign-in using guest links.

Effect of Data Store Policy on Guest Link Sign-in

Data Store Policy

View Links

Edit Links

Deny Public Read Access

Requires sign-in

Requires sign-in

Allow Public Read Access

Does not require sign-in

Requires sign-in

Allow Public Read Access and Public Edit Links

Does not require sign-in

Does not require sign-in

If you change the Data Store policy, existing links will behave according to the new policy, not the policy that was in effect when the link was created. For example, if you change the policy form Deny Public Read Access to Allow Public Read Access, existing View links will no longer require users to sign in.

For more information, see Data Store Policies.

Sharing Panel Summary

Summary of Share Project panel options for the project's owner

Example: Use a Project to Collaborate

Taylor and Bill are working on development plans for an industrial site that their company is developing. To start the planning, Bill marks up a site map with notes and ideas. First he signs in to the viewer, searches for the parcel, and zooms the map to it. Then he draws some areas of interest, which he annotates using the Text tool. He also makes some preliminary measurements using the measurement tools. When he is satisfied that he has done everything he wants, he creates a project (I Want To | Save as), which he names Site Plan. In the confirmation dialog box, he clicks Share to open the Share Project panel.

To share the project with Taylor, Bill searches for Taylor's name and adds it to the list of users and groups. He sets Taylor's access privilege to Edit so Taylor can make changes and update the project. Bill also searches for his assistant, Marcus, and gives him View privilege. Finally, Bill copies the Project URL and emails it to Taylor and Marcus. He clicks Save Sharing and closes the Share Project panel.

At this point, Bill realizes that he has forgotten a particular measurement. He selects the measurement tool, adds the missing measurement, and updates the project (I Want To | Save). When his colleagues open the project, they will see the most recent version of the project, which contains Bill's final measurement.

When Taylor receives the email with the project URL, she copies the URL to her browser's address bar and presses Enter. She signs in to the viewer when prompted and the project loads. The map and the saved markup load. Taylor reviews Bill's notes and markup. After reviewing Bill's work, Taylor edits some of Bill's markup, adds some new markup, and saves the project. She then sends Bill and Marcus an email telling them that she has updated the project.

Marcus signs in to the viewer and opens the Projects panel (I Want To | Open). He clears the Show my projects only filter so he can see projects created by other users for which he has access. He sees a project called Site Plan and opens the project. Because Taylor has already updated the project, Marcus sees the current version of the project, with Taylor's changes. He reviews what Bill and Taylor have done and adds some markup of his own to the map, but he cannot update the project because he only has View privilege. To keep a copy with his markup, he clicks Save and creates a new project.

When Bill receives Taylor's email, he reloads the project to review Taylor's markup. Bill and Taylor continue to collaborate on the site plan by marking up the map and updating the project. Marcus stays up to date on the planning by viewing the project after changes have been made.

Project Commands and Events

The Project Module provides commands and events that you can use to work with projects programmatically. The commands and their related events are listed below. All the project commands can be used in hyperlinks, menus, toolbar tools, and workflows. For more information about commands and events, refer to Viewer Commands and Events.

Configuration Properties

Module

No configuration properties

Views

View Models