Execute Reviewer Batch Job (Data Reviewer)

Available with Data Reviewer license.

Summary

Runs a Reviewer batch job on a workspace and writes the results to a Reviewer session. A Reviewer batch job contains groups of Reviewer checks. Checks validate data based on conditions, rules, and spatial relationships. Checks also specify sets of features or rows to validate and their source workspace. A Reviewer session stores information about validation tasks performed by Reviewer checks. This information is stored in a table and a dataset in the Reviewer workspace.

Usage

  • If the specified workspace is not a Reviewer workspace, use the Enable Data Reviewer tool to create one.

    Caution:

    This tool does not support features referenced in a Batch Job or Reviewer workspaces that contain 64-bit object IDs.

  • You can create a session with the Create Reviewer Session tool. Create Reviewer Session generates a session ID and name as an output parameter.

  • Reviewer batch jobs are created using tools provided in ArcMap by the ArcGIS Data Reviewer extension.

  • The Connectivity Rules, Metadata, and Custom check types are not supported and will be skipped during batch job operation.

  • The Reviewer batch job results are written to the specified session (provided in the Session parameter) in the Reviewer Workspace parameter value.

  • If a workspace is not defined in the Production Workspace parameter, the batch job runs on the workspace provided in the Batch Job File parameter.

  • If the production workspace is an enterprise geodatabase, you can validate data in a particular version using the Production Workspace Version parameter.

  • The Analysis Area parameter value contains either merged polygon features or extent values to create the processing area. Features that intersect this area will be validated by the Reviewer batch job. Features outside this area will not be validated.

  • The Changed Features Only parameter is active when the Production Workspace parameter value is a versioned (traditional) enterprise geodatabase. This setting limits validation to those features that have changed from the parent to child version and only applies to a check's primary feature class (Feature Class 1). All features in secondary data resources (Feature Class 2+) are used in the validation. Changes between versions include the following:

    • Features inserted in the child version but not in the parent
    • Features changed in the child version but not in the parent
    • Features changed in both child and parent versions
    • Features changed in the child version and deleted from the parent
  • A summary of the batch job is displayed in the Results window.

  • The output parameter is a table view of one row of the REVBATCHRUNTABLE table in the Reviewer Workspace parameter value. The row represents the record created when the batch job is run. The following table describes possible values in the RUNCONTEXT and STATUS fields in the REVBATCHRUNTABLE table.

    FieldDescription

    RUNCONTEXT

    The code that identifies the context in which the batch job was run:

    • 0—Desktop
    • 1—Engine
    • 2—Server
    • 3—Pro

    STATUS

    Batch job status code:

    • 0—Successful

      The batch job was successful.

    • 1—Successful with Errors

      The batch job was successful with errors. Processing errors are usually associated with either a check failing validation (data source not available, misconfigured check) or a feature being skipped for validation due to issues with the feature.

    • 2—Successful with Warnings

      The batch job was successful with warnings. Processing warnings are usually associated with the inability to build error geometries for results and other issues that are not significant to a successful batch job.

    • 3—Successful with Errors and Warnings

      The batch job was successful with both warnings and errors as outlined above.

    • 4—Failed

      The batch job did not complete successfully. A failed batch job occurs when all checks in the batch job failed validation due to either data access or configuration issues.

  • A log file with the results can be found in the %localappdata%\Esri\DataReviewer directory. Information in the log file includes checks that were run on a feature class, the number of features validated, and the number of results reported. Server processing errors and warnings can be examined by reviewing the server Jobs directory for the geoprocessing batch job service.

Parameters

LabelExplanationData Type
Reviewer Workspace

The workspace where the Reviewer batch job results will be written.

Workspace
Session

The identifier and name for a Reviewer session. The session must exist in the Reviewer workspace.

String
Batch Job File

The path to the Reviewer batch job file that will be run.

File
Production Workspace
(Optional)

The enterprise or file geodatabase that contains the features to be validated.

Workspace
Analysis Area
(Optional)

Polygon features or extent values that define the area that will be used to build a validation processing area.

Extent; Feature Layer
Changed Features Only
(Optional)

Specifies the type of features, changed or unchanged, that will be validated when the production workspace references data in an enterprise geodatabase.

  • Checked—Only features that changed from the parent to the child version will be validated.
  • Unchecked—All features in the data referenced by the batch job will be validated. This is the default.
Boolean
Production Workspace Version
(Optional)

The version of the production workspace that will be validated by the batch job. This is only applicable when the production workspace is an enterprise geodatabase.

String

Derived Output

LabelExplanationData Type
BATCHRUNTABLE_View

Table view containing summary information about the tool operation.

Table View

arcpy.Reviewer.ExecuteReviewerBatchJob(reviewer_workspace, session, batch_job_file, {production_workspace}, {analysis_area}, {changed_features}, {production_workspaceversion})
NameExplanationData Type
reviewer_workspace

The workspace where the Reviewer batch job results will be written.

Workspace
session

The identifier and name for a Reviewer session. The session must exist in the Reviewer workspace.

String
batch_job_file

The path to the Reviewer batch job file that will be run.

File
production_workspace
(Optional)

The enterprise or file geodatabase that contains the features to be validated.

Workspace
analysis_area
(Optional)

Polygon features or an arcpy.Extent object that define the area that will be used to build a validation processing area.

