<?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: keep the original order of FLEX Datagrid columns in ArcGIS API for Flex Questions</title>
    <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601828#M13409</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Farhad,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I could use your sample code with a small change. I declared gridColumns as Array instead of ArrayCollection.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;If your code works - very well. Good luck.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;from adobe &lt;/SPAN&gt;&lt;A href="http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/spark/components/DataGrid.html#columns" rel="nofollow noopener noreferrer" target="_blank"&gt;reference&lt;/A&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;&lt;BR /&gt;&lt;STRONG&gt;columns&lt;/STRONG&gt; property&lt;BR /&gt;columns:&lt;A href="http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mx/collections/IList.html" rel="nofollow noopener noreferrer" target="_blank"&gt;IList&lt;/A&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;that's why I use &lt;/SPAN&gt;&lt;SPAN style="font-style:italic;"&gt;ArrayCollection&lt;/SPAN&gt;&lt;SPAN&gt;�?�&lt;/SPAN&gt;&lt;SPAN style="font-style:italic;"&gt;ListCollectionView&lt;/SPAN&gt;&lt;SPAN&gt;�?�&lt;/SPAN&gt;&lt;SPAN style="font-style:italic;"&gt;IList&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;My compiler reports an error if Array used&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
1067: Implicit coercion of a value of type Array to an unrelated type mx.collections:IList. ...&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 12 Dec 2021 01:48:32 GMT</pubDate>
    <dc:creator>IvanBespalov</dc:creator>
    <dc:date>2021-12-12T01:48:32Z</dc:date>
    <item>
      <title>keep the original order of FLEX Datagrid columns</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601820#M13401</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi there,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have an application which retrieve the data from the SDE, and displays it in a dynamically created Datagrid. the data is retrieved correctly, but the columns are ordered alphabetically, which is not the way I need. I need to keep the original order of the data columns as it is defined in the query statement. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Any help appreciated.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Mar 2012 17:42:00 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601820#M13401</guid>
      <dc:creator>FarhadNavaei</dc:creator>
      <dc:date>2012-03-06T17:42:00Z</dc:date>
    </item>
    <item>
      <title>Re: keep the original order of FLEX Datagrid columns</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601821#M13402</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Farhad,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/spark/components/DataGrid.html" rel="nofollow noopener noreferrer" target="_blank"&gt;spark.components.DataGrid&lt;/A&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&amp;lt;s:DataGrid&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:columns&amp;gt; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:ArrayList&amp;gt;
