y como siempre estos problemas le han pasado a alguien más...
http://osgeo-org.1803224.n2.nabble.com/Mapserver-PostGIS-map-file-problem-double-quotes-in-layer-DATA-element-td2984174.html

saludos

Cristian O.
www.digitalbee.cl


2011/5/25 Cristian Olguín Avila <cristianolg...@gmail.com>

> estimado..
>
> pruebe a cambiar el campo DESCRIPTOR a minuscula en su base de datos,
> si no puede porque se usa en otro lugar,
> pruebe con
> DATA 'the_geom from rutasprincipales_ln USING UNIQUE gid USING srid=-1'
> TYPE LINE
> FILTER \"DESCRIPTOR\" = 'Terciaria'"
>
>
> dado que si es string el valor Terciaria debe ir entre comillas simples, y
> el problema de usar columnas con nombre en mayusculas es que sin las
> comillas dobles la consulta no funciona
>
> si esa linea no funciona pruebe alguna combinacion como 2 comillas dobles o
> algo de modo que cuando interprete el phpmapscript, genere una línea que si
> acepte la base de datos.
> saludos
>
> Cristian O.
> www.digitalbee.cl
>
>
> 2011/5/25 Eduardo Bieñkowski <eduko...@gmail.com>
>
>> Ahora intente hacerlo de esta manera
>>
>> DATA 'the_geom from rutasprincipales_ln USING UNIQUE gid USING srid=-1'
>> TYPE LINE
>> FILTER "'descriptor' = 'Terciaria'"
>>
>> y se despliega el mapa, pero ninguna de las capas que solicite en el SQL y
>> en el php_error.log me despliega
>>
>> [25-May-2011 13:32:55] PHP Warning:  DOMDocument::schemaValidate() [<a
>> href='domdocument.schemavalidate'>domdocument.schemavalidate</a>]: Element
>> 'pmapper': No matching global declaration available for the validation
>> root.
>> in /var/www/pmapper-4.0/incphp/query/search.php on line 69
>> [25-May-2011 13:32:55] Validation of search.xml file FAILED:
>> <br />
>> <b>Warning</b>:  DOMDocument::schemaValidate() [<a
>> href='domdocument.schemavalidate'>domdocument.schemavalidate</a>]: Element
>> 'pmapper': No matching global declaration available for the validation
>> root.
>> in <b>/var/www/pmapper-4.0/incphp/query/search.php</b> on line
>> <b>69</b><br
>> />
>>
>> Cuestión que ahora si que estoy desorientado.
>> Saludos
>> EB
>>
>>
>>
>> 2011/5/25 Eduardo Bieñkowski <eduko...@gmail.com>
>>
>> > Ya probé con lo que sugirió Francisco y me largo el error de parseo
>> > siguiente:
>> >
>> > *Warning*: [MapServer Error]: loadLayer(): Parsing error near
>> > (Terciaria):(line 343) in */var/www/pmapper-4.0/incphp/globals.php* on
>> > line *60*
>> > Además de que no aparece la interrfaz gráfica.
>> >
>> > Lo que hice fue ponerle comillas a DESCRIPTOR y sacarle las comillas
>> > simples a Terciaria.
>> > De esta manera abre la interfaz gráfica pero no se visualiza el mapa, al
>> > leer el php_error.log me sale este mensaje
>> >
>> > [25-May-2011 11:06:35] PHP Warning:  [MapServer Error]: msDrawMap():
>> Failed
>> > to draw layer named 'zonas_salud'.
>> >  in /var/www/pmapper-4.0/incphp/map/map.php on line 326
>> > [25-May-2011 11:06:35] PHP Warning:  [MapServer Error]:
>> > msPostGISLayerWhichShapes(): Error (ERROR:  error de sintaxis en o cerca
>> de
>> > «Terciaria»
>> > LINE 1: ... FROM zonas_salud WHERE "DESCRIPTOR"=Terciaria)...
>> >                                                              ^
>> > ) executing query: select
>> >
>> "NOMBRE",encode(AsBinary(force_collection(force_2d("the_geom")),'NDR'),'hex')
>> > as geom,"gid" from (SELECT * FROM zonas_salud WHERE
>> "DESCRIPTOR"=Terciaria)
>> > AS subquery where the_geom && GeomFromText('POLYGON((-169466
>> > 5995586.35980861,-169466 6789793.64019139,1417430
>> 6789793.64019139,1417430
>> > 5995586.35980861,-169466 5995586.35980861))',-1)
>> >  in /var/www/pmapper-4.0/incphp/map/map.php on line 326
>> >
>> > Como escribi en el anterior correo creo que es un tema con los campos
>> CHAR
>> > cuyos valores son TEXTO.
>> > Si pruebo con otros campos que sean NUMERIC funciona, el tema que los
>> tengo
>> > que filtrar si o si por el campo DESCRIPTOR para no tocar toda la base
>> > postgres.
>> > Entonces creo que lo que pasa es que cuando PMAPPER parsea el MAPFILE no
>> > encuentra algun caracter especial para validar campos texto.
>> > Saludos
>> > Eduardo
>> >
>> >
>> >
>> >
>> >
>> >
>> > 2011/5/24 francisco.goma...@gmail.com <francisco.goma...@gmail.com>
>> >
>> > Yo haría para tus datos lo siguiente:
>> >>
>> >> DATA 'the_geom from (SELECT * FROM zonas_salud WHERE
>> >> DESCRIPTOR='Terciaria') AS subquery USING UNIQUE gid USING srid=23030'
>> >>
>> >> si lo que quieres es seleccionar las entidades que tengan exactamente
>> >> esa palabra, sino sería LIKE '%Terciaria%' con comodines (también suelo
>> >> definir el srid)
>> >>
>> >> Un saludo
>> >>
>> >> El 24/05/2011 15:56, Eduardo Bieñkowski escribió:
>> >> > Tengo una consuita para realizar respecto de una SQL en la que quiero
>> >> > recuperar datos según un campo de texto.
>> >> > He utilizado LIKE no funciona
>> >> > DATA 'the_geom from (SELECT * FROM zonas_salud WHERE "DESCRIPTOR"
>> LIKE
>> >> > 'Terciaria') AS zonas USING UNIQUE gid'
>> >> > asi tampoco
>> >> > DATA 'the_geom from (SELECT * FROM zonas_salud WHERE "DESCRIPTOR"
>> LIKE
>> >> > "Terciaria") AS zonas USING UNIQUE gid'
>> >> >
>> >> > He utilizado el signo de = con comillas simples no funciona,
>> >> > DATA 'the_geom from (SELECT * FROM zonas_salud WHERE "DESCRIPTOR"
>> >> > ='Terciaria') AS zonas USING UNIQUE gid'
>> >> >
>> >> > He utilizado el signo de = con comillas dobles tampoco
>> >> > DATA 'the_geom from (SELECT * FROM zonas_salud WHERE "DESCRIPTOR"
>> >> > ='"Terciaria") AS zonas USING UNIQUE gid'
>> >> >
>> >> > Sin nada tampoco funciona
>> >> > DATA 'the_geom from (SELECT * FROM zonas_salud WHERE "DESCRIPTOR"
>> LIKE
>> >> Ruta
>> >> > Terciaria) AS zonas USING UNIQUE gid'
>> >> > DATA 'the_geom from (SELECT * FROM zonas_salud WHERE "DESCRIPTOR"
>> >> > =Terciaria) AS zonas USING UNIQUE gid'
>> >> >
>> >> > Los errores que me salen son del tipo:
>> >> > [24-May-2011 10:54:19] PHP Warning:  [MapServer Error]: msDrawMap():
>> >> Failed
>> >> > to draw layer named 'zonas_salud'.
>> >> >   in /var/www/pmapper-4.0/incphp/globals.php on line 60
>> >> > [24-May-2011 10:54:19] PHP Warning:  [MapServer Error]:
>> >> > msPostGISLayerWhichShapes(): Error (ERROR:  error de sintaxis en o
>> cerca
>> >> de
>> >> > «Terciaria»
>> >> > LINE 1: ...ROM zonas_salud WHERE "DESCRIPTOR" = Terciaria)...
>> >> >
>> >> >
>> >> >
>> >> >
>> >> > Sin embargo si lo hago con PSQL pasando el SELECT * FROM zonas_salud
>> >> WHERE
>> >> > "DESCRIPTOR" ='Terciaria'
>> >> > ESTO SI FUNCIONA
>> >> >
>> >>
>> >>
>> >>
>> >>
>> ------------------------------------------------------------------------------
>> >> vRanger cuts backup time in half-while increasing security.
>> >> With the market-leading solution for virtual backup and recovery,
>> >> you get blazing-fast, flexible, and affordable data protection.
>> >> Download your free trial now.
>> >> http://p.sf.net/sfu/quest-d2dcopy1
>> >> _______________________________________________
>> >> pmapper-users mailing list
>> >> pmapper-users@lists.sourceforge.net
>> >> https://lists.sourceforge.net/lists/listinfo/pmapper-users
>> >>
>> >
>> >
>> >
>> > --
>> > Edu
>> >
>>
>>
>>
>> --
>> Edu
>>
>> ------------------------------------------------------------------------------
>> vRanger cuts backup time in half-while increasing security.
>> With the market-leading solution for virtual backup and recovery,
>> you get blazing-fast, flexible, and affordable data protection.
>> Download your free trial now.
>> http://p.sf.net/sfu/quest-d2dcopy1
>> _______________________________________________
>> pmapper-users mailing list
>> pmapper-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/pmapper-users
>>
>
>
------------------------------------------------------------------------------
vRanger cuts backup time in half-while increasing security.
With the market-leading solution for virtual backup and recovery, 
you get blazing-fast, flexible, and affordable data protection.
Download your free trial now. 
http://p.sf.net/sfu/quest-d2dcopy1
_______________________________________________
pmapper-users mailing list
pmapper-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pmapper-users

Reply via email to