Indice de Foros
Foro Cartesia
Geomática y Topografía 
  Cartesia · Crea tu Blog · Cursos · Contacta · Publicidad   · Cartesia twitter ·
 Avanzada
 Indice  FAQFAQ  Registrarse EntrarEntrar 


Conseguir FeatureID (MapObjects LT y VB6)   
Publicar nuevo tema   Responder al tema    Indice de Foros -> SIG y Cartografía
Tema Anterior :: Tema siguiente  
Autor Mensaje
sdemingo



Registrado: 27 Sep 2005
Mensajes: 4

MensajePublicado: Thu 03 Nov 2005, 11:54    Asunto: Conseguir FeatureID (MapObjects LT y VB6) Responder citando

Hola a tod at s,

tengo mi proyecto casi acabado y me acabo de encontrar con un problema de los gordos

En una parte del mismo tengo que leer con Visual Basic 6 un dbf, añadirle varias columnas e insertar valores en dichas columnas.
Bueno, todo funciona bien a través de tablas temporales, cerrando layers, etc...

El problema viene cuando, por ejemplo, en un Shape de líneas (ríos) tengo, por ejemplo, 19 elementos gráficos en el shp asociados a sus respectivos 19 registros del dbf IGUALES, es decir, los campos originales son Nombre_Río, Cod_Río y Longitud. Dicho río viene digitalizado en distintas líneas, con lo que cada registro tiene exactamente los mismos valores en sus tres campos.

Cuando yo quiero introducir valores en los campos que me he creado nuevos, interpreta los 19 registros iguales como uno solo y me da el siguiente error 'Información de columna clave insuficiente o incorrecta; demasiadas filas afectadas por la actualización.'

El código, resumido, es:

Código:

oConexion.ConnectionString = "Driver={Microsoft dBASE Driver (*.dbf)};Persist Security Info=False;Dbq=" & App.Path
    oConexion.CursorLocation = adUseClient
    oConexion.Open

    i = 1
    rs.Open "select * from rios", oConexion, adOpenDynamic, adLockOptimistic
    If rs.RecordCount <> 0 Then
       Do While Not rs.EOF
            rs.Fields("TIPO_N").Value = "LH" & i
            i = i + 1
            rs.MoveNext
        Loop
    End If
    rs.MoveFirst
    rs.Update
    rs.Close


Me actualiza bien los 7 primeros registros, pero al llegar al octavo (que es igual que el 9º y el 10º y así hasta el 25) cuando asigno al campo el valor, me actualiza 19 registros de golpe, y al hacer el MoveNext del RecordSet me da ese error.

Si tuviera un campo clave que fuera único para cada registro ´no habría problema, pero el único campo clave que hay es el FeatureID (FID) el cual no veo nada más que abriendo el shape con ArcMap por ejemplo.

Si abro el dbf con Visual Fox Pro, o Excel no me muestra el FID.

¿¿¿Alguien sabe cómo podría con Visual Basic 6 conseguir el valor del FID para cada registro de un DBF???

Miles de gracias a tod at s
Sergio
Volver arriba
Ver perfil de usuario Enviar mensaje privado MSN Messenger
tomas.fsevilla
Administrador del Foro


Registrado: 28 Mar 2004
Mensajes: 3059

MensajePublicado: Wed 09 Nov 2005, 01:22    Asunto: Responder citando

Desde un punto de vista de análisis, el problema parece estar en el diseño de esa tabla, ya que no se pueden identificar distintas entidades (arcos) por el mismo identificador, que a su vez corresponde a la entidad que forma dichos arcos.

Debería haber una relación intermedia de los arcos (topológicamente hablando) que forman el río con dicha entiendad.

¿no te parece?
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
Mostrar mensajes de anteriores:   

Temas similares
Tema Autor Foro Respuestas Ultimo Mensaje
No hay mensajes nuevos MapObjects naty SIG y Cartografía 1 Tue 20 Sep 2005, 08:45 Ver último mensaje
ccasas
No hay mensajes nuevos MapObjects lopordo SIG y Cartografía 0 Thu 21 Oct 2004, 11:12 Ver último mensaje
lopordo
No hay mensajes nuevos Agregar un campo en un DBF con MapObj... geoinf10 SIG y Cartografía 0 Mon 02 Oct 2006, 23:15 Ver último mensaje
geoinf10
No hay mensajes nuevos Programadores Visual Basic / Mapobjects Currobuscador Ofertas de empleo 0 Fri 06 Jul 2007, 10:05 Ver último mensaje
Currobuscador
No hay mensajes nuevos Como conseguir trabajo Frerip Ofertas de empleo 0 Mon 27 Aug 2018, 23:30 Ver último mensaje
Frerip
No hay mensajes nuevos Comisiones por conseguir trabajos ebisos Topografía 3 Sun 12 Mar 2006, 11:13 Ver último mensaje
ccasas
No hay mensajes nuevos Conseguir cartografía catastral mhtopo Propiedad y Catastro 2 Sun 29 Jul 2012, 20:05 Ver último mensaje
mhtopo
No hay mensajes nuevos forma de conseguir coordenadas U.T.M. lucky Geodesia-GNSS 1 Thu 10 Jul 2008, 17:50 Ver último mensaje
txus

Publicar nuevo tema   Responder al tema    Indice de Foros -> SIG y Cartografía Todas las horas son CET (Europa)
Página 1 de 1

 
Cambiar a:  
Puede publicar nuevos temas en este foro
No puede responder a temas en este foro
No puede editar sus mensajes en este foro
No puede borrar sus mensajes en este foro
No puede votar en encuestas en este foro
No puede adjuntar archivos en este foro
No Puede descargar archivos de este foro


Powered by Cartesia ©