&lt;SPAN style="color:&amp;quot;#B22222&amp;quot;;"&gt;&amp;lt;!-- Define columns propeties here --&amp;gt;&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:GridColumn dataField="filedName4"/&amp;gt; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:GridColumn dataField="filedName2"/&amp;gt; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:GridColumn dataField="filedName1"/&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:GridColumn dataField="filedName3"/&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/s:ArrayList&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/s:columns&amp;gt; 
&amp;lt;/s:DataGrid&amp;gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 01:48:21 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601821#M13402</guid>
      <dc:creator>IvanBespalov</dc:creator>
      <dc:date>2021-12-12T01:48:21Z</dc:date>
    </item>
    <item>
      <title>Re: keep the original order of FLEX Datagrid columns</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601822#M13403</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thank you Ivan for your response, but the problem is I don't define the columns in the code. The columns come from the query results and are set dynamically. Is there any way that we can keep the order of the columns?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Mar 2012 21:54:07 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601822#M13403</guid>
      <dc:creator>FarhadNavaei</dc:creator>
      <dc:date>2012-03-09T21:54:07Z</dc:date>
    </item>
    <item>
      <title>Re: keep the original order of FLEX Datagrid columns</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601823#M13404</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Farhad,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt; ... I don't define the columns in the code ...&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;So where is this place you define it?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt; ... The columns come from the query results and are set dynamically ...&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;I have not found documentation that confirms this statement. :confused:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Query result is &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://help.arcgis.com/en/webapi/flex/apiref/com/esri/ags/FeatureSet.html" rel="nofollow" target="_blank"&gt;feature set&lt;/A&gt;&lt;SPAN&gt;. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Try it, may be it helps you.&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt; &amp;lt;s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:s="library://ns.adobe.com/flex/spark"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:mx="library://ns.adobe.com/flex/mx"&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;!-- Adobe Flex SDK 4.5.1 --&amp;gt;&amp;nbsp; &amp;lt;!-- ArcGIS API for Flex 2.5 --&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;!-- http://web.zone.ee/bespiva/queryresults/ --&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:layout&amp;gt; &amp;nbsp; &amp;lt;s:VerticalLayout gap="10" &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingLeft="10" &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingBottom="10" &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingRight="10" &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingTop="10"/&amp;gt;&amp;nbsp; &amp;lt;/s:layout&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;fx:Script&amp;gt; &amp;nbsp; &amp;lt;![CDATA[ &amp;nbsp;&amp;nbsp; import com.esri.ags.FeatureSet; &amp;nbsp;&amp;nbsp; import com.esri.ags.Graphic; &amp;nbsp;&amp;nbsp; import com.esri.ags.events.LayerEvent; &amp;nbsp;&amp;nbsp; import com.esri.ags.layers.FeatureLayer; &amp;nbsp;&amp;nbsp; import com.esri.ags.layers.supportClasses.Field; &amp;nbsp;&amp;nbsp; import com.esri.ags.tasks.supportClasses.Query; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; import mx.collections.ArrayCollection; &amp;nbsp;&amp;nbsp; import mx.rpc.AsyncResponder; &amp;nbsp;&amp;nbsp; import mx.rpc.Fault; &amp;nbsp;&amp;nbsp; import mx.utils.StringUtil; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; import spark.components.gridClasses.GridColumn; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; [Bindable] &amp;nbsp;&amp;nbsp; private var gridSource:ArrayCollection = new ArrayCollection(); &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; [Bindable] &amp;nbsp;&amp;nbsp; private var gridColumns:ArrayCollection = new ArrayCollection(); &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; private var queryLayer:FeatureLayer = null; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; private function initializeLayer():void &amp;nbsp;&amp;nbsp; { &amp;nbsp;&amp;nbsp;&amp;nbsp; queryLayer = new FeatureLayer(txtServiceUrl.text); &amp;nbsp;&amp;nbsp;&amp;nbsp; queryLayer.mode = FeatureLayer.MODE_ON_DEMAND; &amp;nbsp;&amp;nbsp;&amp;nbsp; queryLayer.outFields = new Array("*"); &amp;nbsp;&amp;nbsp;&amp;nbsp; queryLayer.addEventListener(LayerEvent.LOAD, onLayerLoaded, false, 0, true); &amp;nbsp;&amp;nbsp;&amp;nbsp; dispatchEvent(new LayerEvent(LayerEvent.LOAD, queryLayer)); &amp;nbsp;&amp;nbsp; } &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; protected function onLayerLoaded(event:LayerEvent):void &amp;nbsp;&amp;nbsp; { &amp;nbsp;&amp;nbsp;&amp;nbsp; queryLayer.removeEventListener(LayerEvent.LOAD, onLayerLoaded); &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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; txtServiceUrl.editable = false; &amp;nbsp;&amp;nbsp;&amp;nbsp; executeQuery(); &amp;nbsp;&amp;nbsp; } &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; protected function onExecuteButtonClick(event:MouseEvent):void &amp;nbsp;&amp;nbsp; { &amp;nbsp;&amp;nbsp;&amp;nbsp; if (queryLayer != null &amp;amp;&amp;amp; queryLayer.loaded) &amp;nbsp;&amp;nbsp;&amp;nbsp; { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; executeQuery(); &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; initializeLayer(); &amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;nbsp;&amp;nbsp; } &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; private function executeQuery():void &amp;nbsp;&amp;nbsp; { &amp;nbsp;&amp;nbsp;&amp;nbsp; var query:Query = new Query(); &amp;nbsp;&amp;nbsp;&amp;nbsp; query.where = txtWhere.text; &amp;nbsp;&amp;nbsp;&amp;nbsp; query.returnGeometry = false; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; var outs:Array = StringUtil.trim(txtOuts.text).split(","); &amp;nbsp;&amp;nbsp;&amp;nbsp; query.outFields = queryLayer.outFields = outs; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; queryLayer.queryFeatures(query, new AsyncResponder(onQueryResult, onQueryFault)); &amp;nbsp;&amp;nbsp; } &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; protected function onQueryResult(featureSet:FeatureSet, token:Object = null):void &amp;nbsp;&amp;nbsp; { &amp;nbsp;&amp;nbsp;&amp;nbsp; gridSource = new ArrayCollection(); &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;&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;&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lblResultsCount.text = StringUtil.substitute("Found: {0} features.", featureSet.features.length); &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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; for each(var gr:Graphic in featureSet.features) &amp;nbsp;&amp;nbsp;&amp;nbsp; { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gridSource.addItem(gr.attributes); &amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;nbsp;&amp;nbsp;&amp;nbsp; gridSource.refresh(); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; gridColumns = new ArrayCollection(); &amp;nbsp;&amp;nbsp;&amp;nbsp; for each (var field:Field in featureSet.fields) &amp;nbsp;&amp;nbsp;&amp;nbsp; { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var gridColumn:GridColumn = new GridColumn(field.alias); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gridColumns.addItem(gridColumn); &amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;nbsp;&amp;nbsp;&amp;nbsp; gridColumns.refresh(); &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; &amp;nbsp;&amp;nbsp; protected function onQueryFault(fault:Fault, token:Object = null):void &amp;nbsp;&amp;nbsp; { &amp;nbsp;&amp;nbsp;&amp;nbsp; trace(fault.getStackTrace()); &amp;nbsp;&amp;nbsp; } &amp;nbsp; ]]&amp;gt;&amp;nbsp; &amp;lt;/fx:Script&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:Panel width="100%"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; title="Query parameters"&amp;gt; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;lt;s:VGroup gap="5"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingLeft="5"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingTop="5"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingRight="5"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingBottom="5"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; width="100%"&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;lt;s:HGroup width="100%"&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:Label text="Url:"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; width="150" /&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:TextInput id="txtServiceUrl" &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; width="100%" &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text="http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Census_USA/MapServer/5" /&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;lt;/s:HGroup&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;lt;s:HGroup width="100%"&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:Label text="Where clause:"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; width="150" /&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:TextInput id="txtWhere"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; width="100%" &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text="1=1" /&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;lt;/s:HGroup&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;lt;s:HGroup width="100%"&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:Label text="Out fields (CSV):"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; width="150" /&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:TextInput id="txtOuts"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; width="100%" &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text="STATE_NAME,STATE_FIPS,SUB_REGION,STATE_ABBR,POP2000,POP2007" /&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;lt;/s:HGroup&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;lt;s:HGroup width="100%"&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:Button label="Execute" click="onExecuteButtonClick(event)" /&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;lt;/s:HGroup&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;lt;/s:VGroup&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/s:Panel&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:Panel title="Results"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; width="100%" &amp;nbsp;&amp;nbsp;&amp;nbsp; height="100%"&amp;gt; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;lt;s:VGroup gap="5"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingLeft="5"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingTop="5"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingRight="5"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingBottom="5"&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; width="100%" &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; height="100%"&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;lt;s:Label id="lblResultsCount" /&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;lt;s:DataGrid width="100%" &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; height="100%" &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dataProvider="{gridSource}" &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; columns="{gridColumns}"/&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;lt;/s:VGroup&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/s:Panel&amp;gt;&amp;nbsp;&amp;nbsp; &amp;lt;/s:Application&amp;gt;&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Mar 2012 20:35:47 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601823#M13404</guid>
      <dc:creator>IvanBespalov</dc:creator>
      <dc:date>2012-03-12T20:35:47Z</dc:date>
    </item>
    <item>
      <title>Re: keep the original order of FLEX Datagrid columns</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601824#M13405</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Ivan,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I tried to use the code you sent, there is no FeatureSet in my code. the data come from a SQL statement which is passed directly to MS SQL server.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Sorry, I'm new in Flash Builder. I didn't develop the code, but I have to improve it.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I tried to use the same logic in your code, but I couldn't find any way to control the fields in the event.results.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I think if I can control the columns in event.results.results.record (see mssqlResult), then I can use the same logic and pass the columns into the datagrid.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Does it make any sense?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
