<?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: Export/download non-spatial tables to runtime geodatabase in Qt Maps SDK Questions</title>
    <link>https://community.esri.com/t5/qt-maps-sdk-questions/export-download-non-spatial-tables-to-runtime/m-p/490023#M2457</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Marc- good catch.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As for your follow up question, do you have a proposal or some pseudocode of what you would like to do? From what I understand, you are able to get the IDs of the layers and tables in the service, so you should be able to loop through each of these and create appropriate layer options for each list. Let me know what you're thinking.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 21 Sep 2017 13:13:02 GMT</pubDate>
    <dc:creator>LucasDanzinger</dc:creator>
    <dc:date>2017-09-21T13:13:02Z</dc:date>
    <item>
      <title>Export/download non-spatial tables to runtime geodatabase</title>
      <link>https://community.esri.com/t5/qt-maps-sdk-questions/export-download-non-spatial-tables-to-runtime/m-p/490018#M2452</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have published a feature service which has both spatial layers and non-spatial tables.&lt;/P&gt;&lt;P&gt;Next, I want to generate a runtime .geodatabase using&amp;nbsp;&lt;STRONG&gt;GenerateGeodatabaseJob::generateGeodatabase(parameters, fileLocation)&lt;/STRONG&gt;.&lt;/P&gt;&lt;P&gt;The parameters are generated with&amp;nbsp;&lt;STRONG&gt;GeodatabaseSyncTask::createDefaultGenerateGeodatabaseParameters()&lt;/STRONG&gt;.&lt;STRONG&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;The documentation of this method says&amp;nbsp;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;P class="jive_macro_quote jive-quote jive_text_macro"&gt;All layers from the service will be included&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;But also&amp;nbsp;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;Related tables and layers are not included.&lt;/BLOCKQUOTE&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;I guess this included non-spatial tables.&lt;/P&gt;&lt;P&gt;To fix this, I set the GenerateLayerOption.setUseGeometry to False, and add a whereClause to select everything ("1=1").&lt;/P&gt;&lt;P&gt;But still, I get the following error :&lt;/P&gt;&lt;PRE&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;STRONG&gt;Unable to create replica. Please check your parameters." : "Exporting data for layer 10 failed."&lt;/STRONG&gt;&lt;/BLOCKQUOTE&gt;&lt;/PRE&gt;&lt;P&gt;First of all, is it possible to download non-spatial tables with these methods ?&lt;/P&gt;&lt;P&gt;And if yes, which settings do I need to change ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;All suggestions are welcome.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PS :&amp;nbsp;There is an "ugly"&amp;nbsp;workaround, but I like to avoid it : convert all non-spatial tables to feature tables, by adding a shape field with 1 point &lt;IMG src="https://community.esri.com/legacyfs/online/emoticons/confused.png" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 20 Sep 2017 12:00:56 GMT</pubDate>
      <guid>https://community.esri.com/t5/qt-maps-sdk-questions/export-download-non-spatial-tables-to-runtime/m-p/490018#M2452</guid>
      <dc:creator>MarcWouters</dc:creator>
      <dc:date>2017-09-20T12:00:56Z</dc:date>
    </item>
    <item>
      <title>Re: Export/download non-spatial tables to runtime geodatabase</title>
      <link>https://community.esri.com/t5/qt-maps-sdk-questions/export-download-non-spatial-tables-to-runtime/m-p/490019#M2453</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Marc-&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This should be possible without the workaround you suggest. See the suggestion here - &lt;A class="link-titled" href="https://developers.arcgis.com/qt/latest/cpp/api-reference/esri-arcgisruntime-generategeodatabaseparameters.html#setLayerOptions" title="https://developers.arcgis.com/qt/latest/cpp/api-reference/esri-arcgisruntime-generategeodatabaseparameters.html#setLayerOptions"&gt;GenerateGeodatabaseParameters Class | ArcGIS for Developers&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;"&lt;SPAN style="color: #4c4c4c; background-color: #ffffff; font-size: 17px;"&gt;For non-spatial records, set GenerateLayerOption::useGeometry to &lt;/SPAN&gt;&lt;CODE style="color: #595959; background-color: #f8f8f8; border: 1px solid #efefef; font-size: 0.85em; padding: 0.25rem;"&gt;false&lt;/CODE&gt;&lt;SPAN style="color: #4c4c4c; background-color: #ffffff; font-size: 17px;"&gt; and provide a &lt;/SPAN&gt;&lt;A href="https://developers.arcgis.com/qt/latest/cpp/api-reference/esri-arcgisruntime-generatelayeroption.html#whereClause" style="color: #0079c1; font-size: 17px;"&gt;GenerateLayerOption::whereClause&lt;/A&gt;&lt;SPAN style="color: #4c4c4c; background-color: #ffffff; font-size: 17px;"&gt;."&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 20 Sep 2017 14:49:38 GMT</pubDate>
      <guid>https://community.esri.com/t5/qt-maps-sdk-questions/export-download-non-spatial-tables-to-runtime/m-p/490019#M2453</guid>
      <dc:creator>LucasDanzinger</dc:creator>
      <dc:date>2017-09-20T14:49:38Z</dc:date>
    </item>
    <item>
      <title>Re: Export/download non-spatial tables to runtime geodatabase</title>
      <link>https://community.esri.com/t5/qt-maps-sdk-questions/export-download-non-spatial-tables-to-runtime/m-p/490020#M2454</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Luke,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've tried that already, without success. Perhaps my whereClause is not valid ?&lt;/P&gt;&lt;P&gt;(but I've successfully used this in other queries).&lt;/P&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier, monospace;"&gt;params.setSyncModel(SyncModel::Layer);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier, monospace;"&gt;QList&amp;lt;GenerateLayerOption&amp;gt; glo = params.layerOptions();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: 'courier new', courier, monospace;"&gt; for (int i = 0; i &amp;lt; glo.size(); ++i) { &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: 'courier new', courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;glo&lt;I&gt;.setQueryOption(GenerateLayerQueryOption::All);&lt;/I&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: 'courier new', courier, monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;if (i &amp;gt; 10) {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// the first layers do have geometry&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: 'courier new', courier, monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;glo&lt;I&gt;.setUseGeometry(false);&lt;/I&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: 'courier new', courier, monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;glo&lt;I&gt;.setWhereClause("1=1");&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: 'courier new', courier, monospace;"&gt; }&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Do I need to change something else ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 20 Sep 2017 14:58:15 GMT</pubDate>
      <guid>https://community.esri.com/t5/qt-maps-sdk-questions/export-download-non-spatial-tables-to-runtime/m-p/490020#M2454</guid>
      <dc:creator>MarcWouters</dc:creator>
      <dc:date>2017-09-20T14:58:15Z</dc:date>
    </item>
    <item>
      <title>Re: Export/download non-spatial tables to runtime geodatabase</title>
      <link>https://community.esri.com/t5/qt-maps-sdk-questions/export-download-non-spatial-tables-to-runtime/m-p/490021#M2455</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;We have a test that does this. I just ran it, and it successfully generated the gdb with the table. Here is the code:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="comment token"&gt;// Create default generate geodatabase parameters&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;auto&lt;/SPAN&gt; geodatabaseSyncTask &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; std&lt;SPAN class="operator token"&gt;::&lt;/SPAN&gt;unique_ptr&lt;SPAN class="operator token"&gt;&amp;lt;&lt;/SPAN&gt;GeodatabaseSyncTask&lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="keyword token"&gt;new&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;GeodatabaseSyncTask&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;url_standAloneTable&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;this&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
