Available with Standard or Advanced license.
The following is a scenario in which a small private investigation firm uses versioning to manage the data in its geodatabase. The data is used by the employees to do analysis that helps with their investigations. This scenario will explain how the firm creates versions and sets permissions on the versions.
The geodatabase administrator at the investigation firm creates the DEFAULT version of the geodatabase when he creates the geodatabase. Since this is a small firm, the geodatabase administrator is also the database administrator. He adds five users to the database—one for each employee in the agency who will be accessing the geodatabase. All the employees will edit some data, and some users will need to create new datasets, so the geodatabase administrator grants the users the permissions they need in the database to edit and/or create data.
One of the employees, Maxine, is responsible for loading base data into the geodatabase and maintaining this data. Maxine loads data (such as orthophotos, addresses, roads, and buildings) into the geodatabase. Since Maxine loaded the data, she automatically has permission to edit the data.
The chief investigator, Angus, will create datasets related to investigations, such as crime scenes and witness information. Frank and Gertrude, two junior investigators, will be responsible for most of the editing done in the investigation-related datasets, so Angus grants editing permissions to Frank and Gertrude on these datasets. (For information on setting dataset permissions, see Granting and revoking privileges on datasets.)
It has been decided the agency will use versioning to edit its data. To perform versioned editing, the datasets must be registered as versioned. Only the user who owns the dataset (the user who created the dataset) can register the dataset as versioned; therefore, Maxine registers the address, road, and building datasets as versioned, and Angus registers as versioned such datasets as crime locations and witness information.
At this point, there is only one version—the DEFAULT version. This will be the version that is considered the master, or production, version of the data. Other versions will be created to allow the employees to edit the data without locking the data from other users or letting other users see incomplete data.
Creating one new version
Since it is the production version, the geodatabase administrator wants to protect the DEFAULT version from erroneous edits in the existing datasets. To do this, the geodatabase administrator sets the DEFAULT version's permission to Protected through the Versions tab of the Geodatabase Administration dialog box, which is accessed from the geodatabase connection in the Catalog tree.
After the geodatabase administrator makes the permission change to the DEFAULT version, user Maxine logs in and creates a new version from the DEFAULT version. This is also done from the
Maxine names the new version Base and sets Public as the version's access permission.
There are now two versions: DEFAULT and Base.
All employees can connect to both versions. Only the geodatabase administrator can edit data when connected to the DEFAULT version and post to the DEFAULT version. When employees connect through the Base version, they can edit any datasets to which they have been granted the required dataset permissions.
Using the new version
As mentioned above, Maxine will be editing the base data. She will connect to the Base version to edit the base data, such as roads, addresses, and buildings.
When Maxine finishes a set of edits, the geodatabase administrator checks Maxine's edits in the Base version. If the changes are okay, they are reconciled with the DEFAULT version to bring any changes that may have been made into the DEFAULT version. Since only Maxine should be editing this data, there shouldn't be any conflicts found during reconciling. At this time, the geodatabase administrator posts the changes to the DEFAULT version.
This moves all of Maxine's edits into the DEFAULT version.
For details on reconciling, resolving conflicts, and posting, see the following topics:
Creating another version
Another employee, Angus, needs to have data relevant to the cases the firm investigates. He connects to the DEFAULT version of the geodatabase in the Catalog tree in ArcMap.
Then, from the Versions tab of the Geodatabase Administration dialog box, Angus creates a new version from DEFAULT.
The version is named Cases, and the permission is set to Public. This will serve as the parent version to versions created for each individual case. This version will also be used by Angus to perform quality assurance checks on all the case data before it is reconciled with and posted to the DEFAULT version by the geodatabase administrator.
There are now three versions: DEFAULT, Base, and Cases.
All employees can connect to all three versions. Only the geodatabase administrator can edit data when connected to the DEFAULT version and post to the DEFAULT version. When employees connect through the Base or Cases versions, they can edit any datasets to which they have been granted the required dataset permissions.
Creating versions from a version other than DEFAULT
When an investigator is assigned a case, he or she creates a new version from the Cases version to add new data relevant to the case.
These versions are set to Protected, so only the investigator working on the case at the time can edit the datasets when connected to this version.
As you can see on the tree view of the Versions tab below, Gertrude has created the version Case1, and Frank created Case2. Gertrude will connect to Case1 when she edits the case-related datasets, adding data relevant to that case. Similarly, Frank will connect to Case2 and edit the case-related datasets, adding the data relevant to his case. All the other employees can connect to versions Case1 and Case2, but they cannot make any edits to the datasets from these versions, because the versions are set to Protected.
When Gertrude finishes her edits for Case1, she reconciles and posts her changes to Cases. Since Frank may also be editing the same datasets and reconciling and posting changes to Cases, there is a potential for conflicts at this point. Once these have been reviewed and resolved, Gertrude can post to Cases.
See the following topics for details on reconciling, reviewing, and posting:
- Saving edits to a version
- Reconciling a version
- Reviewing conflicts
- Interactive conflict resolution
- Posting changes
Angus reviews the changes in the Cases version. If they are acceptable, the geodatabase administrator will post the changes in Cases to the DEFAULT version.
Since work on Case1 is complete and the data has been reviewed and posted to DEFAULT, Gertrude can now delete Case1.
That leaves the following versions:
Frank will follow the same procedure with edits done through Case2 (reconcile, resolve conflicts, post to Cases), Angus will check his work in the Cases version, the geodatabase administrator will post the approved changes to DEFAULT, and Frank can delete version Case2.
After the individual case versions have been deleted, the geodatabase administrator should compress the geodatabase, then update database statistics. See Compressing an enterprise geodatabase for information on compressing a versioned geodatabase and Updating statistics on a geodatabase using the Analyze Datasets tool for information on keeping the statistics used by the database up-to-date.