[Bindable]
private var dataGridAC:ArrayCollection = new ArrayCollection();

private var floatGrid:queryWidgetDG;

public function mssqlQuery(sql:String,fid:String):void {
 var http:HTTPService = new HTTPService;
 var parm:Object = new Object;
 parm.fas_sql = sql;
 parm.fas_db = mssql_db; 
 http.url = mssql_url+"?irand="+Math.random();
 http.showBusyCursor = true;
 http.request = sql;
 http.addEventListener(ResultEvent.RESULT, mssqlResult);
 http.addEventListener(FaultEvent.FAULT, mssqlFault);
 http.method = "POST";
 sqlToken = http.send(parm);
 sqlToken.param = fid;
}

private function mssqlResult(event:ResultEvent):void{
 if (event.result.results){
&amp;nbsp; dataGridAC.removeAll();
&amp;nbsp; dataGridAC = event.result.results.record;
&amp;nbsp; getgridData();
 }else{
&amp;nbsp; Alert.show("No data found");
 }

}

private function getgridData():void{

 PopUpManager.removePopUp(floatGrid);
 floatGrid.btnString = "StationID";
 floatGrid.stringTitle = "Temperature" + " Data at " + wqStreamNameList.selectedItem.StreamName;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 

 floatGrid.data = dataGridAC;

 showGrid();
}

