[Qgis-developer] Field Calculator "permanence"
Andreas Neumann
a.neumann at carto.net
Fri Nov 7 08:25:09 PST 2014
Hi,
What you probably ask for are database triggers combined with storage.
This is not what virtual fields are for. If they were stored - they
wouldn't be called virtual ;-)
You can do that f.e. with Postgis. With shapefiles not. However, if you
share the project with the other PC, the virtual fields work fine.
Andreas
On 07.11.2014 17:21, Zoltan Szecsei wrote:
> Hi Matthias,
> Thanks for the quick answer.
> The virtual field acts just like I want it to, except that it does not
> permanently store the column in the attribute table.
> I tried getting clever by then adding a second 'Field Calculation' to
> update the existing 'Sheet' field from the virtual field, but that
> won't do it either.
>
> So, for me there are two shortcomings:
>
> 1. To be able to store and recall the 'Expression' and not lose it
> after closing the Field Calculator
> 2. To be able to add the virtual fields that you create, into the
> attribute table.
> 3. (And then of course to re-open the Shape file on another PC and
> have these Field Calculations still functional)
>
> Any further possibilities I can try?
>
> Regards & thanks again,
> Zoltan
>
>
> On 2014/11/07 18:01, Matthias Kuhn wrote:
>> Hi Zoltan,
>>
>> Since QGIS 2.6 this possibility exists. It is called "Virtual Field".
>> You must not create the attribute when creating the shapefile. Just open
>> the field calculator, create a new field in there and check the "virtual
>> field" checkbox.
>>
>> Regards,
>> Matthias
>>
>> On 07.11.2014 16:54, Zoltan Szecsei wrote:
>>> Hi,
>>> I'm using QGIS 2.6.0 on Win 7 x64 - installed via OSGEO4w
>>>
>>> Is there a way to store your field calculator expression to always
>>> process and update that specific field, should geometry be edited or
>>> created for that Layer?
>>>
>>> Let's say I want to create a blank POINT shape file, with a text
>>> attribute called "Sheet".
>>> Whenever a POINT is created or moved, I want this field to be
>>> dynamically updated with:
>>>
>>> tostring(abs(toint($y)))+tostring(abs(toint($x)))
>>>
>>> For testing thus far have:
>>>
>>> * created 2 points
>>> * Opened the field calculator, clicked 'Update Existing Field' and
>>> put in the expression.
>>> * The two existing points now have the correct TEXT values in the
>>> Sheet field
>>> * I close the Field calculator
>>> * Create a new point in my layer
>>> * open the attribute table to find that the 'Sheet' field for this
>>> new point is blank
>>> * I open the Field Calculator and I cannot even find a way to call
>>> back the previous expression I used.
>>>
>>>
>>> Am I using the correct QGIS functionality to achieve what I need to,
>>> and if so, where am I going wrong?
>>>
>>> Thanks & regards,
>>> Zoltan
>>>
>>>
>>> --
>>>
>>> ===========================================
>>> Zoltan Szecsei PrGISc [PGP0031]
>>> Geograph (Pty) Ltd.
>>> GIS and Photogrammetric Services
>>>
>>> P.O. Box 7, Muizenberg 7950, South Africa.
>>>
>>> Mobile: +27-83-6004028
>>> Fax: +27-86-6115323www.geograph.co.za
>>> ===========================================
>>>
>>>
>>> _______________________________________________
>>> Qgis-developer mailing list
>>> Qgis-developer at lists.osgeo.org
>>> http://lists.osgeo.org/mailman/listinfo/qgis-developer
>
>
> --
>
> ===========================================
> Zoltan Szecsei PrGISc [PGP0031]
> Geograph (Pty) Ltd.
> GIS and Photogrammetric Services
>
> P.O. Box 7, Muizenberg 7950, South Africa.
>
> Mobile: +27-83-6004028
> Fax: +27-86-6115323www.geograph.co.za
> ===========================================
>
>
> _______________________________________________
> Qgis-developer mailing list
> Qgis-developer at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/qgis-developer
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20141107/4b5af278/attachment-0001.html>
More information about the Qgis-developer
mailing list