Foros del Web » Programación para mayores de 30 ;) » .NET »

VB6 - Error al intentar coger valor de un campo en blanco con ADODC

Estas en el tema de VB6 - Error al intentar coger valor de un campo en blanco con ADODC en el foro de .NET en Foros del Web. Hola,se que este foro es de .Net pero a ver si alguien me lo puede solucionar. Al cargar un combo de un formulario se cogen ...
  #1 (permalink)  
Antiguo 16/06/2004, 02:38
 
Fecha de Ingreso: mayo-2004
Mensajes: 86
Antigüedad: 20 años, 6 meses
Puntos: 0
Pregunta VB6 - Error al intentar coger valor de un campo en blanco con ADODC

Hola,se que este foro es de .Net pero a ver si alguien me lo puede solucionar.

Al cargar un combo de un formulario se cogen los datos de una tabla "Localidades" (Denominacion,Cod_Localidad)

y luego al cargar, desde una tabla "Clientes"(cod_cliente,...,cod_localidad), el cojo en el cod_localidad para que me de el codigo de la localidad.


Pues al cargar todo uso un ADODC para tener todos los clientes. y al cargar uno que no tenga ninguna localidad asignada, su campo cod_localidad= nulo, me el error 3265, porque en el ADODC.Recordset.Fields("Cod_Localidad") no hay nada.

dim cod as string
cod = "" & ADODC.Recordset.Fields("Cod_Localidad").value
if not cod = "" then
.... aqui hago una select para coger de la tabla localidad la denominacion
que luego la introduzco en el combo.
end if

El error me salta en la linea:
cod = ADODC.Recordset.Fields("Cod_Localidad").value
cod = "" & ADODC.Recordset.Fields("Cod_Localidad").value

Necesitaria saber como hacer una comparacion de algo que no tiene asignado un valor. he probado esto:
if not ADODC.Recordset.Fields("Cod_Localidad").value then ...
if ADODC.Recordset.Fields("Cod_Localidad").value = "" then ...
if ADODC.Recordset.Fields("Cod_Localidad").value= Nothing then ...
if ADODC.Recordset.Fields("Cod_Localidad").value=null then ...

y siempre me da el error 3265.

Por favor una ayuda rapida??? Gracias, un saludo a todos
__________________
Alguien sabe como es?
  #2 (permalink)  
Antiguo 16/06/2004, 02:47
 
Fecha de Ingreso: mayo-2004
Mensajes: 27
Antigüedad: 20 años, 6 meses
Puntos: 0
yo creo que la cuestion no es como comparar algo que no tiene un valor asignado, sino que al ser cod_localidad una FK de la tabla Localidades (es asi , no??) no deberia tener ningun valor nulo.
un saludo
  #3 (permalink)  
Antiguo 16/06/2004, 02:51
Avatar de luiscl  
Fecha de Ingreso: abril-2004
Ubicación: Zaragoza
Mensajes: 305
Antigüedad: 20 años, 7 meses
Puntos: 0
prueba esto

If addodc.recordset.fields("Cod_Localidad") is DbNull.Value Then...
__________________
Pide lo que quieras...y luego paga por ello
  #4 (permalink)  
Antiguo 16/06/2004, 02:52
Avatar de GeRuNdIo  
Fecha de Ingreso: marzo-2004
Ubicación: Sanlúcar de Barrameda, Cádiz
Mensajes: 232
Antigüedad: 20 años, 8 meses
Puntos: 2
Lo siento .... Pero pa mi que te has equivocao de canal.....Supongo y espero que el orígen de este mensaje sea movido a otro lado. Esto es para .NET no para versiones anteriores......en Programación seguramente te puedan ayudar mas.
1Saludo!
__________________
Una buena forma de sacar las castañas del fuego sin quemarse: LEE FOROSDELWEB..... :si:
------
F.P.R. MCAD .NET
  #5 (permalink)  
Antiguo 16/06/2004, 03:38
 
Fecha de Ingreso: mayo-2004
Mensajes: 86
Antigüedad: 20 años, 6 meses
Puntos: 0
Para Ares, El tema es que en cliente el campo de localidad no es obligartorio meterle a meter uno nuevo, pero al mostrarlo debe pasar por alli, para cargar cuando un cliente si tenga ese campo.

Ahora probare lo de luiscl,gracias...
__________________
Alguien sabe como es?
  #6 (permalink)  
Antiguo 16/06/2004, 03:48
 