//this function will add the grid to the app
protected function showGrid():void{
 if(!floatGrid){
&amp;nbsp; floatGrid = queryWidgetDG(PopUpManager.createPopUp(map,queryWidgetDG,false));
&amp;nbsp; PopUpManager.centerPopUp(floatGrid);
&amp;nbsp; //myChart = queryWidgetChart(PopUpManager.createPopUp(map,queryWidgetChart,false));
 }else{
&amp;nbsp; PopUpManager.addPopUp(floatGrid,map,false);
&amp;nbsp; PopUpManager.centerPopUp(floatGrid);
&amp;nbsp; // PopUpManager.addPopUp(queryWidgetChart,map,false);
 }
}
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 01:48:24 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601824#M13405</guid>
      <dc:creator>CarlosFelix</dc:creator>
      <dc:date>2021-12-12T01:48:24Z</dc:date>
    </item>
    <item>
      <title>Re: keep the original order of FLEX Datagrid columns</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601825#M13406</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Ivan,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I tried to use the code you sent, but there is no FeatureSet in my code. The data come from a SQL statement which is passed directly to MS SQL server.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Sorry, I'm new in Flash Builder. I didn't develop the code, but I have to improve it.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I tried to use the same logic, but I couldn't find any way to control the fields in the event.results.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I think if I can control the columns in event.results.results.record (see mssqlResult), then I can use the same logic and pass the columns into the datagrid.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Does it make any sense?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
[Bindable]
private var dataGridAC:ArrayCollection = new ArrayCollection();

private var floatGrid:queryWidgetDG;

public function mssqlQuery(sql:String,fid:String):void {
 var http:HTTPService = new HTTPService;
 var parm:Object = new Object;
 parm.fas_sql = sql;
 parm.fas_db = mssql_db; 
 http.url = mssql_url+"?irand="+Math.random();
 http.showBusyCursor = true;
 http.request = sql;
 http.addEventListener(ResultEvent.RESULT, mssqlResult);
 http.addEventListener(FaultEvent.FAULT, mssqlFault);
 http.method = "POST";
 sqlToken = http.send(parm);
 sqlToken.param = fid;
}

private function mssqlResult(event:ResultEvent):void{
 if (event.result.results){
&amp;nbsp; dataGridAC.removeAll();
&amp;nbsp; dataGridAC = event.result.results.record;
&amp;nbsp; getgridData();
 }else{
&amp;nbsp; Alert.show("No data found");
 }

}

