[mapserver-users] Expressions

Bob Basques Bob.Basques at ci.stpaul.mn.us
Wed Sep 29 11:52:08 EDT 2010


Don't know if it matters, but you have a LASTWEEK and LASTWEEKS in
there.  Should they both be one or the other? 

bobb 




>>> Jay Kapalczynski <jkapalczynski at ci.maple-grove.mn.us> wrote:

I thank you for your response....greatly appreciated as I cannot figure
this out.... 
I know that I have 4 features in the dataset that have a value of
20100916  that’s 13 days ago....so with the expression below those 4 or
5 features should show up....but nothing shows up 
  
IncidentDa is the field (long integer) 
Param type is specifying YYYYMMDD my data has values of 20100916 (13
days) 
  
I have no idea what could be wrong…Thank you all for your help…. 
  

.XML file 


  <map-source name="Burglaries" type="mapserver"> 


    <file>./maple_grove_datasets/police/Burglaries.map</file> 


    <param type="today" offset="-90" name="LASTNINTY" format="%4Y%2M%2D"
/> 


    <param type="today" offset="-30" name="LASTTHIRTY"
format="%4Y%2M%2D" /> 


    <param type="today" offset="-14" name="LASTTWOWEEKS"
format="%4Y%2M%2D" /> 


    <param type="today" offset="-7" name="LASTWEEK" format="%4Y%2M%2D"
/> 


    <param type="today" offset="0" name="TODAY" format="%4Y%2M%2D" /> 


    <layer name="Burglaries"/> 


  </map-source> 


  


.MAP file 


CLASS 


       NAME 'Last Weeks' 


       EXPRESSION ('[IncidentDa]' > '%LASTTWOWEEKS%' && '[IncidentDa]' <
'%LASTWEEK%') 


       STYLE 


              COLOR 0 100 50 


              SYMBOL "bike"    


              SIZE 12 


       END   


END 

  
======================================= 
  
BUT if I simply place this in there I get all the points…so something is
weird here because most of the dates are older than 7 days. 

