Skip To Content

Execute Reviewer Batch Job

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.

  • 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 in Data Reviewer for Desktop.

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

  • The Reviewer batch job results are written to the specified session (indicated by Session) in the Reviewer Workspace.

  • Production Workspace contains data to validate with Reviewer checks defined in Batch Job File. If this parameter points to an enterprise geodatabase, verify that the connection file (.sde) references the correct geodatabase version.

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

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

  • Analysis Area 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.

  • Changed Features Only is enabled when the Production Workspace references an enterprise geodatabase. This setting limits validation to those features that have changed from the parent to child version. Changes between versions include the following:

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

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

    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 execution status code:

    • 0—Successful
    • 1—Successful with errors
    • 2—Successful with warnings
    • 3—Successful with errors and warnings
    • 4—Failed

  • A log file with the results can be found in the $\<user name>\AppData\Local\ESRI\DataReviewer directory. Information in the log file includes which checks have been run on a feature class, the number of features validated, and the number of results reported.

Syntax

ExecuteReviewerBatchJob_Reviewer (reviewer_workspace, session, batch_job_file, {production_workspace}, {analysis_area}, {changed_features}, {production_workspaceversion})
ParameterExplanationData Type
reviewer_workspace

The workspace where the Reviewer batch job results are 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 to be executed.

File
production_workspace
(Optional)

The production database on which you want to run the Reviewer batch job. If this parameter points to an enterprise geodatabase, verify that the connection file (.sde) references the correct geodatabase version.

Workspace
analysis_area
(Optional)

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

Extent; Feature Layer
changed_features
(Optional)

Indicates the type of features, changed or unchanged, to validate when the production workspace references data in an enterprise geodatabase.

  • CHANGED_FEATURESValidates only features that changed from the parent to the child version.
  • ALL_FEATURESValidates all features in the data referenced by the batch job. This is the default.
Boolean
production_workspaceversion
(Optional)

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

String

Code sample

ExecuteReviewerBatchJob example (Python window)

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

# 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 tool.

# 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 tool.

# 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

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

Related topics