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.

Steps:
  1. Start ArcCatalog.
  2. In the Catalog tree, right-click a feature dataset, feature class, or table in the production database.
  3. Click Register As Versioned on the context menu.

    This opens the Register As Versioned dialog box.

  4. Optional: If the Register the selected objects with the option to move edits to base is available and you want edits saved to the DEFAULT version—whether edited directly or merged in from other versions—to be saved in the business tables, check Register the selected objects with the option to move edits to base.

    See Deciding how to register data for more information on the move edits to base option.

  5. Click 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.

Steps:
  1. In the Catalog tree, browse to the geodatabase on which you want to enable archiving.
  2. 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 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

  • 0—Other
  • 1—Holding Pattern Entry Diagram
  • 2—Dynamic text element
  • 3—Graphic table element
  • 4—Profile View element

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.

Steps:
  1. Start ArcMap.
  2. On the main menu, click View > Layout View.
  3. Select a graphic table element on the chart using the Select Elements tool Select Elements on the Tools toolbar.
  4. Right-click the selected element and click Properties.

    The <table name> Table Properties dialog box appears.

  5. If necessary, click the Data Source tab.
  6. Select the table listed in the Data Source list.
  7. Click Field Mapping.

    The Field Mapping dialog box appears.

    Field Mapping dialog box
  8. Click the Has value assigned from expression option.
  9. Click Expression.

    The Expression Builder dialog box appears.

    Expression Builder dialog box
  10. Check the box next to Advanced Mode.
  11. Remove any text in the Expression area.
  12. 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
    NoteNote:

    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.

  13. Ensure that the script is correct by clicking Verify.
  14. Click OK to close the Expression Builder dialog box.

    The Field Mapping dialog box appears.

  15. Click OK to close the Field Mapping dialog box.

    The <table name>Table Properties dialog box appears.

  16. 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.

Steps:
  1. Select a dynamic text element in the chart using the Select Elements tool Select Elements on the Tools toolbar.
  2. Right-click the selected element and click Properties.

    The property dialog box appears for the selected element.

  3. Click the Dynamic Text tab and click the dynamic text elements hyperlink.

    The Feature Class Dynamic Text Properties dialog box appears.

    Feature Class Dynamic Text Properties dialog box
  4. In the Selection area, click the Feature Class Browse button Browse.
  5. Browse to and choose the feature class.
  6. Click Query Builder.

    The Select Features Using a Query dialog box appears.

    Select Features Using a Query dialog box
  7. Define the query and click OK.
  8. Click Edit Script on the Feature Class Dynamic Text Properties dialog box.

    The Expression Parser dialog box appears.

    Expression Parser dialog box
  9. 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
    NoteNote:

    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.

  10. Ensure that the script is correct by clicking Verify.
  11. Click OK to close the Expression Parser dialog box.

    The Feature Class Dynamic Text Properties dialog box appears.

  12. Click OK.

    The Dynamic Text Properties dialog box appears.

  13. 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.

Steps:
  1. On the main menu, click Customize > Toolbars > Data Reviewer.
  2. Click the Reviewer Session Manager button Reviewer Session Manager on the Data Reviewer toolbar.

    The Reviewer Session Manager dialog box appears.

    Reviewer Session Manager
  3. Click Browse in the Reviewer Workspace area.

    The Reviewer Workspace dialog box appears.

  4. Navigate to the geodatabase in which the Reviewer dataset is going to be stored.
  5. Click Add.
  6. Click New to start a new Reviewer session.

    The Reviewer Workspace Properties dialog box appears.

    Reviewer Workspace Properties dialog box
  7. 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.
      NoteNote:

      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.
      NoteNote:

      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.

    NoteNote:

    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.

  8. If necessary, choose the Use configuration keyword option in the Select Configuration Keyword area to choose a different configuration keyword for the database.
  9. NoteNote:

    Perform this step if working with ArcSDE geodatabase licensed for ArcGIS Server Enterprise.

  10. 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.

  11. NoteNote:

    Perform this step if working with ArcSDE geodatabase licensed for ArcGIS Server Enterprise.

  12. Click OK.

    The ID and Name text boxes are automatically populated in the Session area.

  13. If necessary, type a custom name for the current Reviewer session in the Name text box.

    By default, the name matches the ID.

  14. 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.

  15. NoteNote:

    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.

  16. Click Start Session.

    The button name changes to End Session.

  17. Click Close.

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.

Steps:
  1. Click the ArcToolbox Window button ArcToolbox Window on the Standard toolbar.

    The ArcToolbox window appears.

  2. Expand the tree view next to the Aeronautical Tools > Change Detection.
  3. Double-click the Add Reviewer Fields tool.
    Add Reviewer Fields tool
  4. Click OK to execute the geoprocessing tool.
NoteNote:

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.

Steps:
  1. Click the Change Reporter button Change Reporter on the Aeronautical Data Management toolbar.

    The Change Reporter dialog box appears.

    Change Reporter dialog box

    NoteNote:

    The Change Reporter tool is also available as a geoprocessing tool in the Aeronautical Tools toolbox.

  2. Click the ellipsis button (...) next to the Select Geodatabase text box to choose a geodatabase.
    NoteNote:

    The Change Reporter tool can only be used to report changes on an ArcSDE software-enabled geodatabase.

  3. 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.
    NoteNote:

    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.

  4. 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.
  5. Choose the type of changes to be reported by checking the Adds, Modifications, and/or Deletes check boxes in the Change Types area.
  6. Check the check boxes next to the feature classes and tables to be interrogated in the Feature Class(es) To Process list.

    Select feature classes and tables

  7. Click OK to start processing.

    A message appears and notifies you when processing is complete.

  8. 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 Reviewer Table 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.

TipTip:

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.

Steps:
  1. Click the ArcToolbox Window button ArcToolbox Window on the Standard toolbar.

    The ArcToolbox window appears.

  2. Expand the tree view next to the Aeronautical Tools > Change Detection.
  3. Double-click the Detect Layout Changes tool.
  4. Specify the charts for which you want to detect changes by checking the check boxes next to the chart names.
    Detect Layout Changes dialog box
  5. 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 Reviewer Table 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.


7/31/2012