<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: PrintTask and Graphics in ArcGIS JavaScript Maps SDK Questions</title>
    <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/printtask-and-graphics/m-p/26729#M2299</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;You need to wait until the map loads to add the graphics. So if you modify your sample to execute the query task when the map loads and add the points you should be ok.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 11 Apr 2013 15:25:37 GMT</pubDate>
    <dc:creator>KellyHutchins</dc:creator>
    <dc:date>2013-04-11T15:25:37Z</dc:date>
    <item>
      <title>PrintTask and Graphics</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/printtask-and-graphics/m-p/26728#M2298</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Guys,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm new to this forum but hope someone can help. I've got some questions about the user of PrinTask();&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I've got the code below. And i'm running into a couple of problems, which properly are related to each other.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- When the page loads, sometimes it runs into errors: 'map.graphics is null' or error '_c undefined'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- When everything loads perfect the .png file created and it's url is returned....but the .png doesn't contain the feature layer and the graphics layer. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm guessing i'm doing something wrong with the order in which i'm adding graphics and launching the printTask. But I've tried about any solution I could find, without fixing it. Hopefully there's someone who can point me in the right direction and suggested how I should restructure or reorder stuff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;&amp;lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"&amp;gt;
&amp;lt;html xmlns="http://www.w3.org/1999/xhtml"&amp;gt;&amp;lt;head profile="http://gmpg.org/xfn/11"&amp;gt;
&amp;lt;head&amp;gt; 
&amp;lt;title&amp;gt;&amp;lt;/title&amp;gt;

&amp;lt;link rel="stylesheet" type="text/css" href="https://community.esri.com/style/topotrainer.css"&amp;gt;
&amp;lt;link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/3.1/js/dojo/dijit/themes/claro/claro.css"&amp;gt; 
&amp;lt;link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/3.1/js/esri/dijit/css/Popup.css"&amp;gt;

&amp;lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8"&amp;gt;
&amp;lt;title&amp;gt;&amp;lt;/title&amp;gt;
&amp;lt;link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/1.6/js/dojo/dijit/themes/tundra/tundra.css"&amp;gt;
&amp;lt;style type="text/css"&amp;gt;
 #mapWrap{
&amp;nbsp; width:595px;
&amp;nbsp; height:842px;
&amp;nbsp; border:1px solid #999;
 }
&amp;lt;/style&amp;gt;
&amp;lt;script type="text/javascript"&amp;gt;
&amp;nbsp;&amp;nbsp; var djConfig = {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; parseOnLoad: true
&amp;nbsp;&amp;nbsp;&amp;nbsp; };
&amp;lt;/script&amp;gt;
&amp;lt;script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=3.1"&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script type="text/javascript"&amp;gt;
 dojo.require("dijit.dijit"); // optimize: load dijit layer
&amp;nbsp;&amp;nbsp;&amp;nbsp; dojo.require("dijit.layout.BorderContainer");
&amp;nbsp;&amp;nbsp;&amp;nbsp; dojo.require("dijit.layout.ContentPane");
&amp;nbsp;&amp;nbsp;&amp;nbsp; dojo.require("esri.map");
 dojo.require("esri.graphic");
 dojo.require("esri.layers.FeatureLayer"); 
&amp;nbsp;&amp;nbsp;&amp;nbsp; dojo.require("dijit.layout.TabContainer");
 dojo.require("esri.tasks.query");
 dojo.require("esri.dijit.Print");
 dojo.require("esri.tasks.PrintTask");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; //this global object contains all references needed across functions 
&amp;nbsp;&amp;nbsp;&amp;nbsp; var globals = {};
 var map;
 var testedArea = 'nederland';
 var basemapUrl = "http://tiles.arcgis.com/tiles/nSZVuSZjHpEZZbRo/arcgis/rest/services/Topografie_in_de_klas_"+testedArea+"_ondergrond/MapServer";
 var featureLayerUrl = "http://services.arcgis.com/nSZVuSZjHpEZZbRo/ArcGIS/rest/services/Topografie_in_de_klas_"+testedArea+"/FeatureServer/0";
 var printurl = 'http://utility.arcgisonline.com/arcgis/rest/services/Utilities/PrintingTools/GPServer/Export%20Web%20Map%20Task/execute';
