<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">Hi Matthias,<br>
      Thanks for the quick answer.<br>
      The virtual field acts just like I want it to, except that it does
      not permanently store the column in the attribute table.<br>
      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.<br>
      <br>
      So, for me there are two shortcomings:<br>
      <ol>
        <li>To be able to store and recall the 'Expression' and not lose
          it after closing the Field Calculator</li>
        <li>To be able to add the virtual fields that you create, into
          the attribute table.</li>
        <li>(And then of course to re-open the Shape file on another PC
          and have these Field Calculations still functional)<br>
        </li>
      </ol>
      Any further possibilities I can try?<br>
      <br>
      Regards & thanks again,<br>
      Zoltan<br>
      <br>
      <br>
      On 2014/11/07 18:01, Matthias Kuhn wrote:<br>
    </div>
    <blockquote cite="mid:545CECD7.9030808@gmx.ch" type="cite">
      <pre wrap="">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:
</pre>
      <blockquote type="cite">
        <pre wrap="">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-6115323     <a class="moz-txt-link-abbreviated" href="http://www.geograph.co.za">www.geograph.co.za</a>
===========================================


_______________________________________________
Qgis-developer mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Qgis-developer@lists.osgeo.org">Qgis-developer@lists.osgeo.org</a>
<a class="moz-txt-link-freetext" href="http://lists.osgeo.org/mailman/listinfo/qgis-developer">http://lists.osgeo.org/mailman/listinfo/qgis-developer</a>
</pre>
      </blockquote>
      <pre wrap="">

</pre>
    </blockquote>
    <br>
    <br>
    <pre class="moz-signature" cols="72">-- 

===========================================
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-6115323     <a class="moz-txt-link-abbreviated" href="http://www.geograph.co.za">www.geograph.co.za</a>
===========================================</pre>
  </body>
</html>