Hi,
I've just upgraded to ArcGIS Pro 2.9.0. When I try to split a polygon stored in an ArcGIS Online feature service using ArcGIS Pro all the values are cleared from the fields in the resulting polygons. I am aware of the Split Policy that can be updated for a feature class in a GDB but I can not find anything similar to update for an AGOL feature service.
Can someone please give me a nudge in the right direction if you have experienced before and found a solution.
Cheers.
Paul.
Looking into this issue, could anyone confirm what this setting in the ArcOnline JSON editor might be? I can't find anything through the Googs.
We know the layer already supports splitting, and I'm unaware of how/where these settings are relevant.
Hi Brains trust - we've just done a test install of 2.9.1 and this is still a problem. We can't see find a way to change the Domain Split Policy for an ArcGIS Online Feature Service from Default to Duplicate. When we split a feature through ArcGIS Pro we lose the attributes in any field that has a domain applied. Why this wasn't a problem before but is now is beyond me. Surely there's others out there with the same issue?
Did you get any solution to this? We are having this happen with ArcGIS Online feature services as well. Some, but not all of the attributes will go to null. Splitting policy in ArcGIS Pro is not enabled for AGOL feature services, and I can't see where to change anything in ArcGIS Online. Like you, I think this started around the time of the 2.9 update.
No solution yet - we've just reopened the ticket with ESRI. Hopefully something will come of it. Nice to know we're not alone though.
UPDATE: After the most recent updates to ArcGIS Online (June 2022) it seems the below solution doesn't work. I've tried a few variations but none of them result in the split policy either being inserted or changed. Back to not having an option but to use ArcMap to republish the service as suggested here: FAQ: Is it possible to add or edit domains after a feature service is published in ArcGIS Online? (e...
Posted an Idea here to give us something that works! Update "Alter Domain (Data Management)" tool to up... - Esri Community
We've finally got a solution to this issue (with assistance from ESRI Support). The JSON at the service URL for the hosted feature layer needs to be updated to either include or modify the split policy so that it reflects the desired behaviour ("Duplicate").
My workflow below:
1. Go to item page > click on sub-layer > open Service URL
2. Modify the URL to see the Admin settings
3. Scroll to the bottom of the page and select the "Update Definition" option
4. Clear the lastEditDate value (replace the value with "")
5. Scroll down to the fields list
6. Update any field domains where domain is NOT null with the below line of text:
"splitPolicy" : "esriSPTDuplicate",
Updated JSON below:
7. Click the "Update Layer Definition" button and whalla! Your features should now duplicate attributes in fields with coded domain values when split in ArcGIS Pro 2.9+
I appreciate your very detailed explanation of how the the REST API should be able to be used to correct the issue with the Split policy. Here is the latest information on the Bug BUG-000148135 related to this.
I think the severity should be higher than medium since the workaround given is impractical.
Anytime you re-publish from ArcGIS Pro you need to be aware of side effects like losing pop-up definitions and symbology and other impacts to your maps and dashboards in AGOL. I think esri underestimates this effort and thus set the severity to Medium.
Agreed. Severely underrated and the Alternate Solution also really lacks detail (use ArcGIS Pro to change the split policy how? Through the Domains menu? Republish service? GP Tool?)
Further update: Apparently this process does work (with a tweak) as described here: Re: Change default split policy on new domains? - Page 3 - Esri Community
If anyone is still running into this problem, I've had success using a simple loop to update the merge and split policy for any field with domains in the layer. Maybe this goes without saying, but always test on a non-production layer and back up the current definition before making changes to a definition.
# target the layer
target_service = gis.content.get('id') # '1238h12kj2k12jkh'
target_layer = target_service[0] # or whatever
target_fields = target_layer.properties['fields']
# update the split and merge policies
for field in fields:
if 'domain' in field and field['domain'] is not None:
# update mergePolicy and splitPolicy to esriSPTDuplicate
field['domain']['mergePolicy'] = 'esriSPTDuplicate'
field['domain']['splitPolicy'] = 'esriSPTDuplicate'
#update definition
target_layer.manager.update_definition({"fields": fields})