&amp;nbsp; //var contentFeatureLayerUrl = "http://services.arcgis.com/nSZVuSZjHpEZZbRo/ArcGIS/rest/services/Topografie_in_de_klas_"+testedArea+"/FeatureServer/1";
 
&amp;nbsp;&amp;nbsp; function init() {
&amp;nbsp; esri.config.defaults.io.proxyUrl = "/arcgisserver/apis/javascript/proxy/proxy.ashx";
&amp;nbsp; 
&amp;nbsp; var initialExtent = new esri.geometry.Extent({"xmin":127181.62867976735,"ymin":6618002.046143801,"xmax":1141291.3011197727,"ymax":7298584.615330108,"spatialReference":{"wkid":102100}});
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map = new esri.Map("map", {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; extent: initialExtent,
&amp;nbsp;&amp;nbsp; //zoom: 2
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; });
&amp;nbsp; 
&amp;nbsp; //Setup the layers
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var basemap = new esri.layers.ArcGISTiledMapServiceLayer(basemapUrl);
&amp;nbsp; var featureLayer = new esri.layers.FeatureLayer(featureLayerUrl,{
&amp;nbsp;&amp;nbsp; mode: esri.layers.FeatureLayer.MODE_SELECTION,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; outFields: ["*"]
&amp;nbsp; });
&amp;nbsp; var graphicsLayer = new esri.layers.GraphicsLayer();
&amp;nbsp; 
&amp;nbsp; //Add the layers
&amp;nbsp; map.addLayer(basemap);
&amp;nbsp; map.addLayer(featureLayer);
&amp;nbsp; map.addLayer(graphicsLayer);
&amp;nbsp; 
&amp;nbsp; //Select the content of the featurelayer
&amp;nbsp; featureLayer.clearSelection();
&amp;nbsp; content = 'Cito100_onderdeel=1';
&amp;nbsp; queryContentSelect = new esri.tasks.Query();
&amp;nbsp; queryContentSelect.returnGeometry = true;
&amp;nbsp; queryContentSelect.outFields = ["Type", "NAME"];
&amp;nbsp; queryContentSelect.where = content;
&amp;nbsp; featureLayer.selectFeatures(queryContentSelect, esri.layers.FeatureLayer.SELECTION_NEW);
&amp;nbsp; 
&amp;nbsp; //Set the content of the graphicsLayer selection
&amp;nbsp; var queryGraphicsTask = new esri.tasks.QueryTask(featureLayerUrl);
&amp;nbsp; queryGraphicsSelect = new esri.tasks.Query();
&amp;nbsp; queryGraphicsSelect.returnGeometry = true;
&amp;nbsp; queryGraphicsSelect.outFields = ["Type", "NAME"];
&amp;nbsp; queryGraphicsSelect.objectIds = [1,12,14,15,24,25,89, 20];
&amp;nbsp; queryGraphicsTask.execute(queryGraphicsSelect, addPointsToMap);
&amp;nbsp; 
&amp;nbsp; //Set up print stuff
&amp;nbsp; var printTask = new esri.tasks.PrintTask(printurl);
&amp;nbsp; var params = new esri.tasks.PrintParameters();
&amp;nbsp; var template = new esri.tasks.PrintTemplate();
&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; params.map = map;
&amp;nbsp; template.exportOptions = {
&amp;nbsp;&amp;nbsp; width: 595,
&amp;nbsp;&amp;nbsp; height: 842,
&amp;nbsp;&amp;nbsp; dpi: 96
&amp;nbsp; };
&amp;nbsp; template.layout = "MAP_ONLY";
&amp;nbsp; template.preserveScale = false;
&amp;nbsp; 
&amp;nbsp; params.template = template;
 
&amp;nbsp; dojo.connect(map, "onLoad", function() {//Fire the print task
&amp;nbsp;&amp;nbsp; printTask.execute(params, printResult, printError);
&amp;nbsp; });
&amp;nbsp; 
&amp;nbsp; 
&amp;nbsp; //Functions//
&amp;nbsp; function addPointsToMap(featureSet) {
&amp;nbsp;&amp;nbsp; var i =1;
&amp;nbsp;&amp;nbsp; dojo.forEach(featureSet.features,function(feature){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; iconSymbolNumbered = new esri.symbol.PictureMarkerSymbol({
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "url":"http://tpgrf.nl/testserver/alpha/wp-content/themes/topografieindeklas/style/img/toetsNumberIcons/red/NumberIcon"+i+".png",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'width':15,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'height':20,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'xoffset':0,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'yoffset': 10});
&amp;nbsp;&amp;nbsp;&amp;nbsp; map.graphics.add(feature.setSymbol(iconSymbolNumbered));
&amp;nbsp;&amp;nbsp;&amp;nbsp; i++;
&amp;nbsp;&amp;nbsp; });
&amp;nbsp; }
&amp;nbsp; 
&amp;nbsp; function printResult(result){
&amp;nbsp;&amp;nbsp; console.log('executed succes'+result.url);
&amp;nbsp; }
&amp;nbsp; function printError(result){
&amp;nbsp;&amp;nbsp; console.log('executed error');
&amp;nbsp; }
&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }//End init

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //show map on load 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dojo.ready(init);
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; ////////////////////////////////
&amp;nbsp;&amp;nbsp; //Other then on Load functions//
&amp;nbsp;&amp;nbsp; ////////////////////////////////
&amp;nbsp; 
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/script&amp;gt;
&amp;nbsp; &amp;lt;/head&amp;gt;
&amp;nbsp; 
&amp;nbsp; &amp;lt;body&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;div id="mapWrap"&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div id="mainWindow" dojotype="dijit.layout.BorderContainer" design="headline" gutters="false" style="width:100%; height:100%;"&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div id="map" dojotype="dijit.layout.ContentPane" region="center"&amp;gt;&amp;lt;/div&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;
&amp;nbsp; &amp;lt;/div&amp;gt;&amp;lt;!-- end mapWrap --&amp;gt;
&amp;nbsp; &amp;lt;/body&amp;gt;