CLASS 


       NAME 'Last Weeks' 


       EXPRESSION ('[IncidentDa]' > '%LASTWEEK%’) 


       STYLE 


              COLOR 0 0 0 


              SYMBOL "tent"    


              SIZE 12 


END   


#END 

  
  
-----Original Message-----
From: mapserver-users-bounces at lists.osgeo.org
[mailto:mapserver-users-bounces at lists.osgeo.org] On Behalf Of Stephen
Woodbridge
Sent: Wednesday, September 29, 2010 8:19 AM
To: mapserver-users at lists.osgeo.org
Subject: Re: [mapserver-users] Expressions 
  
In EXPRESSIONS you can evaluate any of the following: 
  
1. Regular expressions treating the value as a string 
2. numeric expressions using booleans like ==,<,>,<=,>= 
3. string expressions like ==, !=, and I think strlen() 
  
So if you converted you dates into a format like YYYYMMDD then it would 
be easy to use a numeric expression like: 
  
EXPRESSION ('[dateValues]' > '%STARTDATE%' && '[dateValues]' <
'%ENDDATE%') 
  
or 
  
EXPRESSION ('[dateValues]' > '%STARTDATE%') 
  
where STARTDATE is the YYYYMMDD value of two weeks ago and ENDDATE would

be in the same format and allow you to extract record betwee any two 
start and end dates. 
  
Or you might be able to figure out a complex regular expression the 
represents the last two weeks like: 
  
EXPRESSION ('[dateValues]' =~ '/%LASTTWOWEEKS%/') 
  
I'm not sure what you would need for the regular expression. 
  
-Steve W 
  
On 9/28/2010 4:23 PM, Jay Kapalczynski wrote: 
> Anyone have anymore ideas about this…. 
>  
> I have a string field with values 
>  
> And the code below. The expression does not seem to be running…if I
only 
> use LASTTWOWEEKS it still draws all the points….and I know there are 
> values in there from 2008 
>  
> Thanks 
>  
> *From:* mapserver-users-bounces at lists.osgeo.org 
> [mailto:mapserver-users-bounces at lists.osgeo.org] *On Behalf Of *Jay 
> Kapalczynski 
> *Sent:* Tuesday, September 21, 2010 9:51 AM 
> *To:* 'Bob Basques'; mapserver-users at lists.osgeo.org 
> *Subject:* RE: [mapserver-users] Expressions 
>  
> My major question is can I do this with a String/text field? Its the 
> only way I can see keeping things in a %2Y%2M%2D format ex. 092110
(Sept 
> 21^st 2
010), otherwise the 0 will get remo> In this example I eliminated two expressions and focused on one 
> Expression to see if it is working. 
>  
> *_I kept this_* 
>  
> <map-source name="Burglaries" type="mapserver"> 
>  
> <file>./maple_grove_datasets/police/Burglaries.map</file> 
>  
> <param type="today" offset="-7" name="LASTWEEK" format="%2Y%2M%2D" /> 
>  
> <param type="today" offset="-14" name="LASTTWOWEEKS"
format="%2Y%2M%2D" /> 
>  
> <param type="today" offset="-30" name="LASTTHIRTY" format="%2Y%2M%2D"
/> 
>  
> <param type="today" offset="-90" name="LASTNINTY" format="%2Y%2M%2D"
/> 
>  
> <layer name="Burglaries"/> 
>  
> </map-source> 
>  
> *_In my map file I used _**_ONLY_**_ this_* 
>  
> CLASS 
>  
> NAME 'Last Weeks' 
>  
> EXPRESSION ('[dateValues]' > '%LASTTWOWEEKS%') 
>  
> STYLE 
>  
> COLOR 0 100 50 
>  
> SYMBOL "bike" 
>  
> SIZE 12 
>  
> END 
>  
> END 
>  
> Now in my data I have these values (below), although every symbol was 
> displayed in the map 
>  
> NOTE THIS IS A TEXT FIELD 
>  
> 081204, 081225,090118 
>  
> These values (above) for the Year, Month, Day format specified in the 
> map source are clearly less than the “last two weeks”, Where as they
are 
> older than the last 14 days….so none of them should show up, but they
do 
>  
> Any thoughts 
>  
> *From:* mapserver-users-bounces at lists.osgeo.org 
> [mailto:mapserver-users-bounces at lists.osgeo.org] *On Behalf Of *Bob
Basques 
> *Sent:* Friday, September 17, 2010 9:25 PM 
> *To:* mapserver-users at lists.osgeo.org 
> *Subject:* Re: [mapserver-users] Expressions 
>  
> A first stab at seeing more than one class, might be to try and switch

> them around order wise, one filter may be overwriting the other for
example. 
>  
> bobb 
>  
>  
>  
>  
> On 9/17/2010 8:20 AM, Jay Kapalczynski wrote: 
>  
> I am using GeoMoose but feel this is more a question for Map Server. 
>  
> I am trying to sort my points by dates using the code below….I think 
> that I can do this but not sure 
>  
> Is this a viable format “2Y%2M%2D” ? 
>  
> As for the field in the shapefile…If I use an integer it removes the 0

> from the 092110, (sept 21^st 2010) 
>  
> If I use a date then there are “/”  … 9/21/10 
>  
> The only way I can see this happening is using a text field with
retains 
> the 0 in 092110 
>  
> When I use the textfield “dateValues” as seen below I can get the
stars 
> to draw but only the LASTWEEK…for some reason the LASTTWOWEEKS does
not 
> show and I know that I have a few records with dates in the last 14
days… 
>  
> Thoughts? 
>  
> THANKS….all your help is very appreciated…. 
>  
> Main .xml file 
>  
> <map-source name="Burglaries" type="mapserver"> 
>  
> <file>./maple_grove_datasets/police/Burglaries.map</file> 
>  
> <param type="today" offset="-7" name="LASTWEEK" format="%2Y%2M%2D" /> 
>  
> <param type="today" offset="-14" name="LASTTWOWEEKS"
format="%2Y%2M%2D" /> 
>  
> <param type="today" offset="-30" name="LASTTHIRTY" format="%2Y%2M%2D"
/> 
>  
> <param type="today" offset="-90" name="LASTNINTY" format="%2Y%2M%2D"
/> 
>  
> <layer name="Burglaries"/> 
>  
> </map-source> 
>  
> .map file 
>  
> CLASS 
>  
> NAME 'Last Weeks' 
>  
> EXPRESSION ('[dateValues]' > '%LASTWEEK%') 
>  
> STYLE 
>  
> COLOR 0 0 0 
>  
> SYMBOL "star" 
>  
> SIZE 12 
>  
> END 
>  
> END 
>  
> CLASS 
>  
> NAME 'Last Two Weeks' 
>  
> EXPRESSION ('[dateValues]' > '%LASTTWOWEEKS%') 
>  
> STYLE 
>  
> COLOR 0 100 50 
>  
> SYMBOL "star" 
>  
> SIZE 12 
>  
> END 
>  
> END 
>  
>  
>  
>  
>  
> _______________________________________________ 
>  
> mapserver-users mailing list 
>  
> mapserver-users at lists.osgeo.org 
<mailto:mapserver-users at lists.osgeo.org> 
>  
> http://lists.osgeo.org/mailman/listinfo/mapserver-users 
>  
>  
>  
> _______________________________________________ 
> mapserver-users mailing list 
> mapserver-users at lists.osgeo.
org 
> http://lists.osgeo.org/mhttp://lists.osgeo.org/mailman/listinfo/mapserver-users 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/mapserver-users/attachments/20100929/a2c5b378/attachment-0001.html


More information about the mapserver-users mailing list