O V E R V I E W

Geoprocessing Services

Geoprocessing is a fundamental part of enterprise GIS operations.  Geoprocessing provides the data analysis, data management, and data conversion tools necessary for all GIS users.

 

A geoprocessing service represents a collection of published tools that perform tasks necessary for manipulating and analyzing geographic information across a wide range of disciplines.  Each tool performs one or more operations, such as projecting a dataset from one map projection to another, adding fields to a table, or creating buffer zones around features.  A tool accepts inputs (such as feature sets, tables, property values), executes operations against the input data, and generates output for presentation in a map or further processing by the client.  Tools can be executed synchronously or asynchronously.

 

Use a geoprocessing service to:

 

Many uses of GIS involve the repetition of work, and this creates the need for a framework to provide automation of workflows. Geoprocessing services answer this need by providing a mechanism to combine a series of operations in a sequence using a model and exposing the model as a tool.

Inputs and outputs to geoprocessing services consist of strong types deriving from GPValue.  Here is a list of valid types:
 

GPValue Type

Description

GPBoolean

Stores boolean values.

 

GPDataFile

Stores data file contents.  

 

GPDate

Stores date values.

 

GPDouble

Stores double values.

 

GPFeatureRecordSetLayer

Stores record sets that contain features.

 

GPLinearUnit

Stores linear unit definitions.

 

GPLong

Stores long values.

 

GPRasterData

Stores raster data contents of a defined format.

 

GPRasterDataLayer

Stores raster data contents to display in a map.  

 

GPRecordSet

 

Stores tabular data.  

 

GPString

Stores string values.

 


These types assist you when in just about every aspect to server tool usage via a geoprocessing service.  They are used to describe inputs to a server tool, such as the type of parameters returned from a call to GetToolInfo() or GetToolInfos().   When initiating request to a server tool for processing via Execute() or SubmitJob() the array of input values must consist of these types.   Results from a server tool (e.g. GetJobResult()) are defined using these types.        

WSDL syntax

 

http://<Web Server Hostname>/<ArcGIS Instance>/services/<ServiceName>/GPServer?wsdl
 

Methods
 

Proxy method

Description

CancelJob

Cancel a pending job on the server.

 

Execute

Execute a synchronous geoprocessing tool.

 

GetExecutionType

Return the type of execution: synchronous or asynchronous.

 

GetJobEnvironmentValues

Returns the execution environment values for a geoprocessing job.

 

GetJobInputValues

Returns the input values for a job.

 

GetJobMessages

Return verbose messages representing the current state of a submitted geoprocessing job.

 

GetJobResult

Return the results of a geoprocessing job that has completed successfully.

 

GetJobResultMapExtent

Returns the map extent for the results for a job.

 

GetJobResultOptions

Returns the result options for a job.

 

GetJobStatus

Return the current status of a geoprocessing job.

 

GetJobToolName

Returns the name of the tool used for a job.

 

GetResultMapServerName

Returns the name of the map service that may be used to render results.

 

GetResultWorkspace

Return the location of results generated by a geoprocessing job.

 

GetTaskInfos

Return information about tasks (or tools) in a geoprocessing service.

 

GetTaskNames

Return a list of task (or tool) names in a geoprocessing service.

 

GetToolInfo

Return information on a specific tool (or task) in a geoprocessing service.

 

GetToolInfos

Import the data changes for a replica.

 

GetToolNames

Return information about tools (or tasks) in a geoprocessing service.

 

SubmitJob

Execute an asynchronous geoprocessing tool.