for a longer time I have a problem with the attribute table. I create the polygons on the map, I fill up the table with attributes. Then, if I click "save", all the data from the table are being deleted and in all fields of the table a word "error" does appear. After the restart of the program, only that columns containing the number values are being kept. That ones which contain the words are deleted and the word "null" does appear in all the fields. Is somebody able to help me?
2 Answers
Most likely the columns are defined as "numeric".
The problem is: QGIS lets you input any value into attribute table fields. If you input text into numeric fields, everything will look ok until you try to save the edits. Then it will fail to save text into the numeric fields.
There have been discussions about adding warnings to notify users if they input invalid values. They should be added in future versions.
-
no, that is not this case - it does not leave you to put a different sign than given in the beginning and even more I checked it... well, I defined the column as text (string)– PetrApr 20, 2012 at 13:47
-
1can you share the shapefile? and which QGIS version are you using?– underdark ♦Apr 20, 2012 at 14:11
-
hi, yes I can, but here I have not found any way to add the file in so I can send it via e-mail (?). it´s a general feature in all the shapefiles I´ve already created. I use the version 1. 7. 2. originally I thought it would be caused by the amount of the data which I put in because when I created a smaller layer, the data stayed in, but if I did so in the big one, the data after my save and restart vanished...– PetrApr 20, 2012 at 15:23
When saving features get a new feature id (from a temporary negative feature id to their "real" feature id). The attribute table keeps track of the features listed in it by id. As soon as they are saved they become unavailable with that id. And the row turned to "ERROR".
With commit d43c89ae that was fixed. QGIS handles the transition as if the original features were removed and the new features were added. That way the old rows disappear and new rows are loaded.