Jukka,

The issue is not only the NLS format, which would govern the output and how the 
sql is interpreted, but there is also the issue of the lexer which is reading 
the xml request. And that would have to change also.

Its also unclear to me if XML / WFS allows other characters as a decimal 
character. I've yet to find any xsd or guide docs that indicate one way or the 
other.

Mike
----
Michael Smith
US Army Corps
Remote Sensing GIS/Center
[email protected]


From: "Rahkonen Jukka (MML)" 
<[email protected]<mailto:[email protected]>>
Date: Tuesday, May 19, 2015 at 5:08 PM
To: "Lime, Steve D (MNIT)" 
<[email protected]<mailto:[email protected]>>, 
"[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>, MapserverList 
OSGEO <[email protected]<mailto:[email protected]>>
Cc: "[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>
Subject: Re: [mapserver-users] [EXTERNAL] Re: Mapserver 7+oracle - wfs 
getFeature with filter on numeric field
Resent-From: Michael Smith 
<[email protected]<mailto:[email protected]>>

Hi,

Without being a programmer I would like to see what would happen if this source 
file

https://github.com/mapserver/mapserver/blob/branch-7-0/maporaclespatial.c

would be edited around line 571-573:
cmd = "alter session set NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss'";

by adding a new block for setting the decimal and thousands separators for 
output

cmd = "alter session set NLS_NUMERIC_CHARACTERS='. '”;

I am not sure of the right syntax. This one works with SQL*Plus and set decimal 
points and space for thousands separator. I think that thousands should be 
without separators but the command seems to require two inputs.

-Jukka Rahkonen-




Lähettäjä: 
[email protected]<mailto:[email protected]>
 [mailto:[email protected]] Puolesta Lime, Steve D (MNIT)
Lähetetty: 19. toukokuuta 2015 22:12
Vastaanottaja: [email protected]<mailto:[email protected]>; 
MapserverList OSGEO
Kopio: [email protected]<mailto:[email protected]>
Aihe: Re: [mapserver-users] [EXTERNAL] Re: Mapserver 7+oracle - wfs getFeature 
with filter on numeric field

Is there somewhere in the capabilities response where a user would declare what 
decimal separators are supported?

From:[email protected]<mailto:[email protected]>
 [mailto:[email protected]] On Behalf Of 
[email protected]<mailto:[email protected]>
Sent: Tuesday, May 19, 2015 2:06 PM
To: MapserverList OSGEO
Cc: [email protected]<mailto:[email protected]>
Subject: Re: [mapserver-users] [EXTERNAL] Re: Mapserver 7+oracle - wfs 
getFeature with filter on numeric field

It seems to be a bug isn't?
Do you want me to open an issue?
"Smith, Michael ERDC-RDE-CRREL-NH" 
<[email protected]<mailto:[email protected]>>

2015-05-19 12:24

A

"[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>

cc

"Rahkonen Jukka (MML)" 
<[email protected]<mailto:[email protected]>>,
 MapserverList OSGEO 
<[email protected]<mailto:[email protected]>>

Objet

Re: [mapserver-users] [EXTERNAL] Re: Mapserver 7+oracle - wfs getFeature with 
filter on numeric field







It looks like whats happening is that’s being converted into 3 Tokens and the 
oracle driver converts it into a number + comma + number.

The tokenizer is not treating that value as a single value.

Mike

From: "[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>
Date: Tuesday, May 19, 2015 at 11:44 AM
To: Michael Smith 
<[email protected]<mailto:[email protected]>>
Cc: "Rahkonen Jukka (MML)" 
<[email protected]<mailto:[email protected]>>,
 MapserverList OSGEO 
<[email protected]<mailto:[email protected]>>
Subject: Re: [mapserver-users] [EXTERNAL] Re: Mapserver 7+oracle - wfs 
getFeature with filter on numeric field

here is the mapserver log with <ogc:PropertyIsEqualTo 
matchCase="true"><ogc:PropertyName>LONG_STAT</ogc:PropertyName><ogc:Literal>-61,8031</ogc:Literal></ogc:PropertyIsEqualTo>

msOracleSpatialLayerWhichShapes. Using this Sql to retrieve the data: SELECT 
ID, NO_STAT_CLIM, NO_STAT_FADQ, NOM_STAT, LATI_STAT, LONG_STAT, ALTI_STAT, 
D_DEB, D_FIN, TIMB_MAJ, USAG_MAJ, rownum, GEOM_POIN FROM (select * FROM 
SMDVDP_STAT_METE WHERE EXTRACT(YEAR FROM D_DEB) = 2014) WHERE  ( LONG_STAT = 
-61.000000,8031.000000 )  AND SDO_FILTER( GEOM_POIN, MDSYS.SDO_GEOMETRY(2003, 
:srid, NULL,MDSYS.SDO_ELEM_INFO_ARRAY(1,1003,3),:ordinates 
),'querytype=window') = 'TRUE'


The problem is
WHERE  ( LONG_STAT = -61.000000,8031.000000 )
_______________________________________________
mapserver-users mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/mapserver-users

Reply via email to