&lt;SPAN class="token function"&gt;VERIFY2&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;TestObject&lt;SPAN class="operator token"&gt;::&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;waitForLoadableInit&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;geodatabaseSyncTask&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;get&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"Sync task did not initialize, tests will fail"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

Envelope &lt;SPAN class="token function"&gt;env&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1.36572476878E7&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1.15446130221E7&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;4281966740&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;1.41330105216E7&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;SpatialReference&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;102100&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;// A GenerateLayerOption must be specified, otherwise generateGeodatabaseAsync() throws an exception&lt;/SPAN&gt;
GenerateLayerOption option&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
option&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;setLayerId&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
option&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;setWhereClause&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"1=1"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

GenerateGeodatabaseParameters params&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
params&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;setLayerOptions&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;QList&lt;SPAN class="operator token"&gt;&amp;lt;&lt;/SPAN&gt;GenerateLayerOption&lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;&amp;lt;&amp;lt;&lt;/SPAN&gt; option&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;// An extent must be specified, because "Geometry cannot be null in generate geodatabase parameters"&lt;/SPAN&gt;
params&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;setExtent&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;env&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

QString path &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; QDir&lt;SPAN class="operator token"&gt;::&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;tempPath&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;QString&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"/nonSpatial.geodatabase"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
QPointer&lt;SPAN class="operator token"&gt;&amp;lt;&lt;/SPAN&gt;GenerateGeodatabaseJob&lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt; generateGeodatabaseJob &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; geodatabaseSyncTask&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;generateGeodatabase&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;params&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; path&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 21:34:07 GMT</pubDate>
      <guid>https://community.esri.com/t5/qt-maps-sdk-questions/export-download-non-spatial-tables-to-runtime/m-p/490021#M2455</guid>
      <dc:creator>LucasDanzinger</dc:creator>
      <dc:date>2021-12-11T21:34:07Z</dc:date>
    </item>
    <item>
      <title>Re: Export/download non-spatial tables to runtime geodatabase</title>
      <link>https://community.esri.com/t5/qt-maps-sdk-questions/export-download-non-spatial-tables-to-runtime/m-p/490022#M2456</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Luke,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am stupid.&lt;IMG src="https://community.esri.com/legacyfs/online/emoticons/confused.png" /&gt;&lt;/P&gt;&lt;P&gt;Of course it works, because you actually set the LayerOptions in the params (line 13 in your code snippet)&lt;/P&gt;&lt;P&gt;In my code, I only changed a copy, but didn't assign them back to the actual parameters.&lt;/P&gt;&lt;P&gt;Now it works as documented.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Just one small thing : is there a way to identify the layers in GenerateLayerOption list by name or so?&lt;/P&gt;&lt;P&gt;From the GeodatabaseSyncTask::featureServiceInfo(), I can get the layernames (spatial) and the tablenames (non-spatial). This allows me to calculate the number of the layer in&amp;nbsp;the&amp;nbsp;&lt;SPAN&gt;GenerateLayerOption list with the 1st non-spatial table. There should be an easier way to find this.&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Sep 2017 08:02:03 GMT</pubDate>
      <guid>https://community.esri.com/t5/qt-maps-sdk-questions/export-download-non-spatial-tables-to-runtime/m-p/490022#M2456</guid>
      <dc:creator>MarcWouters</dc:creator>
      <dc:date>2017-09-21T08:02:03Z</dc:date>
    </item>
    <item>
      <title>Re: Export/download non-spatial tables to runtime geodatabase</title>
      <link>https://community.esri.com/t5/qt-maps-sdk-questions/export-download-non-spatial-tables-to-runtime/m-p/490023#M2457</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Marc- good catch.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As for your follow up question, do you have a proposal or some pseudocode of what you would like to do? From what I understand, you are able to get the IDs of the layers and tables in the service, so you should be able to loop through each of these and create appropriate layer options for each list. Let me know what you're thinking.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Sep 2017 13:13:02 GMT</pubDate>
      <guid>https://community.esri.com/t5/qt-maps-sdk-questions/export-download-non-spatial-tables-to-runtime/m-p/490023#M2457</guid>
      <dc:creator>LucasDanzinger</dc:creator>
      <dc:date>2017-09-21T13:13:02Z</dc:date>
    </item>
    <item>
      <title>Re: Export/download non-spatial tables to runtime geodatabase</title>
      <link>https://community.esri.com/t5/qt-maps-sdk-questions/export-download-non-spatial-tables-to-runtime/m-p/490024#M2458</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Luke,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;(First of all : how do you add&amp;nbsp;a code snippet with line numbers, like you did above ? Can't find it)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've modified a code sample I've found somewhere on one of the many ArcGIS webpages&amp;nbsp;&lt;IMG src="https://community.esri.com/legacyfs/online/emoticons/wink.png" /&gt;&lt;/P&gt;&lt;P&gt;From the featureServiceInfo(), I can obtain layerInfos() and tableInfos(), which have ID numbers.&lt;/P&gt;&lt;P&gt;Here I can see that lower ID numbers are assigned to the spatial layers, followed by the non-spatial tables.&lt;/P&gt;&lt;P&gt;I cannot assign layerOptions here yet, because my parameters are not generated yet.&lt;/P&gt;&lt;P&gt;I cannot add an extra parameter in the generate(params) method, because of the lambda syntax (I'm not so familiar with this construct, but it works) =&amp;gt; global parameter m_numLayersInService.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Like this it works, although I will not win any beauty contest with this&amp;nbsp;&lt;IMG src="https://community.esri.com/legacyfs/online/emoticons/silly.png" /&gt;&lt;/P&gt;&lt;P&gt;Marc&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;SPAN style="font-family: 'andale mono', monospace; font-size: 15px;"&gt;void myClass::downloadCopy() &amp;nbsp;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN style="background-color: #f6f6f6;"&gt;GeodatabaseSyncTask* task&lt;/SPAN&gt;&amp;nbsp;= new GeodatabaseSyncTask(QUrl("url_of_service"));&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN style="font-family: 'andale mono', monospace; font-size: 15px;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;connect(task, &amp;amp;GeodatabaseSyncTask::doneLoading, this, [this](Error error) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (!error.isEmpty()) {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;qDebug() &amp;lt;&amp;lt; "Error loading GeodatabaseSyncTask:" &amp;lt;&amp;lt; error.message()&amp;nbsp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;else { &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ArcGISFeatureServiceInfo featureServiceInfo = task-&amp;gt;featureServiceInfo();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;QList&amp;lt;IdInfo&amp;gt; layerInfo = featureServiceInfo.layerInfos();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;m&lt;SPAN style="background-color: #f6f6f6;"&gt;_numLayersInService&lt;/SPAN&gt; = layerInfo.size();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;QList&amp;lt;IdInfo&amp;gt; tableInfo = featureServiceInfo.tableInfos();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: 'andale mono', monospace; font-size: 15px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for (int i = 0; i &amp;lt; &lt;SPAN style="background-color: #f6f6f6;"&gt;layerInfo&lt;/SPAN&gt;.size(); ++i) {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&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;qDebug() &amp;lt;&amp;lt; "Layer" &amp;lt;&amp;lt; layerInfo&lt;I&gt;.name() &amp;lt;&amp;lt; "ID" &amp;lt;&amp;lt; layerInfo&lt;I&gt;.infoId();&lt;/I&gt;&lt;/I&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for (int i = 0; i &amp;lt; tabelInfo.size(); ++i) {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&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;qDebug() &amp;lt;&amp;lt; "Table" &amp;lt;&amp;lt; tableInfo&lt;I&gt;.name() &amp;lt;&amp;lt; "ID" &amp;lt;&amp;lt; tableInfo&lt;I&gt;.infoId();&lt;/I&gt;&lt;/I&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Envelope area(-20e6, -7e6, 20e6, 15e6, featureServiceInfo.spatialReference());&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;task-&amp;gt;createDefaultGenerateGeodatabaseParameters(area);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;});&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;// Default parameters generated ? =&amp;gt; generate the offline geodatabase&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;connect(task, &amp;amp;GeodatabaseSyncTask::defaultGenerateGeodatabaseParametersCompleted,&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;this, [this](QUuid, GenerateGeodatabaseParameters parameters) {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;generate(parameters);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt;task-&amp;gt;load();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt;}&lt;/SPAN&gt;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt;void &lt;SPAN style="background-color: #f6f6f6;"&gt;myClass&lt;/SPAN&gt;::generate(GenerateGeodatabaseParameters params)&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;params.setSyncModel(SyncModel::Layer);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;QList&amp;lt;GenerateLayerOption&amp;gt; glo = params.layerOptions();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;for (int i = m_numLayersInService; i &amp;lt; glo.size(); ++i) { &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;glo&lt;I&gt;.setUseGeometry(false);&lt;/I&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;glo&lt;I&gt;.setWhereClause("1=1"); &lt;/I&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;params.setLayerOptions(glo);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 15px; font-family: 'andale mono', monospace;"&gt; }&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Sep 2017 15:04:21 GMT</pubDate>
      <guid>https://community.esri.com/t5/qt-maps-sdk-questions/export-download-non-spatial-tables-to-runtime/m-p/490024#M2458</guid>
      <dc:creator>MarcWouters</dc:creator>
      <dc:date>2017-09-21T15:04:21Z</dc:date>
    </item>
  </channel>
</rss>

