border

Miembros:
Mensajes:
Temas:
Online:

Ultimo Miembro:

 
 

Cuenta Bancaria en EEUU
  #1 (permalink)  
Antiguo 25-02-2005, 18:39:36
Avatar de jrios03
Moderador
 
Registrado: ene 2005
Ubicación: Curico
Posts: 792
jrios03 Valoración +2
Contactar con jrios03 a través de MSN
Predeterminado Run time error '13'; Type mismatch

Hoal de nuevo...

Tengo la siguiente consulta para llenar un ComboBox:
Código:
    Set base = OpenDatabase(App.Path + "\base.mdb")
    
    sql = "Select * from chofer order by cho_nom"
    Set REG = base.OpenRecordset(sql)
    
    REG.MoveFirst
    While Not REG.EOF
        chofer.AddItem (REG.Fields("cho_nom"))
        REG.MoveNext
    Wend
No sé cual puede ser el error...

Por favor ayúdenme...

Atentamente, Juan Ríos P.
__________________
Atentamente, Juan Ríos Pizarro...
Saludos desde Chile...

PD: Perdí mi mascota... buaaaaaaaa.... al menos encontré una nueva
Responder Con Cita
  #2 (permalink)  
Antiguo 25-02-2005, 19:30:24
Moderador
 
Registrado: dic 2002
Ubicación: Madrid
Posts: 4.271
acalanto ha deshabilitado la reputación
Predeterminado

Verifica que cho_nom existe y es tipo cadena. Por el nombre parece que así debería ser, pero el error que te devuelve y siempre que se produzca en ese punto <additem>, es referente a que intentas asignar un valor numérico o nulo a un objeto (Combo) que sólo acepta String.

Depura la aplicación y verifica el contenido de ese campo, de lo contrario es muy difícil determinar cual es su origen.
__________________
Un cordial saludo
-Acalanto-

Madrid - España

Visual Basic
Videos Programacion
Foro Programacion
Tutoriales Programacion
Responder Con Cita
  #3 (permalink)  
Antiguo 25-02-2005, 19:40:39
Avatar de jrios03
Moderador
 
Registrado: ene 2005
Ubicación: Curico
Posts: 792
jrios03 Valoración +2
Contactar con jrios03 a través de MSN
Predeterminado

El error se produce en el sector que les indico a continuación:

Código:
    Set base = OpenDatabase(App.Path + "\base.mdb")
   
    sql = "Select * from chofer order by cho_nom"
**  Set REG = base.OpenRecordset(sql)
   
    REG.MoveFirst
    While Not REG.EOF
        chofer.AddItem (REG.Fields("cho_nom"))
        REG.MoveNext
    Wend
Tengo exactamente la misma consulta en otro fomr y la utilizo para lo mismo...

Pero no sé qué es lo que pasa, ya que en el otro form sí funciona...

El campo cho_nom existe y es un String...

No entiendo el por qué lanza ese error...

Gracias de antemano...
__________________
Atentamente, Juan Ríos Pizarro...
Saludos desde Chile...

PD: Perdí mi mascota... buaaaaaaaa.... al menos encontré una nueva
Responder Con Cita
  #4 (permalink)  
Antiguo 25-02-2005, 19:43:52
Moderador
 
Registrado: dic 2002
Ubicación: Madrid
Posts: 4.271
acalanto ha deshabilitado la reputación
Predeterminado

REG está declarado como Recordset y sql como String.

Me parece que tienes algún problema de datos aunque no lo estés detectando. Lo mejor es que con F8 vayas depurando paso a paso el código e inspeccionando que cosa tiene cada variable en cada paso. Mientras no hagas esto que te digo puedes estar en un ciclo sin fin.
__________________
Un cordial saludo
-Acalanto-

Madrid - España

Visual Basic
Videos Programacion
Foro Programacion
Tutoriales Programacion
Responder Con Cita
  #5 (permalink)  
Antiguo 25-02-2005, 20:02:27
Avatar de jrios03
Moderador
 
Registrado: ene 2005
Ubicación: Curico
Posts: 792
jrios03 Valoración +2
Contactar con jrios03 a través de MSN
Predeterminado

Lo he inspeccionado con el F8, pero me dice que:

Código:
Set REG = base.OpenRecordset(sql)
no contiene nada... (Nothing)...

Eso es lo que no entiendo...

