2

I have a layer that I want to style in different ways for different print composers. When I duplicate the layer it uses the parent shapefile, but changes made to the attribute tables aren't reflected across duplicate layers.

Is this expected behaviour? Do duplicated layers have separate attribute tables?

2 Answers 2

2

Duplicate layers have the same attribute table as long as they have the same source shapefile.

5
  • That's what I was expecting, but not what I was seeing. I added a field to the original layer, and it did not show up on the duplicated layer. I'll try again and see what happens.
    – John K
    Nov 23, 2015 at 11:39
  • Maybe you have to add the saved duplicate shape again as a layer to see the changes you took on the original one. So maybe it is sort of a cache issue.
    – DirkB.
    Nov 23, 2015 at 11:42
  • OK, I've done some more testing and it appears that the duplicated layers have their own separate attribute tables that are populated when the duplicate is created. Changes to the data for the original layer and duplicates are not updated in the other layers and it's possible for each layer to contain different values for the same polygon.
    – John K
    Nov 23, 2015 at 13:04
  • @JohnK - Both the original layer and the duplicate share the same attribute table as they both obtain data from the .dbf file. If you play around with attributes separately for both layers, you will risk overwriting data so becareful :)
    – Joseph
    Nov 23, 2015 at 13:08
  • That's what I was expecting, but it's not what I am observing actually happening...
    – John K
    Nov 23, 2015 at 14:01
1

To update all duplicated Attribute Tables, you will need to refresh their table data from the Item Properties tab:

Refresh Table Data

Hope this helps!

1
  • I hadn't got as far as print composer. When I was setting styles for the duplicated layer the new field wasn't appearing. I removed the duplicate layer and recreated it in the end.
    – John K
    Nov 23, 2015 at 11:55

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