var layerURL = "http://172.20.25.165:6080/arcgis/rest/services/Crime2018/FeatureServer/"; //querys the crimes layer for all burglaries
var burgresultsLayer = new GraphicsLayer();
var burgQsym = { //creates the symbol for burglaries query
type: "simple-marker",
color: "green",
style: "triangle",
size: 8
};
/*alert(layerURL);*/
var qTask = new QueryTask({url : layerURL});
var burgQuery = new Query();
burgQuery.returnGeometry = true;
var fieldBoys = burgQuery.outFields = ["Offense", "Location"];
/*alert(fieldBoys);*/
burgQuery.where = "Offense = Burglary";
qTask.execute(burgQuery).then(function(results) {
console.log(results.features);
});
qTask.executeForCount(burgQuery).then(function(results) {
console.log(results);
});
Solved! Go to Solution.
require([
"esri/Map",
"esri/views/MapView",
//"esri/views/SceneView",
"esri/widgets/Home",
"esri/widgets/Search",
"esri/widgets/BasemapGallery", //loading the necessary libraries and classes and objects from the ESRI API
"esri/widgets/Expand",
"esri/layers/FeatureLayer",
"esri/layers/ImageryLayer",
"esri/widgets/LayerList",
"esri/tasks/QueryTask",
"esri/tasks/support/Query",
"esri/layers/GraphicsLayer",
"dojo/dom",
"dojo/on",
"dojo/domReady!"
],function(Map, MapView, Home, Search, BasemapGallery, Expand, FeatureLayer, ImageryLayer, LayerList, GraphicsLayer, QueryTask, Query) {
var map = new Map({ //creates new empy map, with streets as basemap
basemap: "streets"
});
var view = new MapView({ //creates the map view and shows the map in the mapBox container
container: "mapBox",
map: map,
zoom: 13,
center: [-85.675, 40.09], //centers map on Anderson, Indiana
});
var homewidget = new Home({ //adds the home widget to the map view
view: view
});
view.ui.add(homewidget, "top-left");
searchWidget = new Search({ //add the search widget to the map view
view:view,
showInfoWindowOnSelect: false,
popupEnabled: false,
popupOpenOnSelect: false
});
view.ui.add(searchWidget, "bottom-right");
var basemapGallery = new BasemapGallery({ //add the basemap gallery widget to map view
view: view
});
var bgExpand = new Expand({ //puts the basemap gallery widget into an expand widget
view: view,
content: basemapGallery,
collapseTooltip: "Close Basemap Gallery",
expandTooltip: "Open Basemap Gallery"
});
view.ui.add(bgExpand, "bottom-left");
var burgSym = { //creates the symbol for burglaries
type: "simple-marker",
color: "blue",
style: "diamond",
size: 7
};
var theftSym = { //creates the symbol for thefts
type: "simple-marker",
color: "red",
style: "square",
size: 7
};
var otherSym = { //creates a default symbol
type: "simple-marker",
color: "black",
size: 5,
style: "circle"
};
var crimeRenderer = { //creates the renderer for the crimes layer
type: "unique-value",
defaultSymbol : otherSym,
field: "Offense",
uniqueValueInfos: [{
value: "Burglary",
symbol: burgSym
}, {
value: "Theft",
symbol: theftSym
}]
};
var featurelayer = new FeatureLayer({ //adds a feature layer of 2018 Crime
url: "http://172.20.25.165:6080/arcgis/rest/services/Crime2018/FeatureServer",
title: "2018 Crime",
renderer: crimeRenderer,
visible: false
});
map.add(featurelayer, 2);
var orthLayer = new ImageryLayer({ //adds an image layer of Orthos SCE
url: "http://172.20.25.165:6080/arcgis/rest/services/Ortho_SCE/ImageServer",
title: "Ortho - East",
visible: false
});
map.add(orthLayer, 0);
var orthLayer2 = new ImageryLayer({ //adds an image layer of Orthos SCW
url: "http://172.20.25.165:6080/arcgis/rest/services/Ortho_SCW/ImageServer",
title: "Ortho - West",
visible: false
});
map.add(orthLayer2, 1);
var layerList = new LayerList({ // add a layer list to the map view
view: view
});
var llExpand = new Expand({ //puts the layer list widget into an expand widget
view: view,
content: layerList,
collapseTooltip: "Close Layer List",
expandTooltip: "Open Layer List"
});
view.ui.add(llExpand, "top-right");
var layerURL = "http://172.20.25.165:6080/arcgis/rest/services/Crime2018/FeatureServer/0";
var burgresultsLayer = new GraphicsLayer();
var burgQsym = { //creates the symbol for burglaries query
type: "simple-marker",
color: "green",
style: "triangle",
size: 8
};
/*alert(layerURL);*/
var qTask = new QueryTask({url : layerURL});
var burgQuery = new Query();
burgQuery.returnGeometry = true;
burgQuery.outFields = ["Offense", "Location"];
burgQuery.where = "Offense = 'Burglary'";
qTask.execute(burgQuery).then(function(results) { //queries the crimes layer for all burglaries (not)
console.log(results.features);
});
qTask.executeForCount(burgQuery).then(function(results) {
console.log(results);
});
});
John,
That is definitely your issue.
require([
"esri/Map",
"esri/views/MapView",
"esri/widgets/Home",
"esri/widgets/Search",
"esri/widgets/BasemapGallery",
"esri/widgets/Expand",
"esri/layers/FeatureLayer",
"esri/layers/ImageryLayer",
"esri/widgets/LayerList",
"esri/tasks/QueryTask",
"esri/tasks/support/Query",
"esri/layers/GraphicsLayer",
"dojo/dom",
"dojo/on",
"dojo/domReady!"
],function(
Map, MapView, Home, Search, BasemapGallery, Expand, FeatureLayer, ImageryLayer,
LayerList, QueryTask, Query, GraphicsLayer, dom, on) {
Here is your order fixed
Robert .... yes!
Thank you so much!
I guess I did not realize the order of the requires and in the function call were important!
So the order of the requires has to match the order in the function ... but not the order that they are used in the script itself necessarily?
Correct.