|
POST
|
It can be cumbersome to do, but it is possible. I have basemap caches in "Web Mercator" projection (wkid 102100) that I use alongside a few of ESRI's basemaps. We then have a switching function that turns some layers ON/OFF depending upon what basemap is selected in the switcher. I use the "Basemapgallery" and add my basemaps to it. Part of the basemapgallery code: function createBasemapGallery() { esri.dijit.BasemapGallery.prototype._markSelected = function(basemap) { if (basemap) { // unselect all basemap gallery items dojo.forEach(dojo.query(".esriBasemapGallerySelectedNode", this.domNode), function(node) { dojo.removeClass(node, "esriBasemapGallerySelectedNode"); }); // select current basemap gallery item var basemapNode = dojo.byId("galleryNode_" + basemap.id); if (basemapNode) { dojo.addClass(basemapNode, "esriBasemapGallerySelectedNode"); } } } var aerial2010Layer = new esri.dijit.BasemapLayer({ url : "http://gis.fwb.org/arcgis/rest/services/Maps/AerialFeb2010WebM/MapServer" }); var aerialBasemap = new esri.dijit.Basemap({ layers : [aerial2010Layer], id : "aerial2010", title : "Aerial Photo 2010", thumbnailUrl : "images/basemap_imagery.jpg" }); basemaps.push(aerialBasemap); var wstreetsLayer = new esri.dijit.BasemapLayer({ url : "http://server.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer" }); var wstreetsBasemap = new esri.dijit.Basemap({ layers : [wstreetsLayer], id : "wstreets", title : "Streets", thumbnailUrl : "images/basemap_streets.jpg" }); basemaps.push(wstreetsBasemap); basemapGallery = new esri.dijit.BasemapGallery({ showArcGISBasemaps : false, basemaps : basemaps, map : map }, "basemapGalleryDiv"); selectionHandler = dojo.connect(basemapGallery, "onSelectionChange", changeBasemap); basemapGallery.startup(); } The selection handler in the code above then calls our "changeBasemap" function: function changeBasemap() { basemapsel = basemapGallery.getSelected(); basemapselid = basemapsel.id; if (basemapselid == "aerial2010") { parcelsLayer.hide(); hydroLayer.hide(); parcelsarLayer.show(); bfpLayer.hide(); roadsLayer.show(); roadnameLayer.show(); map.Refresh(); } if (basemapselid == "wstreets") { parcelsLayer.hide(); hydroLayer.hide(); parcelsarLayer.show(); bfpLayer.hide(); roadsLayer.show(); roadnameLayer.show(); map.Refresh(); } } The way we have our website organized, I had to declare the map layer names as global variables so they could be called from the function above. Hope this helps 🙂 Luci
... View more
09-03-2013
10:56 AM
|
0
|
0
|
883
|
|
POST
|
We are using the javascript version for Arcgis 10.1 "Public Notification" template with our data and would like filter out "null" or empty data responses when it gathers the field data for the Avery labels or the CSV output file. I attempted to use some code and it either gives me an "undefined" error in a dialog box when I select avery label or "strCsvParam.filter is not a function" error in a dialog box when I select CSV format. The main problem is that we have parcels that have "Owner Name", "Address1", "Address2", "Address3", "City", "State", "Zip" for fields. Not all of the parcels with have any data in "Address2" or "Address3" which leaves blank lines between "Address1" and "City, State, Zip" on the avery label. I just want to remove the null or empty data from the array. This is the code that I have tried to remove the empty fields: strAveryParam = strAveryParam.filter(function(){return true; }); Any advice on how to remove empty, null or false values from an array? Thanks, Luci
... View more
09-03-2013
10:30 AM
|
0
|
2
|
679
|
|
POST
|
Hi, I modified the popup.png sprite and have the outerPointer.left and outPointer.right using the longer arrows. The problem is the popup is being placed at the same distance relative to the map-click as it was before. Where in the css is this setting? I want it to be like the long arrows that are used in topLeft and topRight. [ATTACH=CONFIG]26505[/ATTACH]Mouse was clicked in the middle of the red highlighted parcel - popup pointer is not pointing to click [ATTACH=CONFIG]26507[/ATTACH]Mouse was clicked on the address - mouse is pointing to click How can I make my new outerPointer.left point to the mouse click like the pointer.topLeft does? .esriPopup .outerPointer.left { left: -31px; top: 50%; background-position: 0 -275px; width: 51px; height: 48px; } .esriPopup .pointer.topLeft { left: 0px; top: -43px; background-position: 0 -470px; width: 51px; height: 45px; } Thanks, Luci
... View more
08-06-2013
08:54 AM
|
0
|
2
|
1195
|
|
POST
|
Hey, I think you are trying to use the syntax for javascript api v3.5. You need to use the syntax from the javascript api v1.6 that you are calling out in your app. http://resources.esri.com/help/9.3/arcgisserver/apis/javascript/arcgis/help/jsapi_start.htm This code worked in your app: symbol = new esri.symbol.PictureMarkerSymbol('http://static.arcgis.com/images/Symbols/Basic/YellowStickpin.png', 24, 24); Hope this helps! Luci
... View more
08-06-2013
08:44 AM
|
0
|
0
|
364
|
|
POST
|
Hi Jamal, 1. Unfortunately, No, I do not know of a method to change more than one at a time from Geometry to SDEBinary. 2. No, I dont think that having the versions remain will slow it down to much. I have only experienced lag when we have had major edit sessions and over 100,000 features were changed. As soon as we reconciled, posted, and compressed everything sped back up. We just have everyone delete their version at the end of the day so we know they have done the reconcile and post to our QC version. If someone wants a version to do what-if scenarious that will not be posted to Default then we allow that one to remain. 3. I dont see a problem with doing it daily. We are probably smaller than most GIS departments and just find that end of week works for us. Good Luck! Luci
... View more
06-11-2013
12:50 PM
|
0
|
0
|
2954
|
|
POST
|
Hey Matt, You pointed me in the right direction. What I ended up doing is adding this to my css file: .simpleGeocoder .esriGeocoderResults { position:relative; } Now the results show up in the right place 🙂 Thanks! Luci
... View more
06-04-2013
04:08 AM
|
0
|
0
|
900
|
|
POST
|
Hey Jamal, We thought about going back to a file geodatabase but decided against it. Some of our users wanted to be able to do tasks in our web app which would require a feature layer. Because feature layers are only supported through SQL, we would have had a portion of our data in a SQL GDB and a portion in a file GDB and that would have been too much to maintain. So far we are happy with the speed we achieved just by changing the spatial data type from Geometry to SDEBinary. We have an end of the day cleanup where all users reconcile/post and remove their versions. The data is then QC'd, reconcile/post to Default, Synchronized and the geodatabase is compressed. We Analyze about once a week. Having a good cleanup routine definitely helps with the speed of the geodatabase. Good Luck! Luci
... View more
06-03-2013
07:05 AM
|
0
|
0
|
2954
|
|
POST
|
I was using layerName because I couldnt figure out how to distinguish between layer DEEDS which is 0 in mapservice1 and layer Parcels which is 0 is mapservice2? My array using just the layerIds would look like: [0,1,0,1,0,2,0,1,2,3,4,0,1,2,3,4,5]; Thanks! Luci
... View more
05-30-2013
07:28 AM
|
0
|
0
|
1200
|
|
POST
|
Hey, I have an array built (identLayers) with the layerNames of all of the layers from the 10 or more map services that I want people to be able to query popup information for. I need to be able to take the results of the map click and only produce the popup for the layers that are visible AND whose layerName appears in the array. I tried plugging it into the statement that you added below and it did not work. for ( i = 0; i < tasks.length; i++) {//Use 'for' instead of 'for...in' so you can sync tasks with defTasks try { idParams.layerIds = identLayers; tasks.execute(idParams, defTasks.callback, defTasks.errback); //Execute each task } catch (e) { console.log("Error caught"); console.log(e); defTasks.errback(e); //If you get an error for any task, execute the errback } } This is part of my array code: function addIdentMaps() { //push layers to identify array identLayers.push({ layerName : 'DEEDS' }); identLayers.push({ layerName : 'Parcels' }); identLayers.push({ layerName : 'ORDINANCES' }); identLayers.push({ layerName : 'RESOLUTIONS' }); identLayers.push({ layerName : 'EASEMENT_Disclaimer' }); Thanks! Luci
... View more
05-30-2013
06:13 AM
|
0
|
0
|
1200
|
|
POST
|
Hello, I incorporated the geocoder widget and the results grid ends up being in a weird place. I have the <div>search<div> in a contentpane in an accordioncontainer and the results end up at the bottom of the contentpane instead of right below the search div. Any ideas on how I can customize the css to make it appear in the correct place. Thanks, Luci[ATTACH=CONFIG]24810[/ATTACH]
... View more
05-30-2013
05:59 AM
|
0
|
3
|
1340
|
|
POST
|
I saw those and they would work if my layers were all in 1 map service. I have over 10 different map services that I need to provide popup information for. The problem is my identify tool returns a popup for map services that I do not want to show information for. For example, I do not want popups for my city limits, hydrography, roadways, etc. but since they are visible they are selected when I use LAYER_OPTION_VISIBLE. I want to filter the results from LAYER_OPTION_VISIBLE against an array I have of layer names. Only those that are in my array should show up in a popup if they are visible. I am a noob and hack at best so any help would be greatly appreciated 🙂 Thanks, Luci
... View more
05-29-2013
06:30 AM
|
0
|
0
|
1200
|
|
POST
|
Hi, I have been using the Identify tool with idParams.layerOption = esri.tasks.IdentifyParameters.LAYER_OPTION_VISIBLE; Well, I do not want some of those "visible" layers identified when a user clicks. Is it possible to use an array of layer names that I already have built so that only those are displayed in the popup? Thanks, Luci
... View more
05-28-2013
12:36 PM
|
0
|
9
|
2994
|
|
POST
|
Awesome! It worked like a charm, Thank you Jian! Luci
... View more
05-28-2013
04:24 AM
|
0
|
0
|
1195
|
|
POST
|
Hi, I am trying to implement this in my code and I have 10 templates. What is the correct method for doing that? I have tried: dojo.connect(printer, "onPrintStart", function(){ printTitlep = document.getElementById("printTitle").value; this.templates([0,1,2,3,4,5,6,7,8,9]).layoutOptions.titleText = printTitlep; }); and I get the error: TypeError: this.templates is not a function Thanks, Luci
... View more
05-23-2013
09:39 AM
|
0
|
0
|
1195
|
|
POST
|
We have been using Flexviewer 3.2 to serve out our services and everything has been working fine. We were using an older print widget and we decided to try and take advantage of the new advanced printing capabilities on our ArcGIS Server 10.1 SP1. We entered our URL: http://fwbgis/arcgis/rest/services/Utilities/PrintingTools/GPServer/Export%20Web%20Map%20Task and we have also tried: http://fwbgis:6080/arcgis/rest/services/Utilities/PrintingTools/GPServer/Export%20Web%20Map%20Task Both URLs work in the print widget when we view our flex app in either Firefox or IE. The problem is that we get the following error pretty often, more often in IE than Firefox. It seems like the more we display on the map the more printing fails. Error executing print task: [RPC Fault faultString="HTTP request error" faultCode="Server.Error.Request" faultDetail="Error: [IOErrorEvent type="ioError" bubbles=false cancelable=false eventPhase=2 text="Error #2032: Stream Error. URL: http://fwbgis:6080/arcgis/rest/services/Utilities/PrintingTools/GPServer/Export%20Web%20Map%20Task/execute"]. URL: http://fwbgis:6080/arcgis/rest/services/Utilities/PrintingTools/GPServer/Export%20Web%20Map%20Task/execute"] We added the .swz to the mime types in IIS. We have our config.xml file setup properly. Has anyone else ran across this type of behavior? Thanks, Luci
... View more
05-16-2013
12:23 PM
|
0
|
0
|
312
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 05-04-2023 06:49 AM | |
| 1 | 09-29-2014 01:05 PM | |
| 1 | 11-30-2015 10:09 AM | |
| 1 | 02-09-2015 01:56 PM | |
| 1 | 12-30-2014 05:51 AM |
| Online Status |
Offline
|
| Date Last Visited |
05-04-2023
10:56 PM
|