findDistrictTask = new FindTask("http://summitgis.summitoh.net:6080/arcgis/rest/services/DOES/MapServer/"); map.on("load", function () { findDistrictParams = new FindParameters(); findDistrictParams.returnGeometry = true; findDistrictParams.layerIds = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]; findDistrictParams.searchFields = ["NAME, UNAME, PUMPID, PIPEID, PlantID, Name"]; findDistrictParams.outSpatialReference = map.spatialReference; }); function doDoesDistrictFind() { findDistrictParams.searchText = dom.byId("doesDistrictText").value; findDistrictTask.execute(findDistrictParams, showResults); } function showResults(results) { var markerSymbol = new SimpleMarkerSymbol(SimpleMarkerSymbol.STYLE_SQUARE, 10, new SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255, 0, 0]), 1), new dojo.Color([0, 255, 0, 0.25])); var lineSymbol = new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASH, new dojo.Color([255, 0, 0]), 1); var polygonSymbol = new esri.symbol.SimpleFillSymbol(esri.symbol.SimpleFillSymbol.STYLE_NONE, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASHDOT, new dojo.Color([255, 0, 0]), 2), new dojo.Color([255, 255, 0, 0.25])); map.graphics.clear(); var dataForGrid = []; arrayUtils.map(results, function (result) { var graphic = result.feature; dataForGrid.push([result.layerName, result.foundFieldName, result.value]); switch (graphic.geometry.type) { case "point": graphic.setSymbol(markerSymbol); break; case "polyline": graphic.setSymbol(lineSymbol); break; case "polygon": graphic.setSymbol(polygonSymbol); break; } map.graphics.add(graphic); }); var data = { items: dataForGrid }; var store = new ItemFileReadStore({ data: data }); var grid = registry.byId("grid"); grid.setStore(store); grid.on("rowclick", onRowClickHandler); map.centerAndZoom(center, zoom); } function onRowClickHandler(evt) { var clickedFeature = evt.grid.getItem(evt.rowIndex).OBJECTID; var selectedFeature = arrayUtils.filter(map.graphics.graphics, function (graphic) { return ((graphic.attributes) && graphic.attributes.OBJECTID === clickedFeature); }); var featureExtent = selectedFeature.geometry.getExtent(); var screenpoint = map.toScreen(selectedFeature.geometry.getExtent().getCenter()); var mappoint = map.toMap(screenpoint); map.centerAt(mappoint); if (selectedFeature.geometry.declaredClass == 'esri.geometry.Point') { map.centerAt(selectedFeature.geometry); } else { var featureExtent = selectedFeature.geometry.getExtent(); var screenpoint = map.toScreen(selectedFeature.geometry.getExtent().getCenter()); var mappoint = map.toMap(screenpoint); map.centerAt(mappoint); } }
Solved! Go to Solution.
function showResults(results) { if (results.length > 0) { map.graphics.clear(); var markerSymbol = new SimpleMarkerSymbol(SimpleMarkerSymbol.STYLE_SQUARE, 10, new SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255, 0, 0]), 1), new dojo.Color([0, 255, 0, 0.25])); var lineSymbol = new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASH, new dojo.Color([255, 0, 0]), 1); var polygonSymbol = new esri.symbol.SimpleFillSymbol(esri.symbol.SimpleFillSymbol.STYLE_NONE, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASHDOT, new dojo.Color([255, 0, 0]), 2), new dojo.Color([255, 255, 0, 0.25])); var dataForGrid = []; arrayUtils.map(results, function (result) { var graphic = result.feature; dataForGrid.push([result.layerName, result.foundFieldName, result.value]); switch (graphic.geometry.type) { case "point": graphic.setSymbol(markerSymbol); break; case "polyline": graphic.setSymbol(lineSymbol); break; case "polygon": graphic.setSymbol(polygonSymbol); break; } map.graphics.add(graphic); return result.feature.attributes; }); var data = { items: dataForGrid }; var store = new ItemFileReadStore({ data: data }); var grid = registry.byId("grid"); grid.setStore(store); grid.on("rowclick", onRowClickHandler); map.centerAndZoom(center, zoom); } else { alert("No Utility Feature found! Please enter a valid UNAME, PIPEID, Plant ID, PUMPID or Name."); } }
function showResults(results) { if (results.length > 0) { map.graphics.clear(); var markerSymbol = new SimpleMarkerSymbol(SimpleMarkerSymbol.STYLE_SQUARE, 10, new SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255, 0, 0]), 1), new dojo.Color([0, 255, 0, 0.25])); var lineSymbol = new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASH, new dojo.Color([255, 0, 0]), 1); var polygonSymbol = new esri.symbol.SimpleFillSymbol(esri.symbol.SimpleFillSymbol.STYLE_NONE, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASHDOT, new dojo.Color([255, 0, 0]), 2), new dojo.Color([255, 255, 0, 0.25])); var items = arrayUtils.map(results, function (result) { var graphic = result.feature; switch (graphic.geometry.type) { case "point": graphic.setSymbol(markerSymbol); break; case "polyline": graphic.setSymbol(lineSymbol); break; case "polygon": graphic.setSymbol(polygonSymbol); break; } map.graphics.add(graphic); return result.feature.attributes; }); var data = { identifier: "OBJECTID", label: "OBJECTID", items: items }; var store = new ItemFileReadStore({ data: data }); var grid = registry.byId("grid"); grid.setStore(store); grid.on("rowclick", onRowClickHandler); map.centerAndZoom(center, zoom); } else { alert("No Utility Feature found! Please enter a valid UNAME, PIPEID, Plant ID, PUMPID or Name."); } }
findDistrictTask = new FindTask("http://summitgis.summitoh.net:6080/arcgis/rest/services/DOES/MapServer/"); map.on("load", function () { findDistrictParams = new FindParameters(); findDistrictParams.returnGeometry = true; findDistrictParams.layerIds = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]; findDistrictParams.searchFields = ["NAME, UNAME, PUMPID, PIPEID, PlantID, Name"]; findDistrictParams.outSpatialReference = map.spatialReference; }); function doDoesDistrictFind() { findDistrictParams.searchText = dom.byId("doesDistrictText").value; findDistrictTask.execute(findDistrictParams, showResults); } function showResults(results) { if (results.length > 0) { map.graphics.clear(); var markerSymbol = new SimpleMarkerSymbol(SimpleMarkerSymbol.STYLE_SQUARE, 10, new SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255, 0, 0]), 1), new dojo.Color([0, 255, 0, 0.25])); var lineSymbol = new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASH, new dojo.Color([255, 0, 0]), 1); var polygonSymbol = new esri.symbol.SimpleFillSymbol(esri.symbol.SimpleFillSymbol.STYLE_NONE, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASHDOT, new dojo.Color([255, 0, 0]), 2), new dojo.Color([255, 255, 0, 0.25])); var dataForGrid = []; arrayUtils.map(results, function (result) { var graphic = result.feature; dataForGrid.push([result.layerName, result.foundFieldName, result.value]); switch (graphic.geometry.type) { case "point": graphic.setSymbol(markerSymbol); break; case "polyline": graphic.setSymbol(lineSymbol); break; case "polygon": graphic.setSymbol(polygonSymbol); break; } map.graphics.add(graphic); return result.feature.attributes; }); var data = { items: dataForGrid }; var store = new ItemFileReadStore({ data: data }); var grid = registry.byId("grid"); grid.setStore(store); grid.on("rowclick", onRowClickHandler); map.centerAndZoom(center, zoom); } else { alert("No feature found"); } } function onRowClickHandler(evt) { var clickedFeature = evt.grid.getItem(evt.rowIndex).OBJECTID; var selectedFeature = arrayUtils.filter(map.graphics.graphics, function (graphic) { return ((graphic.attributes) && graphic.attributes.OBJECTID === clickedFeature); }); if (selectedFeature.length) { map.setExtent(selectedFeature[0].geometry.getExtent(), true); } }
function onRowClickHandler(evt) { var clickedFeature = evt.grid.getItem(evt.rowIndex).OBJECTID; var selectedFeature = arrayUtils.filter(map.graphics.graphics, function (graphic) { return ((graphic.attributes) && graphic.attributes.OBJECTID === clickedFeature); }); var featureExtent = selectedFeature.geometry.getExtent(); var screenpoint = map.toScreen(selectedFeature.geometry.getExtent().getCenter()); var mappoint = map.toMap(screenpoint); map.centerAt(mappoint); if (selectedFeature.geometry.declaredClass == 'esri.geometry.Point') { map.centerAt(selectedFeature.geometry); } else { var featureExtent = selectedFeature.geometry.getExtent(); var screenpoint = map.toScreen(selectedFeature.geometry.getExtent().getCenter()); var mappoint = map.toMap(screenpoint); map.centerAt(mappoint); } }
function onRowClickHandler(evt) { var clickedStreet = evt.grid.getItem(evt.rowIndex).ADD_LBL; var selectedStreet = arrayUtils.filter(map.graphics.graphics, function (graphic) { return ((graphic.attributes) && graphic.attributes.ADD_LBL === clickedStreet); }); if ( selectedStreet.length ) { map.setExtent(selectedStreet[0].geometry.getExtent(), true); } }