POST
|
So, what was the setting and what hypervisor are you using? Hyper-V, VMWare? We've been having the same problem, I think and are all out of ideas. Turns out it wasn't an ArcGIS Server issue, but a setting that needed to be changed in our VM software after increasing the amount of RAM. Sorry, I'm editing my post because I didn't realize there was more. Then I found the rest of the posts and realized that I've already read all of this. Still don't know what to do to fix our performance issues.
... View more
02-28-2014
11:52 AM
|
0
|
0
|
872
|
POST
|
Just do exactly what Robert said. Your TOC mxml should look something like the following code (where AerialMap, TopoMap, and StreetMap are the ids of the services you want to exclude from the TOC. <maplib:TOC width="100%" height="100%" map="{map}" useLayerFadeEffect="true" excludeGraphicsLayers="true" excludeLayers="{[AerialMap,TopoMap,StreetMap]}"/> Here's an example of the mxml for one of the excluded layers, AerialMap (notice the id): <esri:ArcGISTiledMapServiceLayer id="AerialMap" visible="true" url="http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer"/>
... View more
06-06-2011
05:26 AM
|
0
|
0
|
573
|
POST
|
Thanks, Mark!! I now have it working! When I first started trying to figure this out using info gleaned from the forums, I kept getting errors at .addImage, not enough arguments or incorrect argument, or maybe something to do with the BitmapData. So, when I put the components you sent in the project, it happened again. Well, I noticed that the ArcGIS API for Flex library in your project was only at 1.3, so I thought maybe the AlivePDF.swc could be older, too (I had been trying to use the most recent). At any rate, I substituted the .swc that you sent in the project, and it all worked! Finally, I with it working, i as able to tweak the layouts to be letter size, and I am overjoyed to be done with this part of my app! Maybe I'll figure out later how the AlivePDF library changed, but for now I'm satisfied with being done. Thanks again, and I hope this helps some other PDF latecomers! Melony
... View more
02-22-2011
10:51 AM
|
0
|
0
|
563
|
POST
|
I've been using the Flex Map Printing Utility by Mark Hoyland (http://arcscripts.esri.com/details.asp?dbid=16778) for the past year, and it works great. I especially like the fact that it will clip the map to a different extent based on the page orientation. I would like to add a PDF button to the PrintPreview that allows the user to save the same layout into a PDF. I have gathered from other posts that he and others are using the AlivePDF library to accomplish this. I now have the AlivePDF library and can generate a PDF, but I'm having trouble using the suggestion from a thread from Mark Hoyland http://forums.esri.com/Thread.asp?c=158&f=2421&t=296597(see the March 17, 2010 post). The post from Mark says he does the following, but not where: var myBitmapData:BitmapData = Bitmap(mapImage.content).bitmapData;
myPDF.addImage(new Bitmap(myBitmapData),rectangle.x,rectangle.y,image.width,image.height, ImageFormat.JPG, 75); It just doesn't seem like I have all of the pieces in the same place at one time in order to send the images or objects to be made into a PDF. So far, I've made the same mistakes as my predecessors in the forums (like getting low quality, small versions of the layout or map in a PDF), but still can't figure out the solution. I can't figure out how I'm supposed to link up PrintMapUtil.as with the PDF code. Am I supposed to: Add something to PrintMapUtil.as to get the layout as BitmapData and then generate the PDF there, OR Make new MXML layouts for PDFs and call the trimmedMap function from those, OR Add the PDF generating functions to the PrintPreview.mxml. Can someone point me in the right direction?
... View more
02-14-2011
08:14 AM
|
0
|
7
|
2802
|
POST
|
This is a print sample that Mark H put together. I find it to be a very nice utility for trimming the map to get the print size correct. There are a few different pieces to get this to work but I would recommend downloading it and looking at the code to see how he trims the map. I use some of this code on my site and it has been very helpful for sizing the map correctly. Technically you don't need all of the pieces and you can just call his PrintMapUtil.as to return your map as a bitmap. http://resources.esri.com/arcgisserver/apis/flex/index.cfm?fa=codeGalleryDetails&scriptID=16778 thejones23, Could you elaborate on how to use the PrintMapUtil.as in conjunction with AlivePDF? I'm already using the print sample you're talking about, but using it for the PDF is a bit beyond my understanding, especially since I'm really new to AlivePDF.
... View more
02-10-2011
07:45 AM
|
0
|
0
|
582
|
POST
|
Is this a clip and ship service? Are you using the Data Extract Widget or similar? Are you simply trying to change the name of the zipfile returned to the user? If so, then you can supply a different name for the zip file in the downloadFile function.
private function downloadFile(url:String):void
{
var downloadURL:URLRequest = new URLRequest();
downloadURL.url = url;
file = new FileReference();
configureListeners(file);
//change the name of the zipfile below
file.download(downloadURL, "moBetterZipFileName.zip");
} Another way to change this is to go back to the geoprocessing model and change the Output Zip File parameter there.
... View more
11-09-2010
01:35 PM
|
0
|
0
|
191
|
POST
|
I am connecting to an ArcGIS Server 10 Clip and Ship service in Flex using the code adapted from the Data Extract Widget for the Flex Viewer. It works great. One thing that would be great is if you could put a file size limit in megabytes on the chunk of data that people choose to download. Has anyone done this or have any ideas? I'm not sure whether to start with the GP Service itself or do some sort of checking on the flex side.
... View more
11-09-2010
12:41 PM
|
0
|
0
|
2249
|
POST
|
I have set up a clip and ship geoprocessing service. The way it works is the user checks a box for each layer they want to download, and then they draw a single polygon or multiple polygons. After each polygon is drawn the resulting graphic is pushed to an array, and then added to a graphicsLayer. Finally when the user pushes the a button, the array of graphics is passed to a function that creates a FeatureSet from it and then sends it on to the geoprocessing service. Independently of this code, I have implemented code for shapefile overlay which ultimately takes a zipfile containing all the files associated with a polygon shapefile and then adds the features from it to a graphicsLayer, and then zooms. What I want to be able to do is put all of these polygons together somehow into something so that I can use all of them for the clip! I need to get the graphics from graphicsLayer (from the shapefile code) into my clipGraphicsArray somehow. I've tried a couple of different things, but they do not work. Incidentally, I haven't even been able to feed the shapefile graphics alone into the doClip() function to use them for the clip. So, if someone knows even how to do that, maybe I could hack out the rest on my own. Does anyone know how I should go about doing this? Here's all the relevant code: private var clipGraphicsArray:Array;
private function init():void
{
clipGraphicsArray = [];
}
private function drawClipPoly(event:MouseEvent):void
{
clipDrawToolbar.activate(DrawTool.POLYGON, true);
}
private function clipDrawEndHandler(event:DrawEvent):void
{
clipGraphicsArray.push(event.graphic);
clipGraphicsLayer.add(event.graphic);
} Here's the shapefile code. It seems like I need to get the graphics from graphicsLayer and somehow push/add them to my clipGraphicsArray, but I just can't figure it out. private function loadShapefile(shpByteArray:ByteArray, dbfByteArray:ByteArray):void
{
var index:int = 0;
const array:Array = [];
const shpReader:ShpReader = new ShpReader(shpByteArray);
const dbfHeader:DbfHeader = new DbfHeader(dbfByteArray);
while (shpReader.hasMore())
{
var shpPolygon:ShpPolygon = shpReader.readShpPolygon();
var dbfRecord:DbfRecord = DbfTools.getRecord(dbfByteArray, dbfHeader, index++);
// Now takes _all_ attributes
array.push(new Graphic(shpPolygon, shpSymbol, dbfRecord.values));
}
graphicsLayer.graphicProvider = new ArrayCollection(array);
map.extent = shpReader.extent.expand(1.5);
}
This code is triggered by a button click once the user has selected the download layers and drawn polygon(s): private function doClip():void
{
clipDrawToolbar.deactivate();
var myEmail:String = inputEmail.text;
var featureSet:FeatureSet = new FeatureSet(clipGraphicsArray);
var params:Object =
{
"Area_To_Download": featureSet,
"Layers_to_Download" : { "features" : [
{"attributes" : {"LayerName" : strRow1, "DownLoad" : Row1}},
{"attributes" : {"LayerName" : strRow2, "DownLoad" : Row2}},
{"attributes" : {"LayerName" : strRow3, "DownLoad" : Row3}},
{"attributes" : {"LayerName" : strRow4, "DownLoad" : Row4}},
{"attributes" : {"LayerName" : strRow5, "DownLoad" : Row5}},
{"attributes" : {"LayerName" : strRow6, "DownLoad" : Row6}}
]},
"Email_address_to_send_zip_file": myEmail
};
gp.submitJob(params);
}
... View more
10-20-2010
12:34 PM
|
0
|
0
|
601
|
POST
|
Thank you thank you thank you!!! That was the push I was looking for. It's actually better than my former SymbolFunction, too!
... View more
10-06-2010
06:50 AM
|
0
|
0
|
585
|
POST
|
Dasa, I don't understand how you set the GraphicsLayer's renderer property in the mxml. How do you do this? I get an error when I do the following, but this is exactly how I used to call my SymbolFunction. The error states the following "Initializer for 'renderer': values of type com.esri.ags.renderers.Renderer cannot be represented in text."
<esri:GraphicsLayer id="queryGraphicsLayer" graphicProvider="{joinQueryTask.executeLastResult.features}" renderer="MyGeomTypeRenderer"/>
Please advise. Thank you.
... View more
10-05-2010
02:15 PM
|
0
|
0
|
585
|
POST
|
Well, duh, I'm glad I asked. Funny how you can look at something, but not SEE it. I'm always trying to make it harder than it is. Again, thanks, Melony
... View more
06-24-2010
08:08 AM
|
0
|
0
|
573
|
POST
|
Hi there, Robert, Of course, that worked! So simple. Do I understand correctly, that by calling my function with excludeLayers in it in the creationComplete event, I was calling it too late? Is your solution the same thing as calling the function with excludeLayers in it from the initialize event? I'm just trying to understand so I can store it away in my brain for future reference. You and some other notables have been an invaluable resource to me since starting out with Flex in October 2009. I've received a real education from your answers to my posts and others' posts. Yay! 😄 Thanks so much!! Melony
... View more
06-24-2010
06:53 AM
|
0
|
0
|
573
|
POST
|
I'm calling a function on creationComplete of the TOC (I'm using this TOC, not the Sample Flex Viewer) in order to exclude some basemap layers from it, and then expand the remaining services. The code works, too, just not without errors. The first error starts with: Error #1009: Cannot access a property or method of a null object reference. at com.esri.maplib.tocClasses::TocLayerInfoItem/set minScale() then I hit Dismiss All and the next error starts with: Error #1009: Cannot access a property or method of a null object reference. at com.esri.maplib.tocClasses::TocLayerInfoItem/checkExtent() Here's the code from my main application file for the TOC, and the function being called: <maplib:TOC id="TOC" creationComplete="initTOC();"
width="100%" height="100%"
map="{map}"
useLayerFadeEffect="true"
excludeGraphicsLayers="true" /> And here's the initTOC function: //Exclude base map layers and expand top level TOC items on creationComplete of TOC
private function initTOC():void
{
TOC.excludeLayers = ["World_Street_Map", "World_Topo_Map", "USA_Topo_Maps"];
TOC.openItems = TOC.dataProvider.source;
} Note: Everything works fine (without errors) when I comment out the TOC.excludeLayers line. So far, I've only been able to find threads for the excludeLayers method for the Sample Flex Viewer Live Maps Widget, and no one using it there seems to be having this problem. Thanks in advance for any insight into this issue.
... View more
06-23-2010
03:00 PM
|
0
|
9
|
840
|
POST
|
I would like to change the TOC behavior for group layers. Currently, when you turn on the group layer, all of the sublayers are also turned on. I would like to turn on the group layer using the checkbox and not have it trigger the visibility of any of the sublayers, just like in ArcMap. If possible, I would also like to turn on all of the sublayers without it triggering the visibility of the parent group layer. I am certain I saw the solution to this somewhere in the forums (new or old), thought I bookmarked it, but now can't find it. Thanks!
... View more
06-22-2010
03:02 PM
|
0
|
1
|
631
|
POST
|
Sorry, it took me so long to get back to you. With your edits, it works! Yay! Thanks so much! Melony
... View more
06-22-2010
08:51 AM
|
0
|
0
|
343
|
Online Status |
Offline
|
Date Last Visited |
12-19-2022
04:45 PM
|