private function getgridData():void{

 PopUpManager.removePopUp(floatGrid);
 floatGrid.btnString = "StationID";
 floatGrid.stringTitle = "Temperature" + " Data at " + wqStreamNameList.selectedItem.StreamName;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 

 floatGrid.data = dataGridAC;

 showGrid();
}

//this function will add the grid to the app
protected function showGrid():void{
 if(!floatGrid){
&amp;nbsp; floatGrid = queryWidgetDG(PopUpManager.createPopUp(map,queryWidgetDG,false));
&amp;nbsp; PopUpManager.centerPopUp(floatGrid);
&amp;nbsp; //myChart = queryWidgetChart(PopUpManager.createPopUp(map,queryWidgetChart,false));
 }else{
&amp;nbsp; PopUpManager.addPopUp(floatGrid,map,false);
&amp;nbsp; PopUpManager.centerPopUp(floatGrid);
&amp;nbsp; // PopUpManager.addPopUp(queryWidgetChart,map,false);
 }
}
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 01:48:27 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601825#M13406</guid>
      <dc:creator>FarhadNavaei</dc:creator>
      <dc:date>2021-12-12T01:48:27Z</dc:date>
    </item>
    <item>
      <title>Re: keep the original order of FLEX Datagrid columns</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601826#M13407</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;you dont have to remove all?&amp;nbsp; just bind the data provider to the results, provided the column names are the same as your query field names&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 22 Mar 2012 14:56:47 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601826#M13407</guid>
      <dc:creator>karldailey</dc:creator>
      <dc:date>2012-03-22T14:56:47Z</dc:date>
    </item>
    <item>
      <title>Re: keep the original order of FLEX Datagrid columns</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601827#M13408</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Ivan,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I could use your sample code with a small change. I declared gridColumns as Array instead of ArrayCollection.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; [Bindable]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; private var gridColumns:Array = [];&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt; Farhad,&amp;nbsp; &lt;BR /&gt; &lt;BR /&gt; &lt;BR /&gt;So where is this place you define it?&amp;nbsp; &lt;BR /&gt; &lt;BR /&gt; &lt;BR /&gt;I have not found documentation that confirms this statement. :confused:&amp;nbsp; &lt;BR /&gt; &lt;BR /&gt;Query result is&amp;nbsp;&amp;nbsp; &lt;A href="http://help.arcgis.com/en/webapi/flex/apiref/com/esri/ags/FeatureSet.html" rel="nofollow noopener noreferrer" target="_blank"&gt;feature set&lt;/A&gt;.&amp;nbsp;&amp;nbsp; &lt;BR /&gt; &lt;BR /&gt;Try it, may be it helps you.&amp;nbsp; &lt;BR /&gt; &lt;PRE class="lia-code-sample line-numbers language-none"&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;
&amp;lt;s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:s="library://ns.adobe.com/flex/spark" 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:mx="library://ns.adobe.com/flex/mx"&amp;gt;
 
 &amp;lt;!-- Adobe Flex SDK 4.5.1 --&amp;gt;
 &amp;lt;!-- ArcGIS API for Flex 2.5 --&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;!-- http://web.zone.ee/bespiva/queryresults/ --&amp;gt; 

 &amp;lt;s:layout&amp;gt;
&amp;nbsp; &amp;lt;s:VerticalLayout gap="10"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingLeft="10"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingBottom="10"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingRight="10"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingTop="10"/&amp;gt;
 &amp;lt;/s:layout&amp;gt;
 
 &amp;lt;fx:Script&amp;gt;
