<?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 Need to run a queryTask as part of infoTemplate content in ArcGIS JavaScript Maps SDK Questions</title>
    <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/need-to-run-a-querytask-as-part-of-infotemplate/m-p/22532#M1958</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I know I need to have some sort of Deferred defined here, but I'm not sure where to insert it.&amp;nbsp; I have a point layer with school names and school districts.&amp;nbsp; I have a table that has the school districts and names again, plus results of testing for radon.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I do not have this set up as a relate in my service.&amp;nbsp; Names of schools are not unique across the state, and I have no unique ID provided in that table.&amp;nbsp; Instead, I need to be able to run a query on the table, and before showing the infoWindow, I want to capture the tabular data too and append it to the data coming from the graphic (name, address, city etc).&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Right now I only have one year's worth of data per school, but there is also the potential for additional years as time goes by.&lt;/P&gt;&lt;P&gt;My InfoTemplate definition:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//infoTemplates&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;var schoolPtInfoTemplate = new InfoTemplate("Test Results");
schoolPtInfoTemplate.setContent(myInfoTemplate.schoolInfoContent);&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;my pointLayer&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&amp;nbsp; app.pointLayer = new FeatureLayer (pathName+"/arcgis/rest/services/radonSchool/MapServer/0", {
&amp;nbsp; id: "schoolLayer",
&amp;nbsp; outFields: ["*"],
&amp;nbsp; infoTemplate: schoolPtInfoTemplate
&amp;nbsp; });&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//myInfoTemplate&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;define ([&amp;nbsp; 
"dojo/dom-construct",
"dojo/on",
"dojo/dom",
"dojo/Deferred"&amp;nbsp;&amp;nbsp; ,
"dojo/_base/array",
"dojo/_base/lang", 
"dojo/query",
"dojo/date/locale",
"dojo/number",
"esri/tasks/query",
"esri/tasks/QueryTask",
"js/myRelates"
&amp;nbsp; ] , function (domConstruct,on,dom,Deferred,arrayUtils, lang,query,locale,number, Query,QueryTask, myRelates) {&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; return {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; schoolInfoContent: function(graphic){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var currentGraphic = graphic;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var formatString = "";&amp;nbsp;&amp;nbsp; 
&amp;nbsp; var oid = graphic.attributes.OBJECTID;
&amp;nbsp; var ctyDist = graphic.attributes.CtyDist;
&amp;nbsp; var locTest = graphic.attributes.Loc_Code;
&amp;nbsp; var nm = graphic.attributes.Facility
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; formatString ="&amp;lt;b&amp;gt;" + graphic.attributes.Facility + "&amp;lt;/b&amp;gt;&amp;lt;br/&amp;gt;"
&amp;nbsp; + graphic.attributes.Address + "&amp;lt;br/&amp;gt;" 
&amp;nbsp; + graphic.attributes.City+ ", MO&amp;nbsp; " + graphic.attributes.ZIP

&amp;nbsp; var addedString = findSchRelatedRecords (nm, ctyDist);
&amp;nbsp; formatString += addedString;

&amp;nbsp; function findSchRelatedRecords (nm, id){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var schQuery = new Query;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var queryTask = new QueryTask(app.testTable.url);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var whereClause = "Facility = '" + nm + "' AND Dist_Code = '" + id + "'"; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; schQuery.where = whereClause;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; schQuery.returnGeometry = false;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; schQuery.outFields = ['*'];&amp;nbsp;&amp;nbsp;&amp;nbsp; 

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; queryTask.execute(schQuery, lang.hitch(this,function(results){ 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var addedString = " "; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var len = results.features.length;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (len = 0) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; addedString += "No test results found";
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }else {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrayUtils.forEach(results, function (r) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; addedString += "Start Year: " + r.attributes.ScholYearStart;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; });
&amp;nbsp; }

&amp;nbsp; })
&amp;nbsp; );
&amp;nbsp; return addedString;
&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return formatString;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } 
&amp;nbsp;&amp;nbsp;&amp;nbsp; }
});&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 10 Dec 2021 20:54:58 GMT</pubDate>
    <dc:creator>TracySchloss</dc:creator>
    <dc:date>2021-12-10T20:54:58Z</dc:date>
    <item>
      <title>Need to run a queryTask as part of infoTemplate content</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/need-to-run-a-querytask-as-part-of-infotemplate/m-p/22532#M1958</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I know I need to have some sort of Deferred defined here, but I'm not sure where to insert it.&amp;nbsp; I have a point layer with school names and school districts.&amp;nbsp; I have a table that has the school districts and names again, plus results of testing for radon.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I do not have this set up as a relate in my service.&amp;nbsp; Names of schools are not unique across the state, and I have no unique ID provided in that table.&amp;nbsp; Instead, I need to be able to run a query on the table, and before showing the infoWindow, I want to capture the tabular data too and append it to the data coming from the graphic (name, address, city etc).&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Right now I only have one year's worth of data per school, but there is also the potential for additional years as time goes by.&lt;/P&gt;&lt;P&gt;My InfoTemplate definition:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//infoTemplates&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;var schoolPtInfoTemplate = new InfoTemplate("Test Results");
