Se bien que no es por llevarme la contra, pero te muestro el error que me sale cuando sustituyo lo que tu me sugieres:
*Warning*: [MapServer Error]: loadLayer(): Parsing error near (%):(line 345) in */var/www/pmapper-4.0/incphp/globals.php* on line *60* *Warning*: Failed to open map file /var/www/pmapper-4.0/config/default/geobusqueda.map in * /var/www/pmapper-4.0/incphp/globals.php* on line *60* No se reconoce el carácter % del like aparentemente, y si le pongo doble comillado me pone que no se reconoce la columna "Terciaria" que obviamente no lo es. Saludos Eduardo El 25 de mayo de 2011 15:48, francisco.goma...@gmail.com < francisco.goma...@gmail.com> escribió: > No es por llevarte la contraria, pero con el código que mandé me > funciona perfectamente en una base de datos en Postgis que tengo montada > (concretamente para mi capa de CCAA de España y nombre de la columna > "NOMBRE99") sin necesidad de poner en el nombre dobles comillas: > > DATA 'the_geom from (SELECT * FROM zonas_salud WHERE DESCRIPTOR LIKE > '%Terciaria%') AS subquery USING UNIQUE gid USING srid=23030' > > Pongo el like porque por lo que veo de tu configuración buscas 'Ruta > Terciaria' y supongo que también el resto que lleve 'Terciaria' > > En cuanto al error del -1, ¿qué código tienes en tu bd en la columna > srid de la tabla public.geometry_columns?, te lo digo porque quizás te > de error entre otras cosas por eso y estoy viendo tu configuración de la > proyección, ¿sabes el código EPSG? > > Otra cosa, si tu bd está codificada en UTF-8 no olvides dentro del > METADATA definir la codificación: > "layer_encoding" "UTF-8" > > te lo digo porque a veces también da error. > > De todas formas es curioso el error que tienes, voy a investigar un poco > a ver :-), a ver si te puedo ayudar > > Un saludo > > > El 25/05/2011 20:29, Eduardo Bieñkowski escribió: > > A pesar de haberlo solucionado en el log de php_errors me sigue saliendo > > cada vez que levanta la susodicha capa el siguiene error: > > > > > > 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 > > 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 > > /> > > > > 2011/5/25 Eduardo Bieñkowski<eduko...@gmail.com> > > > >> Vuelvo a copiar MAPFILE porque por error quedo mezclado, pinto en verde > lo > >> que me dio la solucion. > >> > >> LAYER > >> NAME 'areas_salud' > >> > >> TYPE LINE > >> STATUS ON > >> TRANSPARENCY 100 > >> TEMPLATE void > >> > >> CONNECTIONTYPE postgis > >> CONNECTION "dbname='*****' host=**** port='5432' user='****' > >> password='****'" > >> DATA 'the_geom from "areas_salud" USING UNIQUE gid USING srid=-1 ' > >> TYPE LINE > >> DUMP true > >> TOLERANCE 3 > >> TOLERANCEUNITS pixels > >> SIZEUNITS pixels > >> > >> PROJECTION > >> "proj=utm" > >> "zone=21" > >> "south" > >> "ellps=WGS84" > >> "datum=WGS84" > >> "units=m" > >> "no_defs"USING srid=-1 > >> END # end projection > >> > >> CLASSITEM "DESCRIPTOR" > >> CLASS > >> NAME 'Rutas' > >> EXPRESSION 'Ruta Terciaria' > >> STYLE > >> WIDTH 0.91 > >> COLOR 21 255 51 > >> END > >> LABEL > >> ENCODING "UTF-8" > >> POSITION lc > >> ANGLE AUTO > >> MINDISTANCE 300 > >> COLOR 0 150 150 > >> BUFFER 1 > >> SIZE small > >> END #Label > >> END #end class > >> END # end layer > >> > >> 2011/5/25 Eduardo Bieñkowski<eduko...@gmail.com> > >> > >>> Cristian y Listeros: > >>> > >>> He intentado como tu dices pero a pesar de abrirme el mapa no me > muestra > >>> esa la capa seleccionada y me vuelve e a enviar el mismo mensaje que ya > no > >>> es de SQL sino de parseo de un XML y no se de que se trata. > >>> > >>> [25-May-2011 14:19:54] 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 14:19:54] 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 > >>> /> > >>> > >>> En cuanto al caso que me pasaste en el link no es el error que me pasa > a > >>> mi, es decir no es un tema de la columna de la tabla, hay algun > caracter que > >>> no se reconoce o demas que implica que no se este construyendo de forma > >>> correcta alguno de los XML. > >>> De todas maneras yo quiero resolverlo con un SQL y no utilizando el > >>> FILTER. > >>> Ya que es una base de una cantidad importante de registros y estaria > >>> seleccionandolos todos para luego filtrarlos y no al revés es decir > >>> filtrarlos y seleccionarlos. > >>> Desde el punto de los tiempos y de la optimización de la consulta lo > >>> segundo sería lo mejor. > >>> Gracias > >>> > >>> Saludos > >>> Eduardo > >>> > >>> > >>> El 25 de mayo de 2011 13:47, Cristian Olguín Avila< > >>> cristianolg...@gmail.com> escribió: > >>> > >>> 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 > >>>>> > >>>> > >>> > >>> -- > >>> 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 > -- 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