8

Here's my workflow:

  • create a file geodatabase containing lots of data
  • create an MXD to display this data
  • > File > Share As > Service within ArcMap
  • publish to ArcGIS Online*
  • the dataset and its definitions are uploaded to ArcGIS.com

This is all working fine, and I can access the features via a feature layer in the JSAPI. In the background, ArcGIS Online creates Service Definition and Features entries under My Content.

My question:

I've now updated the symbology in the MXD. How can I get the new symbology definition into ArcGIS Online?

  • One option is to delete the existing service and recreate it - but this involves uploading the large dataset again, even though there are no changes to the data.
  • I tried > Share > Save A Service Definition but this fails since the service already exists (even if I delete the existing Service Definition while retaining the existing Feature service)
  • ArcMap tells me to Overwrite the existing service, but won't this re-upload the data?

Thanks

*aka ArcGIS.com aka ArcGIS for Organisations aka AGOL

  • I've just done a quick test. Created a map in ArcMap, set the symbology. File > Share as > Service > Publish a service > to My Hosted Services. I chose to have Feature Access and no Tiled Mapping. In My Content in ArcGIS.com, I see two items - "service definition" and "features". Is it what you also see? I am able to update the service definition by choosing Update button when viewing the item in My content. However, as you have mentioned, the newly updated .mxd comes together with data (in a packaged .sd file). – Alex Tereshenkov Nov 7 '13 at 11:10
  • @AlexTereshenkov how are you generating the new *.sd file in the first place, in order to use the Update button? That's where I'm getting stuck - ArcMap doesn't allow me to create it since the "old" service still exists. Thanks – Stephen Lead Nov 7 '13 at 11:37
  • Ah, sorry for not mentioning it. I just use another name and then rename the .sd file manually. It works fine then to use the Update link in ArcGIS.com to upload the .sd file which should have the same name. – Alex Tereshenkov Nov 7 '13 at 12:38
  • But again, the .sd file contains the .gdb with the source data and frankly I don't know how to avoid doing this. – Alex Tereshenkov Nov 7 '13 at 12:39
  • ah - I didn't realise that the *.sd file also contains the data (is that new?). It looks like there's no way to update just the definition, then. – Stephen Lead Nov 7 '13 at 20:54
3

For anyone finding this now, the landscape has changed slightly since this was first answered. It is now possible to update your symbology directly through ArcGIS Online. If you go to the feature layer item in question and click the Visualization tab, you can update the symbology by clicking on the the style button of the layer in question and saving the layer.

You can even create a second view of the data with different symbology by creating a Feature Layer View. This lets you create another configuration of the feature layer meaning you can change the symbology, add filters, alter editing permissions, etc. but not create a second version of the data as it still looks at the data from the underlying feature layer.

5

It appears to me that it is not possible at the current release of AGOL.

What you can do is that you can just use another name when creating an .sd file and then rename the .sd file manually. It works fine then to use the Update link in ArcGIS.com to upload the .sd file which should have the same name. Moreover, .sd file is just an archive which you can unpack and explore.

However,it seems to me that there is no way to update just the symbology for a service on AGOL without not uploading the data again, since it is .sd based. You probably know that one can change symbology for a service directly in ArcGIS.com Map viewer, but there are some limitations on what you can do.

PS. If you will by any chance work with data you want to create map cache (Tiled Mapping capability for a service), create tiled package in ArcMap first by enabling an option, and then upload it to AGOL without burning credits that are taken when caching.

  • @Stephen Lead, thanks for editing the answer. I will edit my answer in a case I will find out how to do this. I bet many folks would be interested in this. – Alex Tereshenkov Nov 9 '13 at 22:20
  • 1
    +1 for the warning about burning credits for regenerating tiles when replacing a tiled .sd – brichins Mar 6 '14 at 17:40
  • Wow..... so many credits saved this way.... Thanks... – umbe1987 Feb 15 '17 at 16:55
1

You can easily edit the service URL by updating the JSON directly. There is a lot of risk involved here though so be sure to keep the original JSON in a file. I use this method to update the schemas, templates, etc. But you could probably try it for updating symbology. Let me know if this works.

http://blogs.esri.com/esri/arcgis/files/2014/10/How-to-Update-Hosted-Feature-Service-Schemas1.pdf

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.