schoolPtInfoTemplate.setContent(myInfoTemplate.schoolInfoContent);&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;my pointLayer&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&amp;nbsp; app.pointLayer = new FeatureLayer (pathName+"/arcgis/rest/services/radonSchool/MapServer/0", {
&amp;nbsp; id: "schoolLayer",
&amp;nbsp; outFields: ["*"],
&amp;nbsp; infoTemplate: schoolPtInfoTemplate
&amp;nbsp; });&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//myInfoTemplate&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;define ([&amp;nbsp; 
"dojo/dom-construct",
"dojo/on",
"dojo/dom",
"dojo/Deferred"&amp;nbsp;&amp;nbsp; ,
"dojo/_base/array",
"dojo/_base/lang", 
"dojo/query",
"dojo/date/locale",
"dojo/number",
"esri/tasks/query",
"esri/tasks/QueryTask",
"js/myRelates"
&amp;nbsp; ] , function (domConstruct,on,dom,Deferred,arrayUtils, lang,query,locale,number, Query,QueryTask, myRelates) {&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; return {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; schoolInfoContent: function(graphic){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var currentGraphic = graphic;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var formatString = "";&amp;nbsp;&amp;nbsp; 
&amp;nbsp; var oid = graphic.attributes.OBJECTID;
&amp;nbsp; var ctyDist = graphic.attributes.CtyDist;
&amp;nbsp; var locTest = graphic.attributes.Loc_Code;
&amp;nbsp; var nm = graphic.attributes.Facility
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; formatString ="&amp;lt;b&amp;gt;" + graphic.attributes.Facility + "&amp;lt;/b&amp;gt;&amp;lt;br/&amp;gt;"
&amp;nbsp; + graphic.attributes.Address + "&amp;lt;br/&amp;gt;" 
&amp;nbsp; + graphic.attributes.City+ ", MO&amp;nbsp; " + graphic.attributes.ZIP

&amp;nbsp; var addedString = findSchRelatedRecords (nm, ctyDist);
&amp;nbsp; formatString += addedString;

&amp;nbsp; function findSchRelatedRecords (nm, id){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var schQuery = new Query;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var queryTask = new QueryTask(app.testTable.url);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var whereClause = "Facility = '" + nm + "' AND Dist_Code = '" + id + "'"; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; schQuery.where = whereClause;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; schQuery.returnGeometry = false;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; schQuery.outFields = ['*'];&amp;nbsp;&amp;nbsp;&amp;nbsp; 

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; queryTask.execute(schQuery, lang.hitch(this,function(results){ 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var addedString = " "; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var len = results.features.length;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (len = 0) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; addedString += "No test results found";
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }else {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrayUtils.forEach(results, function (r) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; addedString += "Start Year: " + r.attributes.ScholYearStart;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; });
&amp;nbsp; }

&amp;nbsp; })
&amp;nbsp; );
&amp;nbsp; return addedString;
&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return formatString;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } 
&amp;nbsp;&amp;nbsp;&amp;nbsp; }
});&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 20:54:58 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/need-to-run-a-querytask-as-part-of-infotemplate/m-p/22532#M1958</guid>
      <dc:creator>TracySchloss</dc:creator>
      <dc:date>2021-12-10T20:54:58Z</dc:date>
    </item>
  </channel>
</rss>