Extent; Feature Layer
changed_features
(Optional)

Specifies the type of features, changed or unchanged, that will be validated when the production workspace references data in an enterprise geodatabase.

  • CHANGED_FEATURESOnly features that changed from the parent to the child version will be validated.
  • ALL_FEATURESAll features in the data referenced by the batch job will be validated. This is the default.
Boolean
production_workspaceversion
(Optional)

The version of the production workspace that will be validated by the batch job. This is only applicable when the production workspace is an enterprise geodatabase.

String

Derived Output

NameExplanationData Type
tableView

Table view containing summary information about the tool operation.

Table View

Code sample

ExecuteReviewerBatchJob example (Python window)

The following Python window script demonstrates how to use the ExecuteReviewerBatchJob function.

# Path to the tutorial reviewer workspace
rev_workspace = "C:/gisdata/TutorialsSamples/Tutorials/Reviewer/Reviewer.sde"

# path to the tutorial batch job file
batch_job_file = "C:/gisdata/TutorialsSamples/Tutorials/Reviewer/BatchJobs/RevTutorial.rbj"

# session - must exist before executing this script.
session = "Session 2 : Session 2"

# path to the tutorial production workspace - this contains the data to validate
prod_workspace = "C:/gisdata/TutorialsSamples/Tutorials/Reviewer/California.sde"

# execute the batch job
res = arcpy.ExecuteReviewerBatchJob_Reviewer(rev_workspace,session,batch_job_file,prod_workspace)

# get the output table view from the result object
tbl = res.getOutput(0)

print(tbl.name)  # prints REVBATCHRUNTABLE
ExecuteReviewerBatchJob example 2 (stand-alone script)

This stand-alone script demonstrates how to use the ExecuteReviewerBatchJob function.

# Name: ExecuteReviewerBatchJob_Example.py
# Description: Executes a reviewer batch job

# Import arcpy module
import arcpy

# reviewer workspace
reviewer_db = "c:/gisdata/reviewer.sde"

# reviewer batch job file - corresponds to Finding geometries with spatial relationships doc
SoCal_GeoOnGeoChecks_rbj = "C:/gisdata/SoCal_GeoOnGeoChecks.rbj"

# session - must exist before executing this script.
session =  "Session 2 : Session 2"

# production database - contains data to validate
production_db = "C:/gisdata/Edit_Sample.sde"

# aoi feature layer
arcpy.MakeFeatureLayer_management(production_db + "/Features/PolbndA",'PolbndA',"objectid = 145")

# Execute Reviewer Batch Job function
res = arcpy.ExecuteReviewerBatchJob_Reviewer(reviewer_db, session, SoCal_GeoOnGeoChecks_rbj, production_db,'PolbndA')

# get the output table
tbl = res.getOutput(0)
print(tbl.name)

# query the table
for row in arcpy.da.SearchCursor(tbl,("RECORDID","BATCHJOBID","BATCHJOBFILE")):
    print(str(row[0]))
    print(row[1])
    print(row[2])
ExecuteReviewerBatchJob example 3 (stand-alone script)

This stand-alone script demonstrates how to use the ExecuteReviewerBatchJob function.

# Name: ExecuteReviewerBatchJob_Example.py
# Description: Executes a reviewer batch job
# Requirements: Data Reviewer extension

# Import arcpy module
import arcpy

# Check out a Data Reviewer extension license
arcpy.CheckOutExtension("datareviewer")

arcpy.env.overwriteOutput="true"

# reviewer workspace
reviewer_db = "c:/gisdata/reviewer.sde"

# reviewer batch job file - corresponds to Finding geometries with spatial relationships doc
SoCal_GeoOnGeoChecks_rbj = "C:/gisdata/SoCal_GeoOnGeoChecks.rbj"

# session - must exist before executing this script.
session =  "Session 2 : Session 2"

# production database - contains data to validate
production_db = "C:/gisdata/Edit_Sample.sde"

# aoi extent

Extent_Analysis_Area = arcpy.Extent(-118.02, 33.65, 117.71, 33.94)

# Define spatial reference of analysis area extent using factory code
# GCS_WGS_1984, WKID: 4326
# If spatial reference is not defined the following warning message will appear:
# Spatial reference of the analysis area extent is not defined. Spatial reference is required to ensure that the analysis area extent is compatible with the data sources being validated.
spatial_reference =  arcpy.SpatialReference()
spatial_reference.factoryCode = 4326
spatial_reference.create()
Extent_Analysis_Area.spatialReference = spatial_reference

# Execute Reviewer Batch Job function
res = arcpy.ExecuteReviewerBatchJob_Reviewer(reviewer_db, session, SoCal_GeoOnGeoChecks_rbj, production_db, Extent_Analysis_Area, "ALL_FEATURES", "")

# get the output table
tbl = res.getOutput(0)
print tbl.name

# query the table
for row in arcpy.da.SearchCursor(tbl,("RECORDID","BATCHJOBID","BATCHJOBFILE")):
    print str(row[0])
    print row[1]
    print row[2]

# Check in the Data Reviewer extension
arcpy.CheckInExtension("datareviewer")

Licensing information

  • Basic: Requires Data Reviewer
  • Standard: Requires Data Reviewer
  • Advanced: Requires Data Reviewer

Related topics