Código:
sql = "Select * from chofer order by cho_nom"
cuando me posiciono en sql me dice que tiene el valor de la consulta...

Qué será lo que le pasa?

Atentamente, Juan Ríos P.
__________________
Atentamente, Juan Ríos Pizarro...
Saludos desde Chile...

PD: Perdí mi mascota... buaaaaaaaa.... al menos encontré una nueva
Responder Con Cita
  #6 (permalink)  
Antiguo 25-02-2005, 20:24:17
Moderador
 
Registrado: dic 2002
Ubicación: Madrid
Posts: 4.271
acalanto ha deshabilitado la reputación
Predeterminado

Verifica en la inspección el tipo de objetos, que base sea realmente una base de datos, que reg sea realmente un tipo recordset. Esta claro que alguna declaración tienes mal pero no sé cual puede ser.

En el inicio de código inserta la directica Option Explicit que te obliga a declarar todas las variables y objetos que utilizas y detiene la compilación cuando algo no está debidamente declarado.
__________________
Un cordial saludo
-Acalanto-

Madrid - España

Visual Basic
Videos Programacion
Foro Programacion
Tutoriales Programacion
Responder Con Cita
  #7 (permalink)  
Antiguo 25-02-2005, 20:32:49
Avatar de jrios03
Moderador
 
Registrado: ene 2005
Ubicación: Curico
Posts: 792
jrios03 Valoración +2
Contactar con jrios03 a través de MSN
Predeterminado

Señor Acalanto, le envío mi aplicación adjunta para ver si usted puede revisarla y encontrar lo que haya mal...

Espero que me pueda ayudar...

Atentamente, Juan Ríos P.
__________________
Atentamente, Juan Ríos Pizarro...
Saludos desde Chile...

PD: Perdí mi mascota... buaaaaaaaa.... al menos encontré una nueva
Responder Con Cita
  #8 (permalink)  
Antiguo 25-02-2005, 21:24:29
Moderador
 
Registrado: dic 2002
Ubicación: Madrid
Posts: 4.271
acalanto ha deshabilitado la reputación
Predeterminado

Existe una sutíl pero indispensable diferencia en la forma que declaras los objetos, a la forma en que lo he hecho yo.

Database y Recordset no son nada si no pertenecen a ADO ADODB o a otro componente proveedor de datos.

Te aconsejo que csiempre que te ocurran cosas así, no des por hecho que en otra parte del código te funcionan e investiga en profundidad las propiedades de todo aquello que has declarado (Con Mayúsc+F9 puedes inspeccionar todos los objetos). Estate segiro que proporcionan una información relevante para subsanar problemas.


Código:
Option Explicit


Public tipo As String
Public base As dao.Database
Public REG As dao.Recordset
Public sql As String

Espero que te reulte útil el consejo.
__________________
Un cordial saludo
-Acalanto-

Madrid - España

Visual Basic
Videos Programacion
Foro Programacion
Tutoriales Programacion
Responder Con Cita
  #9 (permalink)  
Antiguo 25-02-2005, 22:06:39
Avatar de jrios03
Moderador
 
Registrado: ene 2005
Ubicación: Curico
Posts: 792
jrios03 Valoración +2
Contactar con jrios03 a través de MSN
Predeterminado

Muchas gracias Acalanto... eres un verdadero genio...

:smt012
__________________
Atentamente, Juan Ríos Pizarro...
Saludos desde Chile...

PD: Perdí mi mascota... buaaaaaaaa.... al menos encontré una nueva
Responder Con Cita
Respuesta


Herramientas
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are habilitado


Temas Similares
Tema Autor Foro Respuestas Último Mensaje
Error: Bad variable type. (Exception from HRESUL: 0X80020008 nvargas Visual Basic.NET 2003 & 2005 0 12-02-2008 22:42:14
Run time error 3170 en XP JUANMIGUELLAZAROFF Sistemas Operativos 3 26-10-2005 18:00:35
Run time error 429 Aldeanete Visual Basic 6.00 1 31-08-2005 00:25:32
Run-time error -2147417846 (8001010a): Automation Error ccortes Visual Basic 6.00 2 17-09-2004 01:00:00
Run-time error 713 ccortes Visual Basic 6.00 14 31-07-2004 01:00:00


La franja horaria es GMT. Ahora son las 02:01:58.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0
A vBSkinworks Design

Alojado en el servicio Premium de Masquewebs | Diseño mejorado por MasqueWebs

right