Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

No reconoce nombres de RecordSets

Estas en el tema de No reconoce nombres de RecordSets en el foro de Visual Basic clásico en Foros del Web. Hola. A ver si a alguien se le ocurre cual puede ser el problema. La cosa es así: Estoy desarrollando un sistema y para conectarme ...
  #1 (permalink)  
Antiguo 11/05/2010, 19:21
 
Fecha de Ingreso: mayo-2010
Mensajes: 16
Antigüedad: 14 años, 7 meses
Puntos: 0
No reconoce nombres de RecordSets

Hola.

A ver si a alguien se le ocurre cual puede ser el problema. La cosa es así: Estoy desarrollando un sistema y para conectarme a varias tablas utilizo Recordsets, uno para cada tabla, por ejemplo RsClientes, RsProductos, RsPedidos etc. la cosa es que de repente el Vb como que "se olvidó" de los RS jeje, bueno bueno, explico mejor, ven que cada vez que escribes por ejemplo "RsClientes." automáticamente se despliega un cuadro con los métodos que tiene disponible ese objeto, por ejemplo open, clone, close, etc. Ok la cosa es que eso ya no sale, y no solo que no sale, sino que al escribir "Rsclientes(" como para poner el indice me sale un "ToolTiptext" que dice "RsClientes as Variant" ????.

Alguien tiene idea de lo que puede ser???

En un modulo (.bas) tengo declarado asi
Global RsUsuario, RsClientes, RsVendedores, RsProductos, RsDepositos, RsPreventas, RsDetalles As ADODB.Recordset, Conn As ADODB.Connection

en el sub Main tengo asi
Set Conn = New ADODB.Connection
Conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & RutaBD & ";Persist Security Info=False"
Conn.Open

y en el form_load tengo esto
Set RsClientes = New ADODB.Recordset
Set RsVendedores = New ADODB.Recordset
Set RsProductos = New ADODB.Recordset
Set RsDepositos = New ADODB.Recordset
Set RsPreventas = New ADODB.Recordset
Set RsDetalles = New ADODB.Recordset

La version del VB que utilizo es 6.0
  #2 (permalink)  
Antiguo 11/05/2010, 20:06
 
Fecha de Ingreso: noviembre-2009
Mensajes: 315
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: No reconoce nombres de RecordSets

seguramente declaraste en el form1 y quieres usarlo en el form2, prueba poneindo
Cita:
form1.rst
  #3 (permalink)  
Antiguo 11/05/2010, 20:41
 
Fecha de Ingreso: mayo-2010
Mensajes: 16
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: No reconoce nombres de RecordSets

carnero, gracias por responder, y la verdad que no, todo esta declarado en el Form_load del mismo formulario, lo que pasa es que funcionaba todo OK y de repente ya no, ah, me olvidaba de comentar que por mas que los metodos no aparezcan, igual si los escribo "a mano" todo funciona, por ejemplo si escribo:

RsClientes(1) = "ClienteXXX"
Rs.Update

si funciona.

Última edición por porciento_veinte; 11/05/2010 a las 20:48 Razón: agrgué unos datos
  #4 (permalink)  
Antiguo 13/05/2010, 12:17
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 15 años, 2 meses
Puntos: 47
Respuesta: No reconoce nombres de RecordSets

Hola!!

Prueba esto en el modulo:

Public RsUsuario As ADODB.Recordset
Public RsClientes As ADODB.Recordset
Public RsVendedores As ADODB.Recordset
Public RsProductos As ADODB.Recordset
Public RsDepositos As ADODB.Recordset
Public RsPreventas As ADODB.Recordset
Public RsDetalles As ADODB.Recordset

Pusiste la referencia ADO?
  #5 (permalink)  
Antiguo 13/05/2010, 23:19
 
Fecha de Ingreso: enero-2008
Ubicación: Lima - Perú
Mensajes: 1.127
Antigüedad: 16 años, 11 meses
Puntos: 10
Respuesta: No reconoce nombres de RecordSets

Yo tambien pensaba igual que tu.
1.-El problema esta en la declaracion de las variables, declaralas como Public en lugar de Global.
2.-Al hacer esto Global RsUsuario, RsClientes.... estas haciendo esto Global RsUsuario as variant, RsClientes as variant y solo estas declarando el tipo de variable a RsDetalles As ADODB.Recordset, variant se declara por defecto.

Asi debe ser:

Código vb:
Ver original
  1. Public RsUsuario As ADODB.Recordset, RsClientes As ADODB.Recordset, RsVendedores As ADODB.Recordset, RsProductos As ADODB.Recordset, RsDepositos As ADODB.Recordset, RsPreventas As ADODB.Recordset, RsDetalles As ADODB.Recordset
  #6 (permalink)  
Antiguo 14/05/2010, 02:56
Avatar de Sergio18  
Fecha de Ingreso: abril-2010
Ubicación: No quieras saberlo
Mensajes: 94
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: No reconoce nombres de RecordSets

Yo lo haria casi como lokoman
primero haria esto:
Código vb:
Ver original
  1. Public RsUsuario As Recordset
  2. Public RsClientes As Recordset
  3. Public RsVendedores As Recordset
  4. Public RsProductos As Recordset
  5. Public RsDepositos As Recordset
  6. Public RsPreventas As Recordset
  7. Public RsDetalles As Recordset

Y despues cuando vayas a utlizar uno:

Código vb:
Ver original
  1. set RsUsuario = New Recordset

Asi es como lo hago yo siempre y va de lujo

Saludos

Etiquetas: adodb, recordset
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 20:12.