Survey publishing error: supportsApplyEditsWithGlobalIds

7048
48
Jump to solution
06-21-2017 03:36 PM
SamanthaNakata1
New Contributor II

I am currently trying to publish a survey with a custom SDE-based feature service.  The service includes the point feature layer with a related table (relationship via a GUID; for repeats);the related table has attachments enabled.  

The submission url in the form has been edited to that of the feature service, so something like:

http://utility.arcgis.com/usrsvcs/servers/.../rest/services/[FolderName]/[ServiceName]/FeatureServer

When attempting to publish the survey I receive the error:

The custom feature service submission url is not compatible with this survey (The feature service does not meet the requirements for a survey with repeats - supportsApplyEditsWithGlobalIds)

I have not been able to find much about this particular error online--anyone who overcame a similar issue? The error message seems to indicate an issue with the relationship to the related table? But I was able to publish a survey with this database structure previously with no problems.  I have also tried to publish the survey with a GLOBAL ID-based relationship, but this also did not work.

Thanks all.

48 Replies
SamanthaNakata1
New Contributor II

Hi Scott,

In my case it was not a URL issue but rather an ArcGIS for Server version issue--supportsApplyEditsWithGlobalIds error did not go away, because related tables are not supported pre 10.3, in our case. 

0 Kudos
JohnathanHasthorpe
Esri Regular Contributor

Hi Scott

When defining the submission_url for a survey - you need to paste in the url of the service item, not the actual service url. Also, the error message you are getting indicates that the service does not have the property of supportsApplyEditsWithGlobalId set to true.

For a feature service to support applying edits with Global IDs, the following requirements must be met:

  • The layers in the feature service must have a globalid column with a unique index.
  • The data cannot be versioned.

A quick way of implementing the above is to enable the sync capability on publishing the feature service. Once you do this you should be able to publish the survey in connect.

Cheers

John

ScottLew1
New Contributor II

Hi John,

Thank you for your response.

I set the Enable Sync and confirmed the feature layer is not versioned; however, the supportsApplyEditsWithGlobalId message still appeared with the automatically generated submission_url.

I pasted the URL of the service item to replace the automatically generated URL and the supportsApplyEditsWithGlobalId message no longer appeared; however, another message, Request error Missing serviceItemId appeared (please see attached screen shots showing the different URLs and error messages).

 

Any idea on what is causing this?  Why do you think supportsApplyEditsWithGlobalId appeared, even after setting Enable Sync and confirming the feature layer is not versioned?  Thanks in advance.

Best,

Scott

0 Kudos
JohnathanHasthorpe
Esri Regular Contributor

Hi Scott

The correct url is: .https://www.arcgis.com/sharing/rest/content/items/5c312f83a4d4420ba1d70441b9986eb3

This will ensure that you don't get the serviceItemId error.

If you go into the the service url and then view it in JSON:

Can you check the status of the of following property:

"supportsApplyEditsWithGlobalIds"

It sounds like this is set to false when it should be set to true - please confirm.

To enable, you should make sure you follow the guidance here: Use Survey123 with existing feature services—Survey123 for ArcGIS | ArcGIS 

You will need to check the layers in the feature service have a globalid column with a unique index. This will need to be done by looking at the data layers in desktop before publishing the service.

In terms of the sync capability - this only works if enabled in desktop on publishing (not in ArcGIS Online).

Thanks
John

ScottLew1
New Contributor II

Hi John,

Attached is a zipped FGDB; it is a revised copy of the FGDB posted to my organization’s ArcGIS Online site to create the Feature Layer I am trying to publish in Survey123 Connect. Please note some records in both the feature class and related table have field photo attachments.

I created the feature class and related table in the FGDB based on guidelines from this blog – https://community.esri.com/people/MKellyesri-ireland-ie-esridist/blog/2016/11/18/related-data-in-arcgis-online

Regarding the status for ‘supportsApplyEditsWithGlobalIds’, below is the JSON screen shot showing:

· "isDataVersioned" : false

· "supportsApplyEditsWithGlobalIds" : true

Thank you for your time.

Best,

Scott

0 Kudos
JohnathanHasthorpe
Esri Regular Contributor

Hi Scott,

You need to ensure that you build the relate based on the GlobalID field of the parent layer and GUID field (parentglobalid) of the child table. The original workflow you followed was not designed for Survey123 feature services.

Thanks

John

MahendraK
New Contributor II

Hi John,

How to set   "supportsApplyEditsWithGlobalIds" as  true. where i will get JSON file for edit

Thanks

Mahen

0 Kudos
JohnathanHasthorpe
Esri Regular Contributor
PaulCone2
Occasional Contributor

I'm stuck on this error, too.  I have a service (used for building inspections) that I have been using on Collector for a couple of years, and now I'm trying to transition to Survey123.  I created a new survey using that service, but then as I was working on it in Connect, adding logic to the form and such, it became apparent that I would need to create a new service because of the way the logic needed to work against the schema.  So I modified my source file geodatabase and then I recreated the join using GlobalID and GUID, and then created a new service.  But I don't want to lose all the work I did on the form so I am trying to publish the form into the new service, but then I get the error.  I've double-checked the join and Sync is set but I still get supportsApplyEditsWithGlobalIds as false and it won't go.  What else is there to check?

Paul

P.S. I'm running beta 2.7.13.

0 Kudos
JamesTedrick
Esri Esteemed Contributor

Per Layer (Feature Service)—ArcGIS REST API: Services Directory | ArcGIS for Developers  :

  • supportsApplyEditsWithGlobalIds will be true if the layer supports applying edits where globalid values provided by the client are used. In order for supportsApplyEditsWithGlobalIds to be true, layers must have a globalid column and have isDataVersioned as false. Layers with hasAttachments as true additionally require attachments with globalids and attachments related to features via the features globalid.

The two things to check would be versioning and if the attachments are set up to use globalids.