- URL:
- https://<root>/<serviceName>/FeatureServer/<layerId>/calculate
- Methods:
GET- Required Capability:
- Update
- Version Introduced:
- 10.4
Description
The calculate operation is performed on a feature service layer resource. It updates the values of one or more fields in an existing feature service layer based on SQL expressions or scalar values.
A layer is capable of supporting the calculate operation if the supports property is true . If the property is false , or not present, the layer is not capable of supporting this operation. When the property is true , a client can use the calculate operation as long as the Update capability is set on the feature service, or if the user is logged in as the service owner, view owner, or organization administrator.
If supports is true and i is also true , the gdb parameter is supported. If supports is true and i is also true , the session and return parameters are supported.
Neither the Shape field nor system fields can be updated using the calculate operation. System fields include Object and Global .
See Calculate a field for more information on supported expressions.
Request parameters
| Parameter | Details |
|---|---|
(Optional) | A where clause can be used to limit the updated records. Any legal SQL where clause operating on the fields in the layer is allowed. If this parameter is not included in the request, the operation will apply to all records. The You can set the Examples |
| The array of field/value info objects that contain the field or fields to update and their scalar values or SQL expression. For more information on how to build expressions, see Calculate a field. If you are updating records in a date type field, be sure to issue the new date or time value in UTC. This is the case even if you have the Syntax Examples |
| The SQL format for the The Values: |
| The geodatabase version to apply the edits. This parameter applies only if the Syntax Example |
(Optional) | Set by a client during long transaction editing on a branch version. The Syntax |
(Optional) | Specifies whether the response will report the time edits were applied. If Values: |
| Indicates whether to process the calculate operation in synchronous or asynchronous mode. This parameter can only be set to If possible, it's recommended that you set the Values: Example |
|
The response format. The default response format is Values: |
JSON Response syntax
When async is false :
{
"success": <true|false>,
"updatedFeatureCount": <count>,
"editMoment": <epochMilliseconds>
}When async is true :
{
"statusUrl": "<statusURL>"
}JSON Response examples
When async is false :
{
"success": true,
"updatedFeatureCount": 51
}When async is false , data is branch versioned, and return is true :
{
"success":true,
"updatedFeatureCount":51,
"editMoment": 1457994488000
}When async is true :
{
"status": "Completed",
"submissionTime": 1572816329000,
"lastUpdatedTime": 1572816344000,
"recordCount": 3140
}