Offline map does not include Tables

62
2
Jump to solution
10-24-2019 05:49 AM
Highlighted
MVP Regular Contributor

Hi,

I am taking a map offline in a Xamarin forms app using OfflineMapTask.  After the download my Map object does not contain a standalone table that is contained in the WebMap.  I have a WPF application uses the same code and in that application the table was in the Map object.  We are using 100.6 in the Xamarin application and the WPF was done in 100.4, other than that no differences.

Has something changed in 100.6 that requires a new setting in parameters?

Thanks

-Joe

Reply
0 Kudos
1 Solution

Accepted Solutions
Highlighted
MVP Regular Contributor

After further investigation and looking at the output results I found the issue.

It seems that when a service is published to AGOL that even though the field Creator already existed it created another field called Creator .  How it would allow the creation of a field with the same name as an existing one I am not sure.  But the service layer ends up with two fields called Creator .

Sqlite is not so liberal in field naming.  When the sqlite database is being created and the second Creator field comes along it fails and the table is not created:

Job Table Error: Esri.ArcGISRuntime.Data.ServiceFeatureTable : Esri.ArcGISRuntime.ArcGISRuntimeException: The field already exists.: Creator

After deleting the extra field from the AGOL service table it generated the table as expected

Thanks

-Joe

View solution in original post

Reply
0 Kudos
2 Replies
Highlighted
Occasional Contributor

Hi Joe, 

Could you provide some more info on this one, there's been some other reports about standalone table download problems and we're trying to narrow down the issue.

Any extra info you can provide would be great. Here's a few questions that come to mind:

- Are there any error / warning messages during the job run?

- Can you access the tables in the online map before the download?

- Could you share the job JSON (Job.ToJson()) after the run.

- I'm also wondering about authentication issues; are the tables from hosted services?

Thanks,

-Greg

Reply
0 Kudos
Highlighted
MVP Regular Contributor

After further investigation and looking at the output results I found the issue.

It seems that when a service is published to AGOL that even though the field Creator already existed it created another field called Creator .  How it would allow the creation of a field with the same name as an existing one I am not sure.  But the service layer ends up with two fields called Creator .

Sqlite is not so liberal in field naming.  When the sqlite database is being created and the second Creator field comes along it fails and the table is not created:

Job Table Error: Esri.ArcGISRuntime.Data.ServiceFeatureTable : Esri.ArcGISRuntime.ArcGISRuntimeException: The field already exists.: Creator

After deleting the extra field from the AGOL service table it generated the table as expected

Thanks

-Joe

View solution in original post

Reply
0 Kudos