&amp;nbsp; &amp;lt;![CDATA[
&amp;nbsp;&amp;nbsp; import com.esri.ags.FeatureSet;
&amp;nbsp;&amp;nbsp; import com.esri.ags.Graphic;
&amp;nbsp;&amp;nbsp; import com.esri.ags.events.LayerEvent;
&amp;nbsp;&amp;nbsp; import com.esri.ags.layers.FeatureLayer;
&amp;nbsp;&amp;nbsp; import com.esri.ags.layers.supportClasses.Field;
&amp;nbsp;&amp;nbsp; import com.esri.ags.tasks.supportClasses.Query;
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; import mx.collections.ArrayCollection;
&amp;nbsp;&amp;nbsp; import mx.rpc.AsyncResponder;
&amp;nbsp;&amp;nbsp; import mx.rpc.Fault;
&amp;nbsp;&amp;nbsp; import mx.utils.StringUtil;
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; import spark.components.gridClasses.GridColumn;
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; [Bindable]
&amp;nbsp;&amp;nbsp; private var gridSource:ArrayCollection = new ArrayCollection();
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; [Bindable]
&amp;nbsp;&amp;nbsp; private var gridColumns:ArrayCollection = new ArrayCollection();
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; private var queryLayer:FeatureLayer = null;
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; private function initializeLayer():void
&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp; queryLayer = new FeatureLayer(txtServiceUrl.text);
&amp;nbsp;&amp;nbsp;&amp;nbsp; queryLayer.mode = FeatureLayer.MODE_ON_DEMAND;
&amp;nbsp;&amp;nbsp;&amp;nbsp; queryLayer.outFields = new Array("*");
&amp;nbsp;&amp;nbsp;&amp;nbsp; queryLayer.addEventListener(LayerEvent.LOAD, onLayerLoaded, false, 0, true);
&amp;nbsp;&amp;nbsp;&amp;nbsp; dispatchEvent(new LayerEvent(LayerEvent.LOAD, queryLayer));
&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; protected function onLayerLoaded(event:LayerEvent):void
&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp; queryLayer.removeEventListener(LayerEvent.LOAD, onLayerLoaded);
&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; txtServiceUrl.editable = false;
&amp;nbsp;&amp;nbsp;&amp;nbsp; executeQuery();
&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; protected function onExecuteButtonClick(event:MouseEvent):void
&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp; if (queryLayer != null &amp;amp;&amp;amp; queryLayer.loaded)
&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; executeQuery();
&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; initializeLayer();
&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; private function executeQuery():void
&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp; var query:Query = new Query();
&amp;nbsp;&amp;nbsp;&amp;nbsp; query.where = txtWhere.text;
&amp;nbsp;&amp;nbsp;&amp;nbsp; query.returnGeometry = false;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; var outs:Array = StringUtil.trim(txtOuts.text).split(",");
&amp;nbsp;&amp;nbsp;&amp;nbsp; query.outFields = queryLayer.outFields = outs;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; queryLayer.queryFeatures(query, new AsyncResponder(onQueryResult, onQueryFault));
&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; protected function onQueryResult(featureSet:FeatureSet, token:Object = null):void
&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp; gridSource = new ArrayCollection();
&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;&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;&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lblResultsCount.text = StringUtil.substitute("Found: {0} features.", featureSet.features.length);
&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; for each(var gr:Graphic in featureSet.features)
&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gridSource.addItem(gr.attributes);
&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp; gridSource.refresh();
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color:&amp;quot;#FF0000&amp;quot;;"&gt;gridColumns = new ArrayCollection();
&amp;nbsp;&amp;nbsp;&amp;nbsp; for each (var field:Field in featureSet.fields)
&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var gridColumn:GridColumn = new GridColumn(field.alias);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gridColumns.addItem(gridColumn);
&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp; gridColumns.refresh();&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; protected function onQueryFault(fault:Fault, token:Object = null):void
&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp; trace(fault.getStackTrace());
&amp;nbsp;&amp;nbsp; }
&amp;nbsp; ]]&amp;gt;
 &amp;lt;/fx:Script&amp;gt;
 
 
 &amp;lt;s:Panel width="100%" 
