Allow "dynamic" layers which update each time the map opens

04-29-2010 06:31 PM
Status: Under Consideration
Labels (1)
Regular Contributor III

Let's say I have a particular dataset which I use in most of my MXDs, and I use a *.lyr file to ensure it's identical in each MXD.

Now I decide I want to make a change to its symbology, or the labelling properties, etc. At the moment I need to make this change in every MXD which uses this layer. Sure, there are shortcuts such as deleting the layer from the TOC and re-adding it as a *.lyr file.

But what I'd really like is the ability to specify a layer in the TOC as "dynamic", so that it references a central *.lyr file on disk. That way I can update the central *.lyr file once, and have the changes propagate through to each MXD which uses it.

We've talked over the years about storing MXDs and LYR files within the Geodatabase - I'm thinking that if that existing enhancement request was implemented then it might be another way to skin this cat.  Either way this is a great idea.
I recall that workstation ARC/INFO made it possible to centrally manage symbology by editing symbolset files.  However, there is no easy way to do this with ArcGIS.  There really needs to be a way to do this.

Maybe something like IGeoFeatureLayer2 could be provided that allows ways to configure how all the properties exposed by IGeoFeatureLayer get initialized before the layer is drawn the first time.
Our shop would also find this very useful for two reasons. We develop library layer files for use by less skilled ArcMap users, and when we find errors in them or simply discover ways to improve their appearance and performance, it would be nice to have the changes reflected automatically in any maps those users have created. 

Second, it would be another way to help manage data resources whose location changes. Say your source is a file GDB that moves to a new server (we do get new hardware from time to time). If people had used that data via "dynamic" layers in their map documents, it would suffice to fix the source reference in the layer file--no need to update hundreds to thousands of map documents manually or even with Python scripts.

Provide this as an option - not automatic. 
If automatic:
If the lyr file disappears - does your layer drop from your map, does it hang ... this could be troublesome.
Would it be a drag on the system to go check the lyr file every time you open a map?

If an option like "Update from layer file" was available you would have more control.


An idea for manage a lyr files can simplify many procedures of data refresh, Hardly when have many maps with some common thematic features... that is one of my drea.
Not exactly what you are looking for, but in 10.0 you can do this sort of update using a Python script. For example, you can replace a layer called A with a layer called B defined in a layer file in one or more MXD files. There's not a GUI for this, but as a script it is industrial strength and can be applied to as many MXD files as you like. This enables you to update one or more of the properties of any layer(s) in any set of MXD files.
This would be amazing.  It would save so much time chasing down mxds.
How embarrising, I've just submitted an idea like this

only did I not find this old one, but also had forgotten I had had a previous idea merged to this!