It would be handy to add condition statements to QgsExpression so we can support this kind of thing, Martin would be the guy to talk to about adding this kind of thing.  He knows the most about QgsExpression.<div><br></div>

<div>I am also looking at adding Python support to any sections that also use QgsExpression; this would allow us to use a QGIS expression for simple-ish stuff but also Python if need be for doing more powerful stuff.<br>
<div>
<br></div><div>I started a wiki page[0] before the last Hackfest about some of my ideas about adding rule based labeling, which would be very cool to have.</div><div><br>[0] <a href="http://hub.qgis.org/wiki/quantum-gis/RuleBasedLabelingIdeas">http://hub.qgis.org/wiki/quantum-gis/RuleBasedLabelingIdeas</a></div>

<div><br></div><div>- Nathan<br><br><div class="gmail_quote">On Thu, Dec 29, 2011 at 8:25 PM, Andreas Neumann <span dir="ltr"><<a href="mailto:a.neumann@carto.net">a.neumann@carto.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Hi Giuseppe,<br>
<br>
Thanks for your hint with the syntax - it works in my case.<br>
<br>
I think I sort of understand the syntax - at least the > operator and the substr. What I do not understand is why I need the *-1 (multiplier).<br>
<br>
But I think the syntax is far from being intuitive, without some help. Maybe we can come up with a simple solution in the future?<br>
<br>
If we could combine the rule-based renderer approach with the current labeler (with its new query builder), it would be awesome.<br>
<br>
Thanks for your help!<span class="HOEnZb"><font color="#888888"><br>
<br>
Andreas</font></span><div class="HOEnZb"><div class="h5"><br>
<br>
On Wed, 28 Dec 2011 20:01:43 +0100, Giuseppe Sucameli wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi Andreas,<br>
<br>
On Thu, Dec 22, 2011 at 2:31 PM, Andreas Neumann <<a href="mailto:a.neumann@carto.net" target="_blank">a.neumann@carto.net</a>> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
What I want is that a label is only drawn if a column value is larger than<br>
0. I don't want to label features with a value of zero.<br>
<br>
Do you have any hints how the syntax works for such a case? I see ">"<br>
operators but no "if" or "when".<br>
</blockquote>
<br>
there's no "if" operator, but ">" returns 1 if true and 0 if false,<br>
e.g. (field > 5)*10 let's give you 10 or 0 as result.<br>
<br>
The problem is that you don't want to display anything when<br>
the field value is 0, so we can use the substr function.<br>
<br>
Here's the solution to your problem:<br>
substr(id, 0, (id > 0)*-1)<br>
that means if id <= 0 then substr(id, 0, 0) else substr(id, 0, -1)<br>
<br>
In general:<br>
substr(output, 0, (condition)*-1)<br>
<br>
Cheers.<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
If it is not possible, then I can still do it in Postgis, but it would be<br>
nice being able to do this in QGIS.<br>
<br>
Thanks for any hints,<br>
Andreas<br>
<br>
--<br>
--<br>
Andreas Neumann<br>
Böschacherstrasse 10A<br>
8624 Grüt (Gossau ZH)<br>
Switzerland<br>
______________________________<u></u>_________________<br>
Qgis-user mailing list<br>
<a href="mailto:Qgis-user@lists.osgeo.org" target="_blank">Qgis-user@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/mailman/listinfo/qgis-user" target="_blank">http://lists.osgeo.org/<u></u>mailman/listinfo/qgis-user</a><br>
</blockquote></blockquote>
<br>
-- <br>
--<br>
Andreas Neumann<br>
Böschacherstrasse 10A<br>
8624 Grüt (Gossau ZH)<br>
Switzerland<br>
______________________________<u></u>_________________<br>
Qgis-user mailing list<br>
<a href="mailto:Qgis-user@lists.osgeo.org" target="_blank">Qgis-user@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/mailman/listinfo/qgis-user" target="_blank">http://lists.osgeo.org/<u></u>mailman/listinfo/qgis-user</a><br>
</div></div></blockquote></div><br></div></div>