Change Domain in ArcGIS Online via ArcGIS Pro. Currently, I can manipulate fields in AGOL with Pro, I want to be able to update domains, and their attributes in Pro for AGOL services.
We just released an add-in for ArcGIS Pro that allows you to browse a catalog of ArcGIS Solutions and deploy them to an ArcGIS Online organization. In addition, the add-in provides tools to configure the feature layers after they have been deployed and one of the tools we provided can be used to modify domains of hosted feature services. To learn more about the add-in see ArcGIS Solutions Deployment Tool | ArcGIS Solutions.
The Solutions Deployment tool works great to create new domain values in an AGOL-hosted feature service. One *MAJOR* thing it is lacking: there is no way to sort the AGOL-hosted domain values, so new entries always show up at the bottom of the list.
Although you can't sort you can right click a row and move it up or down in the list to reorder the domains. There was a bug in Pro at 1.3 and 1.4 with that parameter where order wasn't observed but at Pro 2.0 this will now work.
Hi
Just wondering what exact solution allows you to do this?
Appears to be a heap of different categories and tools etc.
Cheers
Laura
It is in the downloadable Solutions Deployment Tool add-in for Pro. After you install the add-in appropriate for your version of Pro, it becomes a new button called "ArcGIS Solutions" under the Share menu. Once you click the button, "Configure an ArcGIS Solution" lets you change domain values. Hopefully some day this functionality will be built-in to Pro (and/or AGOL) directly.
Thanks, this works brilliantly!!
Quick question about this and a workflow that I was attempting to test out. I have a short survey that I created through Survey123 Connect and published to our ArcGIS Online organization. I have some external selects enabled within the survey for a select_one question that then allows me to use the pulldata() function to populate other questions based on the answer to the select_one question.
I read that you have added support for Survey123 within the webpage back in June of 2017, so my thought process was to try to use the Solutions Deployment to update the domains or choices as they are known within Survey123. The issue is after updating the domains via solutions deployment will cause Survey123 Connect to think the survey has been altered and does not match the originally published survey. This invokes the dreaded If you publish this survey, then all of your previously collected data will be lost.
I think I know what is happening, but I was wondering if you shed some light on this bfausel ?
Unfortunately I don't have experience using the Solutions Deployment Tool to update drop-down lists in Survey123. I could be wrong, but I don't believe the drop-downs in Survey123 are actual domains. I would think you will have to go to https://survey123.arcgis.com to update the survey form.
I published an idea similar to this which is a little more expansive last week. Pro Tool to Update Hosted Services
I am using the Configure an ArcGIS Solution, Modify Domains tool to modify what would be a domain table (PlantScientific) that is the source of domains for two attribute fields. When I update the domains for the first field, SciNames1, using the modify domains solution, and then run the tool, the domains are updated. Since the update was made to the domain 'table' PlantScientific those updates should carryover to the 2nd attribute field (SciNames2) using the same PlantScientific domain 'table', but those domain updates do not carryover. What is happening on the backend since we aren't working with traditional tables?
Seems like this process of updating 300+ domain values will take far more time than updating a geodatabase's domain tables in ArcCatalog. Any suggestions for using Pro or the ArcGIS Solution tool to update 300+ domain values that are used in two attribute fields, SciNames1 and SciNames2? Otherwise, I'll have to pull this down as a geodatabase and complete in ArcCatalog back in ArcGIS desktop, and push back up to AGOL.
Hi Cinthia,
Domains are stored differently in hosted feature services than geodatabase feature classes. In hosted feature services every domain is defined and stored with the field. Although the domain has a name property different domains with the same name can exist in the same layer. So this is why the tool was written the way it is and asks you select the field you want to modify the domain for, rather than selecting the domain you want to modify as you would with a geodatabase. One thing you could try is run the tool 1x on a field. You can then see the result of that tool run in the Catalog pane and drag it into a new model. From model builder you could try adding a iterator to repeat for the all the fields with the same domain.
This is similar to an idea I posted a while back about creating some Pro Tools to better update hosted services. Currently, it's totally possible to do via the REST Endpoints, but you need to write out the json, validate it and then post it directly to the rest endpoint.
https://community.esri.com/ideas/14878
Update...the AGO team has given us the ability to update the domains for individual data fields within each of the feature found within a Hosted Feature Service. To access this you would need to go into the items page of your Hosted feature service, then click on the data tab, then on the right hand side change the view to fields, then choose the field you are interested within changing and then add, delete, or modify the lists.
One thing to keep in mind is that you will need to do this for every field the domain list is applied to. So this allows for the editing of the domain/lists per field, but hopefully there is still some consideration to apply a global change to the overall Hosted Feature Service similar to applying a global change within a local FGDB?
Please keep up the great work and I will take this over having to update the JSON through the REST service.
Hi Mike, I am trying to add one name to a domain, I've tried the ArcGIS Solutions - Modify Domain option in Pro, I've tried the Rest Service URL and I've tried Data Tab option you mention above, nothing is working I don't get an option for add, delete or modify the lists through the Data tab?
All I want to do is add 1 name and I am absolutely stumped. Any ideas?
Is their any documentation on doing a similar operation with a referenced feature layer on portal?
Currently to have a domain change reflect in Survey123 form. I delete current feature service. I add the domain to the domain table, republish and remake the Survey123 form in Connect
Admin NCCMA,
I have been busy with the end of our field season processing and the first question would be are you the owner of the Hosted Feature Service? If you are not, then I am afraid that you would not be able to make the changing to the Domains that you are wanting to complete. It seems as though this is only available to the owner of the Hosted Feature Service. By looking at your screenshot; I would guess that you are not the owner of this service.
If you are the owner, then I am unsure why you would not be able to add in just one value to the list.
When looking at the Data tab -> Fields you should see an "Edit" option like below. You might have to approach the owner of the service.
Sorry about the delayed response.
Michael,
I do not have Portal, but I would think that you would be able to add in the domain within Survey123 Connect, but do not publish yet. Then go into the HFS and add in the domain using the above method of updating through the Fields tab of the data tab, then republish the survey, REFRESH the survey on the device, and then see if it shows up as an option. I used similar steps for updating a HFS on ArcGIS for some of my surveys and it worked.
Thank you for the response and support and for engineering this functionality into AGOL/Portal.
Thanks for your reply, it turns out I was the owner of the feature service but it was created from another hosted service. Tracked back to where it was created from and was able to edit the domain there.
Is there any plan to implement this as a feature in upcoming updates?
I used the Configure an ArcGIS Solution to add the domains to a field on a hosted feature layer and it worked well. I would like to apply the same domains to other layers and I tried to use the arcpy code that was created and I get an error.
Code:
arcpy.solutions.UpdateDomain(r"Evacuation des eaux\Construction\evac_ligne_construction", "maj_user", "Coded Value", "maj_user", "0 cbach;1 abart;2 rriedo;3 dristevski;4 fcuenot;5 pmorel;6 jvurlod;7 ajesenicnik;8 sjubin;9 bchassay", None, None)
Error:
AttributeError: module 'arcpy' has no attribute 'solutions'
The tools from solutions can not be used by arcpy or some additional model need to be imported?
I am assuming the arcpy.solutions extends arcpy and is included in the solutions deployment tool. Thus far, I have been unable to find the Python code that is actually run. This is quite frustrating knowing there is a tool that dose it but not being able to access it for programmatic changing of hosted domains.
I would like to be able to edit AGOL domains associated with hosted feature classes in ArcGIS Pro.
As of right now, you can view the domains in Read-Only mode, meaning that if you're editing the feature class and decide you want to make a change to the domain options, you have to open up AGOL, make the edits, then sync the FC, close/reopen Pro, or remove and re-add the feature classes for the changes to take effect.
Being able to edit them directly in Pro would make the process far more streamlined and save a lot of time and frustration.
Hello @AlfredBaldenweck Thank you for submitting this Idea! I wanted to let you know that we have an existing Idea for this request, Change Domain in ArcGIS Online via ArcGIS Pro . The core request for both your Idea and this one is to allow users to edit the domains of ArcGIS Online hosted services in ArcGIS Pro. Given that the older Idea has 80 kudos votes on it, I will merge these two Ideas. Once the two are merged, the text from this Idea will be added as a comment. Please upvote the "Change Domain in ArcGIS Online via ArcGIS Pro" Idea using the kudos button.
Thank you!
Add the ability to create, update, or delete domains for hosted feature services in ArcGIS Pro through the user interface and domain related geoprocessing tools. I want to be able to manage hosted feature service domains in ArcGIS Pro. Currently domain information for hosted feature services is read only in ArcGIS Pro.
ArcGIS Online (AGO)/ArcGIS Enterprise (AGE) allows you to create domains, add, remove or change values, and individually sort values. AGO/AGE will not let you define split or merge policies or run any of the Domains geoprocessing tools. It slows down work to have to jump back and forth between ArcGIS Pro and AGO/AGE when some things can only be done in ArcGIS Pro (using edit tools like trace or split) and other things (add a missing domain value) can only be done in AGO/AGE.
It is annoying that using tools like split in ArcGIS Pro cause all of my fields with domain values to become null instead of the duplicating values.
@KoryKramer is this a bug or a feature:"It is annoying that using tools like split in ArcGIS Pro cause all of my fields with domain values to become null instead of the duplicating values."
@RTPL_AU I found on Esri Community that there is a way to edit a service's JSON to enable duplicating domain values when splitting. So it is possible but it is not exposed through any ArcGIS UI. I do not like doing that way either because it is too easy to mess up the JSON. I do make a copy of the original JSON first as a backup and edit a copy of the JSON in a code editor to minimize mistakes.
@Joshua-Young Editing the JSON is a Monday morning activity; definitely not recommended for Friday afternoons, eh?On Tuesdays I wish they would document it a lot better but change to "remove it and give us a safe but powerful GUI to do the same" on Wednesdays 🙂
Faça login para publicar, seguir conteúdo e mais. Novo aqui? Registre-se gratuitamente.