How to populate or update an existing model with GIS-IDs

  Applies To 
  Product(s): WaterGEMS, SewerGEMS, CivilStorm, StormCAD, PondPack, SewerCAD, HAMMER, WaterCAD
  Version(s): CONNECT Edition, V8i
  Area:  Layout and Data Input
  Original Author: Jesse Dringoli, Mark Pachlhofer & Scott Kampa, Technical Support Group


How do I populate an existing model with GIS-IDs?


Two options are presented below, for populating an existing model with GIS-IDs. The GIS-ID feature helps keep your model in sync with your GIS. See more on GIS-IDs in this article.

Use existing labels as the GIS-ID

If your GIS unique identifiers are already being used as the "label' field for your elements (for example a pipe (model) with label "12345" has a unique ID (GIS) of "12345"), you can populate the GIS-ID field with the existing labels using this general process:

  1. Select hydraulic model elements that you want to have GIS-IDs (for example you may want to exclude "model-only" elements - to prevent them from being modified by GIS synchronizations)  Double click the selection set to select those elements.
  2. Open the GIS-ID Control Center (under Tools > Tools), filter > open on selection (filter it to only show the elements that can be "touched")
  3. Copy/paste from Label field to GIS-ID field. Right click the label column, choose "select column", click the Copy button, select the first cell in the GIS-IDs column, click the Paste button. Ensure that the data pasted correctly (and lines up with the label column).

Use new labeling system from the GIS

If the unique ID system is only present in your GIS, you can use the new spatial join feature (available starting with the CONNECT Edition Update 1 release of water and storm/sewer products.) This option in ModelBuilder allows you to build and update a model based on spatial proximity of the elements. This workflow will assume that your source file has the hydraulic model elements in them, as well as their GIS-IDs.

If so, go through ModelBuilder as you normally would until you get to the section called Specify Additional Options. Here you will have a choice between using a Key Field to add to or update a model or mapping based on the closest matching geometries. Choose the latter option.

After clicking Next, you will be in the Field Mapping section. Since you will be using the closest matching geometries, you will not by using the Key Field. Instead, ModelBuilder will look for geometries in the model that match that found in the source file. To add the GIS-ID in the source file to your hydraulic model, map the Label and GIS-ID columns in the source file to the respective property in the hydraulic model.

If the element is already in the model, it should match up with the label that you mapped to the hydraulic model. By mapping the GIS-ID, it will also update the element with the proper GIS-ID. If the element is not already in the model, it will be added to it.

If you have an older version of the software (the first CONNECT Edition release or a V8i release, you can use the following process to export the labels, do a spatial join, then bring them back in to populate the model. After doing this, you'll be able to synchronize changes on either the model or the GIS without having to change or maintain either labeling system. 

 Note: the screenshots in the below steps may look slightly different in your version, though the general process is the same. You may want to ensure that you have the latest version of the software installed.

1) You will need to first generate a file (shapefile, spreadsheet, etc) relating each WaterGEMS/SewerGEMS element with the corresponding GIS-ID. For example, you could export the WaterGEMS/SewerGEMS elements to shapefiles by creating a new flextable with only the label field, then click the export button in the top left corner.

2) Using your GIS software (such as ArcMap), perform a spatial join and create a table joining the WaterGEMS/SewerGEMS label to the GIS's ID field. If you need assistance with this, please contact your GIS specialist. This table can then be used with Modelbuilder per the below steps, to populate the GIS-ID fields in the model. This will need to be done with each element type (pipe, junction, reservoir, etc), using it's corresponding "GIS-IDs" table type (for example "Pipe, GIS-IDs" for pipes) in Modelbuilder.

3) Start Modelbuilder, choose Excel as the source type and select the spreadsheet. Only check the worksheet containing the data.

4) Click next. No need to create nodes since we’re updating:


5) Click next. We only need to update existing objects:

6) Click next. Key field is label, since we’re just populating the GIS-IDs:

7) Click next. This step is important. The “table type” needs to be set to “Pipe, GIS-IDs”, since the GIS-ID field is a collection. The key field is the field in the spreadsheet with the WaterGEMS labels. Map GIS-ID at the bottom to the GIS-ID field in your spreadsheet.


8) Click next, then finish.

The model will now be populated with GIS-IDs.

Starting with CONNECT Edition Update 1 of the water and storm-sewer products, you can view the GIS-IDs in the GIS-ID Control Center. All elements in the model are available in the table. The GIS-ID column is a comma delimited field, meaning that multiple GIS-IDs can be entered and viewed here, separated with a comma. ModelBuilder can be used to import the data, which will then appear in the GIS-ID Control Center. If you edit the GIS-ID collection field in the element properties or element FlexTable, the data you enter there will also appear in the GIS-ID Control Center. Go to Tools > GIS-ID Center > GIS-ID Control Center.

If an element is deleted from the model and it had a GIS-ID associated with it, you are still able to track these elements and their GIS-IDs. A separate GIS-ID Control Center for Deleted Elements has also been included. This will allow you to track the GIS-IDs used in a given model, even for elements no longer present.

Updating a model with GIS-ID's

The following are the steps to take to update existing GIS-IDs. For example adding prefixes or changing the GIS-ID completely.

See also: Updating GIS-IDs with a new ID system such as GlobalID

1) Create an excel spread sheet with a column titled "Label" and another column titled "GIS-ID" 

2) With your model file open go to Tools > Modelbuilder and create a new Modelbuilder run by clicking the icon that looks like a white sheet of paper

3) For the datasource type on step one of Modelbuilder select "Excel 2013/2010/2007 (12.0)" and choose the spread sheet location you created in step 1 above

4) Click next until you get to step 5 of modlebuilder, which is the field mapping step. Set the table type to " <element name>, GIS-IDs"  and the 'Key Fields' to "Label". For example, if you were exporting your Pipe GIS-IDs your table type would be "PIpe, GIS-IDs" and If you were doing it for junctions the table type would be "Junction, GIS-IDs". In the lower part of this dialog box match the GIS-ID field from your excel spreadsheet to the GIS-ID property. Please see the screen shot below for this setup.

5) Proceed to the last screen of Modelbuilder by hitting the "Next button" and for the question that asks "Do if you want to build a model now?" choose "No" and click the "Finish" button.

6) On the Modelbuilder manager window click the sync out button (see screen shot below) to export the GIS-IDs from your model to your spreadsheet. 

7) Open the spreadsheet and adjust the GIS-ID's appropriately then save and close it. 

8)  Open the modelbuilder window and click the "Build model" button

See Also

Building and updating a model using ModelBuilder

Expected workflows when keeping a model in sync with GIS

Updating GIS-IDs with a new ID system such as GlobalID