Guillermo buenos dias tienes razon el ultimo registro deberia decir 3 por el cambio de sector estoy revisando la funcion window solo estoy logrando numerar correlativamente y lo que necesito es colocar el numero por cada cambio de sector
sector mz numero 0901 mz1 1 0901 mz2 1 0901 mz3 1 0902 mz1 2 0902 mz2 2 0903 mz3 3 El 15 de abril de 2014, 7:27, Guillermo E. Villanueva < [email protected]> escribió: > José buen día, no manejo nada de gis pero solo comento: tu ejemplo creo > que tiene un error no? el último registro tiene cambio de sector y el > número sigue siendo 2. > En caso de que así sea, esto es lo que estás necesitando: > http://www.postgresql.org/docs/9.1/static/tutorial-window.html > Saludos > > Guillermo Villanueva > > > > El 13 de abril de 2014, 1:01, jvenegasperu . <[email protected]>escribió: > > Estimado Victor >> >> gracias por tu interes si entiendo tu consulta localizas un area >> geografica por el perimetro lo cual esta muy bueno sin embargo respecto a >> lo siguiente: >> >> >> >pero veo que estas usando un conjuntos de campos alfanuméricos >> (nomenclatura catastral) para determinar un lugar geográfico, y ademas >> >tenes un campo verdaderamente geográfico. El problema con esto es que >> dependes de que quien manipule los datos, lo hiciera siempre >estrictamente >> bien. Si por ejemplo alguien se equivoca y pone 0901 en lugar de poner 0902 >> cuando imprimas el pdf del numero 1 tendrias >agregado algo que esta solo y >> lejos como si fuera una isla, un polígono posiblemente asilado del resto, y >> cuando imprimas el 2 tendrias un >hueco. >> >> tienes toda la razon podria tener una isla o un hueco en la cartografia >> mi caso funciona asi el usuario por ejemplo dibuja un area geografica con >> quantum gis. yo simplemente he puesto un trigger dentro de la base de datos >> para que automaticamente por ejemplo un conjunto de manzanas se codifiquen >> para pertenecer al sector que dibujo el usuario de esa forma se evita la >> isla o el hueco en la cartografia porque la codificacion se hace en funcion >> a las geometrias afectadas. >> >> Con lo cual se logra como dices que esten estrictamente bien >> codificadas,de hecho se puede realizar la mayoria de operaciones desde el >> lado espacial sin embargo la información de mi sistema debo migrarla >> tambien a un sistema oracle que necesita alguna forma de identificación >> para corresponder con la parte espacial por eso agrego la codificacion de >> esa forma. >> >> Ahora Quantum Gis es capaz de generar los planos a manera de atlas de >> manera automatica por esa razon si se puede lograr la numeración que >> mencione los planos se obtendrian con un par de clics sin preocuparse por >> el encuadre o centrado porque eso se hace automatico ya lo he probado >> varias veces de hecho cuando necesito planos de diferentes lugares yo lleno >> la numeración manualmente y listo. >> >> Comentarte por ejemplo que tener el plano de los 800 grupos poblacionales >> que tiene la ciudad para un tematico x se puede tener listos en unos 3 a 5 >> minutos y yo creo que un computador mas potente podria ser hasta menos >> tiempo. >> >> claro sin contar que previamente yo hago la numeración que explique >> inicialmente la cual me toma aproximadamente unos 30 minutos de trabajo >> realizando los scripts para numerar manualmente directamente en el pgadmin. >> >> por esa razon estoy interesado en poder armar esta función que numere >> cada cambio de un campo de una consulta dada. >> >> ya que tengo un sistema en web para consultar tambien. >> >> pensaba armar una especie almacen de consultas que el usuario realiza.en >> la parte web y poner una opcion que diga preparar planos, cuando le de clic >> a esa opcion el sistema realizaria la numeracion interna para esa consulta >> que armo el usuario y luego desde quantum gis tendria sus planos listos en >> una pasada. >> >> esa es mi idea Victor espero podamos seguir comentando estos temas ya que >> no he tenido mucho contacto con desarrolladores en postgis >> >> saludos a todos y espero no los estemos aburriendo con tanta verborragia >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> El 12 de abril de 2014, 11:25, Victor Hugo Roumieu >> <[email protected]>escribió: >> >> Hola gentes del foro. Estimado Jose, no se si te comprendo y si te puedo >>> ayudar, pero veo que estas usando un conjuntos de campos alfanuméricos >>> (nomenclatura catastral) para determinar un lugar geográfico, y ademas >>> tenes un campo verdaderamente geográfico. El problema con esto es que >>> dependes de que quien manipule los datos, lo hiciera siempre estrictamente >>> bien. Si por ejemplo alguien se equivoca y pone 0901 en lugar de poner 0902 >>> cuando imprimas el pdf del numero 1 tendrias agregado algo que esta solo y >>> lejos como si fuera una isla, un polígono posiblemente asilado del resto, y >>> cuando imprimas el 2 tendrias un hueco. >>> >>> Siendo asi en tu caso bien podrias hacer vistas basandote unicamente en >>> el dato espacial, para ello debieras primer hacerte una tabla con los >>> sectores que quieres graficar, deberian tener los poligonos que marcan el >>> perímetro de la zonas, por ejemplo localidades, barrios, sectores, chacras, >>> quintas, etc. Luego en la vista haces un join entre las dos tablas con las >>> generosas funciones que postgis te da para sql. >>> >>> Un caso de mi base real que es similar creo q lo tuyo es el siguiente: >>> >>> create view aux.mapa1_de_calles as >>> select trim(cllagr.nombre) as nombre, max(cllagr.gid) as gid, st_union( >>> cllagr.cll )::geometry as cll_geom >>> from (select ncl.*,st_intersection( >>> ncl.the_geom,ctstro.mapa_tematico_perimetro( >>> 7 )) as cll >>> from gis.nomencladorcalles ncl >>> where ncl.the_geom&&ST_buffer(ctstro.mapa_tematico_perimetro( 7 >>> ),1) and (ncl.nombre is not null) >>> order by ST_PointN(the_geom,1) desc) as cllagr >>> group by 1; >>> >>> Donde ctstro.mapa_tematico_perimetro( 7 ) es un pl-sql que me retorna >>> un perímetro. >>> Obvio podrias hacer que el sector 7 fuera un parametro, o hacer un >>> procedimiento o materializar la vista, etc. infinitas posibilidades >>> >>> Finalmente como informático viejo que piensa en modo relacional, >>> (deformación profesional) arranco a arreglar las cosas con sql. >>> Es posible por ello esto no te sirva, pero prefiero usar las muchas >>> funciones que te dan los cartuchos espaciales de los motores grandes >>> (postgres-orcale-db2) para resolver lo mas posible, antes de que entre en >>> las herramientas finales com qgis, geoserver, gv-gis etc, ya que sino, no >>> hay diferencia entre usar un terrible motor como postgres-postgis, con un >>> simple sahpe (dbf) >>> >>> Saludos >>> vhr >>> >>> - >>> Enviado a la lista de correo pgsql-es-ayuda ( >>> [email protected]) >>> Para cambiar tu suscripción: >>> http://www.postgresql.org/mailpref/pgsql-es-ayuda >>> >> >> >> >> -- >> José Mercedes Venegas Acevedo >> cel: Mov. 949808846 >> >> mails: [email protected] >> [email protected] >> >> PHP Spanish Docs translator member. >> http://www.php.net/manual/es/index.php >> > > -- José Mercedes Venegas Acevedo cel: Mov. 949808846 mails: [email protected] [email protected] PHP Spanish Docs translator member. http://www.php.net/manual/es/index.php
