Solved! Go to Solution.
//buffer code that accepts the params for buffering and returns the dojo deferred object bufferGeometry: function (inGeometryArray, distanceArray, inSpatialRef, outSpatialRef, geomServiceURL) { var geomService = new esri.tasks.GeometryService(geomServiceURL); var bufferParams = new esri.tasks.BufferParameters(); bufferParams.geometries = inGeometryArray; bufferParams.bufferSpatialReference = inSpatialRef; bufferParams.outSpatialReference = outSpatialRef; bufferParams.distances = distanceArray; //units in feet bufferParams.unit = esri.tasks.GeometryService.UNIT_METER; var deferred = geomService.buffer(bufferParams); return deferred; } //js code that is used to run the buffer and add the query task var deferred = bufferGeometry([pointGeom], [50], pointGeom.spatialReference, map.spatialReference); deferred.then(function (results) { var query = new esri.tasks.Query(); query.geometry = results[0]; //or use one of the other constants to fine tune this query.spatialRelationship = esri.tasks.Query.SPATIAL_REL_WITHIN; query.returnGeometry = true; query.outFields = ["CITY_NAME"]; var queryTask = new esri.tasks.QueryTask("http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer/0"); //exectute the query and call the queryComplete function/callback queryTask.execute(query, queryComplete); }, function (error) { alert("Error during buffer Geom: " + error.message); }); //another function to process your query results function queryComplete(featureSet) { var features = featureSet.features; //loop through your featureset and do something here! }
//buffer code that accepts the params for buffering and returns the dojo deferred object bufferGeometry: function (inGeometryArray, distanceArray, inSpatialRef, outSpatialRef, geomServiceURL) { var geomService = new esri.tasks.GeometryService(geomServiceURL); var bufferParams = new esri.tasks.BufferParameters(); bufferParams.geometries = inGeometryArray; bufferParams.bufferSpatialReference = inSpatialRef; bufferParams.outSpatialReference = outSpatialRef; bufferParams.distances = distanceArray; //units in feet bufferParams.unit = esri.tasks.GeometryService.UNIT_METER; var deferred = geomService.buffer(bufferParams); return deferred; } //js code that is used to run the buffer and add the query task var deferred = bufferGeometry([pointGeom], [50], pointGeom.spatialReference, map.spatialReference); deferred.then(function (results) { var query = new esri.tasks.Query(); query.geometry = results[0]; //or use one of the other constants to fine tune this query.spatialRelationship = esri.tasks.Query.SPATIAL_REL_WITHIN; query.returnGeometry = true; query.outFields = ["CITY_NAME"]; var queryTask = new esri.tasks.QueryTask("http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer/0"); //exectute the query and call the queryComplete function/callback queryTask.execute(query, queryComplete); }, function (error) { alert("Error during buffer Geom: " + error.message); }); //another function to process your query results function queryComplete(featureSet) { var features = featureSet.features; //loop through your featureset and do something here! }