&amp;nbsp;&amp;nbsp;&amp;nbsp; title="Query parameters"&amp;gt;
&amp;nbsp; 
&amp;nbsp; &amp;lt;s:VGroup gap="5" 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingLeft="5" 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingTop="5" 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingRight="5" 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingBottom="5" 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; width="100%"&amp;gt;
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; &amp;lt;s:HGroup width="100%"&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:Label text="Url:" 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; width="150" /&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:TextInput id="txtServiceUrl"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; width="100%"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text="http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Census_USA/MapServer/5" /&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; &amp;lt;/s:HGroup&amp;gt;
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; &amp;lt;s:HGroup width="100%"&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:Label text="Where clause:" 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; width="150" /&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:TextInput id="txtWhere" 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; width="100%"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text="1=1" /&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; &amp;lt;/s:HGroup&amp;gt;
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; &amp;lt;s:HGroup width="100%"&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:Label text="Out fields (CSV):" 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; width="150" /&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:TextInput id="txtOuts" 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; width="100%"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text="STATE_NAME,STATE_FIPS,SUB_REGION,STATE_ABBR,POP2000,POP2007" /&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; &amp;lt;/s:HGroup&amp;gt;
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; &amp;lt;s:HGroup width="100%"&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;s:Button label="Execute" click="onExecuteButtonClick(event)" /&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; &amp;lt;/s:HGroup&amp;gt;
&amp;nbsp;&amp;nbsp; 
&amp;nbsp; &amp;lt;/s:VGroup&amp;gt;
&amp;nbsp; 
 &amp;lt;/s:Panel&amp;gt;
 
 &amp;lt;s:Panel title="Results" 
&amp;nbsp;&amp;nbsp;&amp;nbsp; width="100%"
&amp;nbsp;&amp;nbsp;&amp;nbsp; height="100%"&amp;gt;
&amp;nbsp; 
&amp;nbsp; &amp;lt;s:VGroup gap="5" 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingLeft="5" 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingTop="5" 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingRight="5" 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paddingBottom="5" 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; width="100%"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; height="100%"&amp;gt;
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; &amp;lt;s:Label id="lblResultsCount" /&amp;gt;
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; &amp;lt;s:DataGrid width="100%"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; height="100%"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dataProvider="{gridSource}"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; columns="{gridColumns}"/&amp;gt;
&amp;nbsp;&amp;nbsp; 
&amp;nbsp; &amp;lt;/s:VGroup&amp;gt;
&amp;nbsp; 
 &amp;lt;/s:Panel&amp;gt;
 
&amp;lt;/s:Application&amp;gt;
&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 01:48:29 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601827#M13408</guid>
      <dc:creator>FarhadNavaei</dc:creator>
      <dc:date>2021-12-12T01:48:29Z</dc:date>
    </item>
    <item>
      <title>Re: keep the original order of FLEX Datagrid columns</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601828#M13409</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Farhad,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I could use your sample code with a small change. I declared gridColumns as Array instead of ArrayCollection.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;If your code works - very well. Good luck.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;from adobe &lt;/SPAN&gt;&lt;A href="http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/spark/components/DataGrid.html#columns" rel="nofollow noopener noreferrer" target="_blank"&gt;reference&lt;/A&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;&lt;BR /&gt;&lt;STRONG&gt;columns&lt;/STRONG&gt; property&lt;BR /&gt;columns:&lt;A href="http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mx/collections/IList.html" rel="nofollow noopener noreferrer" target="_blank"&gt;IList&lt;/A&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;that's why I use &lt;/SPAN&gt;&lt;SPAN style="font-style:italic;"&gt;ArrayCollection&lt;/SPAN&gt;&lt;SPAN&gt;�?�&lt;/SPAN&gt;&lt;SPAN style="font-style:italic;"&gt;ListCollectionView&lt;/SPAN&gt;&lt;SPAN&gt;�?�&lt;/SPAN&gt;&lt;SPAN style="font-style:italic;"&gt;IList&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;My compiler reports an error if Array used&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
1067: Implicit coercion of a value of type Array to an unrelated type mx.collections:IList. ...&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 01:48:32 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/keep-the-original-order-of-flex-datagrid-columns/m-p/601828#M13409</guid>
      <dc:creator>IvanBespalov</dc:creator>
      <dc:date>2021-12-12T01:48:32Z</dc:date>
    </item>
  </channel>
</rss>

