Hi, I'm using ArcGIS API for Python for querying a table using the following parameters:
query = maintenance.query(where='1=1', out_fields='structureid,last_maintenace', return_geometry=False, group_by_fields_for_statistics='structureid', out_statistics='[{"statisticType": "max","onStatisticField": "maintanancedate", "outStatisticFieldName": "last_maintenace"}]')
I'm always getting a error when trying to use the out_statistics parameter and there is no documentation for the syntax for this parameters. I'm assuming that it's the same syntax as the REST API where it work.
Help please!
Here is the complete code:
from arcgis import *
gis = GIS("http://...", "user", "password")
item = gis.content.get('123...')
maintenance = item.tables[0]
deployment = item.layers[0]
query = maintenance.query(where='1=1', out_fields='structureid,last_maintenace', return_geometry=False, group_by_fields_for_statistics='structureid', out_statistics='[{"statisticType": "max","onStatisticField": "maintanancedate", "outStatisticFieldName": "last_maintenace"}]')
Hi mjimenez@prvectorcontrol.org_prvectorcontrol -
The syntax for the `out_statistics` parameter is the same as the REST API. What data type is the `structureid` field? What's the error message you receive?
Hi John Yaist , thanks for replying.
The structured:
The error:
KeyError Traceback (most recent call last)<ipython-input-213-f44a68d57969> in <module>() 2 out_fields='structureid', 3 group_by_fields_for_statistics='structureid',----> 4 out_statistics=[{"statisticType": "max","onStatisticField": "maintanancedate","outStatisticFieldName": "last_maintenace"} 5 ]) 6 query.df ~/anaconda3/lib/python3.6/site-packages/arcgis/features/layer.py in query(self, where, out_fields, time_filter, geometry_filter, return_geometry, return_count_only, return_ids_only, return_distinct_values, return_extent_only, group_by_fields_for_statistics, statistic_filter, result_offset, result_record_count, object_ids, distance, units, max_allowable_offset, out_sr, geometry_precision, gdb_version, order_by_fields, out_statistics, return_z, return_m, multipatch_option, quanitization_parameters, return_centroid, return_all_records, **kwargs) 453 454 params['returnCountOnly'] = True--> 455 record_count = self._query(url, params) 456 if 'maxRecordCount' in self.properties: 457 max_records = self.properties['maxRecordCount']~/anaconda3/lib/python3.6/site-packages/arcgis/features/layer.py in _query(self, url, params) 1009 1010 if params['returnCountOnly']:-> 1011 return result['count'] 1012 elif params['returnIdsOnly']: 1013 return result KeyError: 'count'
Any thoughts? Thanks in advance!