Workflow: Detecting chart changes
The Detect Layout Changes tool compares the output of the Change Reporter tool to the element catalog, which is part of the production database. Each record generated by the Change Reporter tool includes the Global Feature ID of the feature or row associated with that record, which the Detect Layout Changes tool compares to the Global Feature ID in the element catalog. By examining the type of change that occurred and the Global Feature IDs, the Detect Layout Changes tool can find the changes to the data that may have affected elements registered in the element catalog. The features or rows in the element catalog that match the Change Reporter tool results are written to the Reviewer table. Each record in the Reviewer table contains the Global Feature ID of the chart affected, even if the data is not part of the specific map document, but affects an element on a chart.
Enabling versioning
Versioning must be enabled on the geodatabase on which the Change Reporter tool is run.
Versioning isolates your work across multiple edit sessions, allowing you to edit without locking features in the production version or immediately impacting other users.
- Start ArcCatalog.
- In the Catalog tree, right-click a feature dataset, feature class, or table in the production database.
-
Klicken Sie im Kontextmenü auf Als versioniert registrieren.
Das Dialogfeld Als versioniert registrieren wird geöffnet.
-
Optional: Falls die Option Ausgewählte Objekte mit der Option "Verschieben von Änderungen in Basistabellen" registrieren verfügbar ist und Sie in der Default-Version gespeicherte Änderungen in den Business-Tabellen speichern möchten, aktivieren Sie die Option Ausgewählte Objekte mit der Option "Verschieben von Änderungen in Basistabellen" registrieren. Dabei spielt es keine Rolle, ob die Änderungen direkt vorgenommen oder aus anderen Versionen zusammengeführt wurden.
Weitere Informationen zur Option zum Verschieben von Änderungen in die Basistabelle finden Sie unter Wie sollen die Daten registriert werden?.
- Klicken Sie auf OK.
Enabling archiving
After versioning is enabled on the geodatabase, archiving needs to be enabled so that the changes made to the data are preserved.
Geodatabase archiving allows you to analyze data as it changes over time. It helps preserve data changes and tracks the type of changes made. When the archived database is queried by the Change Reporter and Detect Layout Changes tools for different types of changes made to it over the time, the results can be viewed through the records written in the Reviewer table.
- In the Catalog tree, browse to the geodatabase on which you want to enable archiving.
- Select and right-click a feature dataset, feature classes, and/or tables and choose Archiving > Enable Archiving.
Registering elements in the element catalog
All elements evaluated by the Detect Layout Changes tool must be registered in the element catalog in the production database. Some elements, such as the holding pattern entry diagrams and profile views, are automatically registered when they are created. Graphic table elements and dynamic text elements require initial configuration to register them.
During chart initialization, a chart element that references data that is not part of the map document is registered in the production database with the information necessary to link that data to the chart. This information includes
- A unique element name that allows you to easily identify which element uses the data
- The Global Feature ID and field name of the record and which field the element references
- The MapID of the chart to which the element belongs
- The element type
A VBScript registration expression must be manually added to graphic table elements and dynamic text elements to flag the data used to populate those elements for processing by the Detect Layout Changes tool.
Within the VBScript expression, the following variables must be defined:
Variable name |
Description |
---|---|
gfid |
The value of the GFID of the feature the elements references. |
fieldName |
The name of the field on the feature class that contains the data. |
tableName |
The name of the table or feature class to which the feature belongs. |
elementName |
The name of the element being registered. This allows you to easily identify which element is being referenced in a Reviewer table record that has been generated by the Detect Layout Changes tool. |
elementType |
A code associated with the element type
|
Registering a graphic table element
The Graphic Table Element tool creates tables that are dynamically linked to a geodatabase as well as static tables. As information in the database is updated, the information in the table updates dynamically to reflect the changes in the data. Graphic table elements must be registered in the element catalog to report changes to the data displayed in the table using the Detect Layout Changes tool.
The first and last lines in the example script for registering the graphic table element indicate where the function begins and ends, respectively. The second through sixth lines indicate different variables that are parameters for the registration functions.
- Start ArcMap.Tipp:
If the ArcMap - Getting Started dialog box appears, you can open a new or existing map document. You can also check the Do not show this dialog box in the future check box and click Open.
- On the main menu, click View > Layout View.
- Select a graphic table element on the chart using the Select Elements tool on the Tools toolbar.
-
Right-click the selected element and click Properties.
The <table name> Table Properties dialog box appears.
- If necessary, click the Data Source tab.
- Select the table listed in the Data Source list.
-
Click Field Mapping.
The Field Mapping dialog box appears.
- Click the Has value assigned from expression option.
-
Click Expression.
The Expression Builder dialog box appears.
- Check the box next to Advanced Mode.
- Remove any text in the Expression area.
-
Type the following script in the text box in the Expression area.
This script registers each graphic table element and its data sources with a table in your geodatabase. This table is used by the Detect Layout Changes tool when it queries the Change Reporter output. This allows a much more specific scope of work when changes have been made to the geodatabase.
Function GetExpression() gfid = [GFID] fieldName = "Approach_Txt" tableName = [TABLE_NAME] elementName = "MinimaTable" elementType = 3 Set scriptUtilities = CreateObject( "ESRI.Production.Aeronautical.Engine.Utilities.ChangeDetectorScriptUtilities") scriptUtilities.AddEntryForCurrentChart gfid, fieldName, tableName, elementName, elementType GetExpression = [Approach_Txt] End Function
Hinweis:The expression parser for the Graphic Table Element tool is sensitive to formatting and extra white space when copying and pasting. If you copy and paste the example above directly, extra spaces can be added and may cause your expressions to be invalid. It is recommended that you manually type the lines to avoid any syntax issues in the expression parser. You also need to replace [GFID] and [TABLE_NAME] with the exact information that is relevant to your data.
- Ensure that the script is correct by clicking Verify.
-
Click OK to close the Expression Builder dialog box.
The Field Mapping dialog box appears.
-
Click OK to close the Field Mapping dialog box.
The <table name>Table Properties dialog box appears.
- Click OK.
Registering dynamic text
Dynamic text is a generic element that can be configured to automatically update text content on the page layout. Dynamic text is one of the elements you must register in the element catalog to report changes to the dynamic text on your chart using the Detect Layout Changes tool.
The steps below shows you how to register dynamic text with the element catalog.
- Select a dynamic text element in the chart using the Select Elements tool on the Tools toolbar.
-
Right-click the selected element and click Properties.
The property dialog box appears for the selected element.
-
Click the Dynamic Text tab and click the dynamic text elements hyperlink.
The Feature Class Dynamic Text Properties dialog box appears.
- In the Selection area, click the Feature Class Browse button .
- Browse to and choose the feature class.
-
Click Query Builder.
The Select Features Using a Query dialog box appears.
- Define the query and click OK.
-
Click Edit Script on the Feature Class Dynamic Text Properties dialog box.
The Expression Parser dialog box appears.
-
Type the following script in the text box in the Expression area.
The script registers each dynamic text element and its data source with a table in your geodatabase. This table is used by the Detect Layout Changes tool when it queries the Change Reporter output, the result of which is the element that has changed and the chart in which it is found. This allows a much more specific scope of work when changes have been made to the geodatabase.
Generate = [Name_Txt] & " (" & [Ident_Txt] & ")" gfid = [GFID] fieldNamea = "Name_Txt" fieldNameb = "Ident_Txt" tableName = " ASP_PD.DBO.ADHP" elementName = "IdentText" elementType = 2 Set scriptUtilities = CreateObject( "ESRI.Production.Aeronautical.Engine.Utilities.ChangeDetectorScriptUtilities") scriptUtilities.AddEntryForCurrentChart gfid, fieldNamea, tableName, elementName, elementType scriptUtilities.AddEntryForCurrentChart gfid, fieldNameb, tableName, elementName, elementType End Function
Hinweis:The expression parser for dynamic text is sensitive to formatting and extra white space when copying and pasting. If you copy and paste the example above directly, it may cause your expressions not to verify. It is recommended that you manually type the lines to avoid any syntax issues in the expression parser. Also, you will need to replace [GFID] with the exact information that is relevant to your data.
If your element uses data from multiple fields on the feature, you will need to add additional entries to the AddEntryForCurrentChart function for each additional field.
- Ensure that the script is correct by clicking Verify.
-
Click OK to close the Expression Parser dialog box.
The Feature Class Dynamic Text Properties dialog box appears.
-
Click OK.
The Dynamic Text Properties dialog box appears.
- Click OK.
Once you have applied the modified scripts to the elements that you want to register, add the PD_ElementCatalog table to the Table Of Contents window.
Starting a Reviewer session
In a Reviewer session, you have the ability to review your data, write records to the Reviewer table, and interact with records in the Reviewer table. Also, the Change Reporter tool is enabled only when a Reviewer session has been started. The results obtained by running the Change Reporter tool are written to the Reviewer table and are used by the Detect Layout Changes tool to compare it with the elements registered in the element catalog. The entries that match are written to the Reviewer table, which tells you the Global Feature ID of the chart affected.
Once all the elements are registered, you can start a Reviewer session. If you have not created a Reviewer session and run the Add Reviewer Fields or Change Reporter tools, you need to create a new Reviewer session, as outlined in the following steps, and proceed to Running Add Reviewer Fields and Running Change Reporter. If you have already run the Add Reviewer Fields and Change Reporter tools to generate the Detect Layout Changes input, use the Reviewer session you created for those tools and proceed to Running Detect Layout Changes.
- On the main menu, click Customize > Toolbars > Data Reviewer.
-
Click the Reviewer Session Manager button on the Data Reviewer toolbar.
The Reviewer Session Manager dialog box appears.
-
Click Browse in the Reviewer Workspace area.
The Reviewer Workspace dialog box appears.
- Navigate to the geodatabase in which the Reviewer dataset is going to be stored.
- Click Add.
-
Click New to start a new Reviewer session.
The Reviewer Workspace Properties dialog box appears.
-
Choose an option for the spatial reference.
- Use Default Spatial Reference (WGS-84)—Sets the Reviewer dataset's spatial reference to GCS_WGS_1984. This is the default spatial reference for ArcMap.Hinweis:
In most cases when using ESRI Aeronautical Solution, choosing the Use Default Spatial Reference (WGS-84) option is suggested.
- Use Active Data Frame Spatial Reference—The Reviewer dataset's spatial reference matches that of the active data frame.
- Browse To Spatial Reference—Sets the Reviewer dataset's spatial reference to one you choose.Hinweis:
If you choose Browse To Spatial Reference, the New Spatial Reference wizard appears so you can choose the spatial reference you want to use with the Reviewer dataset.
Hinweis:The spatial reference selected for the Reviewer dataset should match the spatial reference of the data you are validating. This allows the error geometry to be stored in the feature classes within the Reviewer dataset.
- Use Default Spatial Reference (WGS-84)—Sets the Reviewer dataset's spatial reference to GCS_WGS_1984. This is the default spatial reference for ArcMap.
- If necessary, choose the Use configuration keyword option in the Select Configuration Keyword area to choose a different configuration keyword for the database.
-
Click the Use configuration keyword drop-down arrow and choose a configuration keyword.
The keywords available in the list are dependent on what the database administrator has specified in the DBTUNE table as configuration keywords.
-
Click OK.
The ID and Name text boxes are automatically populated in the Session area.
-
If necessary, type a custom name for the current Reviewer session in the Name text box.
By default, the name matches the ID.
-
Click the Reviewer Dataset Version drop-down arrow and choose the geodatabase version to be used.
The geodatabase version you choose from the list is the one in which the Reviewer table records are going to be stored.
-
Click Start Session.
The button name changes to End Session.
- Click Close.
Perform this step if working with ArcSDE geodatabase licensed for ArcGIS Server Enterprise.
Perform this step if working with ArcSDE geodatabase licensed for ArcGIS Server Enterprise.
Perform this step if working with ArcSDE geodatabase licensed for ArcGIS Server Enterprise or an ArcSDE geodatabase for Microsoft SQL Server Express licensed for ArcGIS Server Workgroup.
Running Add Reviewer Fields
Before using the Change Reporter and Detect Layout Changes tools, additional fields must be added to the Reviewer table to store the output from the Detect Layout Changes. These fields are added using the Add Reviewer Fields geoprocessing tool located in the Aeronautical toolbox. This tool requires no inputs.
The Detect Layout Changes tool requires some additional information to be captured by the Change Reporter tool. To store this required information, three additional fields are added to your Reviewer table using the Add Reviewer Fields geoprocessing tool: Mapid_Txt, GFID, and SourceGFID_Id.
- Click the ArcToolbox Window button on the Standard toolbar.
The ArcToolbox window appears.
- Expand the tree view next to the Aeronautical Tools > Change Detection.
-
Double-click the Add Reviewer Fields tool.
- Click OK to execute the geoprocessing tool.
The Change Reporter tool does not require that these fields be added prior to execution. However, if they are not present, information needed by the Detect Layout Changes tool will not be populated, and the tool will not create any output.
Running Change Reporter
After the new Reviewer table fields are added, run the Change Reporter tool in the Aeronautical toolbox or from the command located on the Aeronautical Data Management toolbar. Running the Change Reporter tool automatically commits the changes made in the geodatabase or feature classes to the Reviewer table, which is used by Detect Layout Changes to compare to the elements registered in the element catalog.
The Change Reporter tool allows you to discover the changes made to individual feature classes or an entire geodatabase between specified dates.
-
Click the Change Reporter button on the Aeronautical Data Management toolbar.
The Change Reporter dialog box appears.
Hinweis:The Change Reporter tool is also available as a geoprocessing tool in the Aeronautical Tools toolbox.
-
Click the ellipsis button (...) next to the Select Geodatabase text box to choose a geodatabase.
Hinweis:
The Change Reporter tool can only be used to report changes on an ArcSDE software-enabled geodatabase.
-
You can change the beginning date and time by performing one of the following steps in the Beginning Date field:
- Select a date by clicking the drop-down arrow.
- Select a date/time field and press the UP and DOWN arrow keys on the keyboard.
- Type directly over the default date/time listed.
Hinweis:Be sure to not set a start date earlier than when archiving was enabled on the geodatabase. This will result in every feature in the database being marked as a change.
- You can change the End Date by performing one of the following steps:
- Select a date by clicking the drop-down arrow.
- Select a date/time field and press the UP and DOWN arrow keys on the keyboard.
- Type directly over the default date/time listed.
- Choose the type of changes to be reported by checking the Adds, Modifications, and/or Deletes check boxes in the Change Types area.
-
Check the check boxes next to the feature classes and tables to be interrogated in the Feature Class(es) To Process list.
-
Click OK to start processing.
A message appears and notifies you when processing is complete.
- Click OK.
Viewing the Change Reporter output in the Reviewer table
Once the Change Reporter tool is finished, open the Reviewer table by clicking the Reviewer Table button on the Data Reviewer toolbar to review the records.
The Reviewer table contains records that detail the changes that have occurred to the tables and feature classes you specified. Only the changes that occurred during the period of time you requested are reported. Below is an example of how the Reviewer table might look after the Change Reporter tool has finished running:
Running Detect Layout Changes
Once you have run the Change Reporter tool to find changes in the data, you can run the Detect Layout Changes tool to find changes that have affected the chart elements. Only elements that have been previously registered in the element catalog are evaluated by the Detect Layout Changes tool.
See Registering elements in the element catalog for steps to register graphic table elements and dynamic text.
The Detect Layout Changes tool is used in combination with the Change Reporter tool to define charts that may need maintenance as a result of edits that have occurred to the production database.
- Click the ArcToolbox Window button on the Standard toolbar.
The ArcToolbox window appears.
- Expand the tree view next to the Aeronautical Tools > Change Detection.
- Double-click the Detect Layout Changes tool.
-
Specify the charts for which you want to detect changes by checking the check boxes next to the chart names.
- Click OK.
Viewing the Detect Layout Changes output in the Reviewer table
Once the Detect Layout Changes tool is finished processing, open the Reviewer table by clicking the Reviewer Table button on the Data Reviewer toolbar to review the records.
The ORIGINCHECK column in the Reviewer table specifies which records are generated by the Change Reporter tool and which ones are created by the Detect Layout Changes tool. The MapID field is also populated for all records, which allows you to group records by MapID to get an overall picture of which changes affect which charts.
This workflow has guided you through detecting chart changes using the Reviewer table and the Change Reporter and Detect Layout Changes tools. This process involved enabling versioning and archiving on an ArcSDE geodatabase, registering elements in the element catalog, starting a Reviewer session, running the Add Reviewer Fields tool, running the Change Reporter tool, and running the Detect Layout Changes tool. You should now have a list of records in the Reviewer table that shows the chart elements that may need to be updated due to changes to the underlying data that those elements reference.