Fecha de Ingreso: mayo-2004
Mensajes: 27
Antigüedad: 20 años, 6 meses
Puntos: 0
Sigo pensando que una FK debe tener siempre datos, prueba a ponerle -1 cuando la dejen en blanco y asi no compararias con valores nulos sino con -1.
  #7 (permalink)  
Antiguo 16/06/2004, 04:13
Avatar de GeRuNdIo  
Fecha de Ingreso: marzo-2004
Ubicación: Sanlúcar de Barrameda, Cádiz
Mensajes: 232
Antigüedad: 20 años, 8 meses
Puntos: 2
Mu bonito, cada vez la cagas aún mas

Cita:
MENSAJE PRIVADO DE: fonsypool

metete en tus asuntos

--------------------------------------------------------------------------------

Bueno me parece a mi que no hay mas que impertinentes en cadiz si repasas el contenido de mi mensaje digo claramente que ya se que es de .net el foro, aún asi no creo que seas tu el indicado para decirme donde o no tengo que poner mis preguntas asi que creo que para tocar los cojones no deberias contestar. Un saludo Impertinente cabón de tu amigo fonsypool

pd:la proxima vez no me digas ni muuu
__________________
Con esto queda claro con quien estamos tratando compañeros de forosdelweb.
Con mi post sólo quería hacer saber a este "elemento" que le podrían ayudar mas en en canal de Programación, pero parece que le ha sentado mal al sensible este.....
Nada mas que decir al respecto, sólo que des la cara, cobarde!!, y no continues con el jueguecito de los MP.
__________________
Una buena forma de sacar las castañas del fuego sin quemarse: LEE FOROSDELWEB..... :si:
------
F.P.R. MCAD .NET
  #8 (permalink)  
Antiguo 16/06/2004, 04:34
 
Fecha de Ingreso: mayo-2004
Mensajes: 86
Antigüedad: 20 años, 6 meses
Puntos: 0
Lo que pregunto me lo puedes reponder en ASP.Net si quieres sigue siendo el mismo codigo. He puesto lo de VB6 porque lo estoy haciendo en VB6 pero insiste en que la solucion me la puedes dar en cualquier tipo de lenguaje incluido en VB .Net
__________________
Alguien sabe como es?
  #9 (permalink)  
Antiguo 16/06/2004, 04:41
 
Fecha de Ingreso: mayo-2004
Mensajes: 86
Antigüedad: 20 años, 6 meses
Puntos: 0
Ares, si el tema seria el mismo con un campo normal, si el problema es el que a leer un campo en blanco pueda poner una comparacion en la que pueda saber si hay datos en el ADODC.

Gerundio, sigo insistiendo en lo mismo que la otra vez, que primero leer lo que pone y luego poner algo coherente, porque tu contestacion parece decir quita de aqui esto que VB6 esta anticuado, y ademas la pregunta la hago sobre VB6 (si es cierto que deberia ponerlo en programacion,(lo esta minutos antes de haberlo puesto aqui) pero el problema sigue siendo lo mismo si usara VB .Net asi que pienso que la pregunta esta en buen sitio). Sin mas pesadeces, saludos.

Y yo estoy dispuesto a ayudar aunque me pregunten como instalar el IIS con Sharepoint en Win200. Sabiendo que esto es un foro de programacion.
__________________
Alguien sabe como es?
  #10 (permalink)  
Antiguo 16/06/2004, 04:47
Avatar de GeRuNdIo  
Fecha de Ingreso: marzo-2004
Ubicación: Sanlúcar de Barrameda, Cádiz
Mensajes: 232
Antigüedad: 20 años, 8 meses
Puntos: 2
Que va,que va...... anticuado para nada, de hecho yo aún sigo programando en VB 6. El lunes entrego una aplicación que he realizado en VB6 a un centro de formación profesional basado en la notificacion de mensajes recibidos en una base de datos....
Simplemente no te encabrones de esa forma.......
Xao!!
__________________
Una buena forma de sacar las castañas del fuego sin quemarse: LEE FOROSDELWEB..... :si:
------
F.P.R. MCAD .NET
  #11 (permalink)  
Antiguo 16/06/2004, 05:56
 
Fecha de Ingreso: mayo-2004
Mensajes: 86
Antigüedad: 20 años, 6 meses
Puntos: 0
Ya lo he solucionado, usando la funcion IsNull()

if isnull(ADODC.Recordset.Fields("Cod_Localidad")) then
end if

Gracias por la ayuda
__________________
Alguien sabe como es?
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:58.