&amp;lt;/html&amp;gt;&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;When waiting a couple of seconds to execute the printTask, for testing just by adding setTimeout, I get tthis error back in my FireBug console.&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;setTimeout(function(){printTask.execute(params, printResult, printError);},3000);&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;BR /&gt;&lt;SPAN&gt;[ATTACH=CONFIG]23425[/ATTACH]&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 11 Apr 2013 12:11:17 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/printtask-and-graphics/m-p/26728#M2298</guid>
      <dc:creator>DennisHunink</dc:creator>
      <dc:date>2013-04-11T12:11:17Z</dc:date>
    </item>
    <item>
      <title>Re: PrintTask and Graphics</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/printtask-and-graphics/m-p/26729#M2299</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;You need to wait until the map loads to add the graphics. So if you modify your sample to execute the query task when the map loads and add the points you should be ok.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 11 Apr 2013 15:25:37 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/printtask-and-graphics/m-p/26729#M2299</guid>
      <dc:creator>KellyHutchins</dc:creator>
      <dc:date>2013-04-11T15:25:37Z</dc:date>
    </item>
    <item>
      <title>Re: PrintTask and Graphics</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/printtask-and-graphics/m-p/26730#M2300</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;You need to wait until the map loads to add the graphics. So if you modify your sample to execute the query task when the map loads and add the points you should be ok.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; Thanks for your reply. I actually tried that but didn't succeed. What code should I use to do so and where should it be inserted/modified?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 11 Apr 2013 15:50:09 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/printtask-and-graphics/m-p/26730#M2300</guid>
      <dc:creator>DennisHunink</dc:creator>
      <dc:date>2013-04-11T15:50:09Z</dc:date>
    </item>
  </channel>
</rss>

