Ver Mensaje Individual
  #2 (permalink)  
Antiguo 02/06/2008, 03:07
Avellaneda
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 3 meses
Puntos: 37
Respuesta: Usar Objects como cursores de SQL

Hola, una crítica constructiva:

Ese código, tal y como está escrito, no puede funcionar.
- En la conexión no aplicas ningún valor a la ariable "dirAplicacion", supongo que aquí quieres utilizar la ruta de la aplicación. Para esto es mas eficiente usar App.Path.

- La función Cargar debe de devolver un recordset para que funcione el objeto. En esta función la instrucción If sobra, ya que al asignar rsRegistro como nuevo recordset, lo cierra si está abierto.

Bueno, yo pondría el código así:

Código:
Option Explicit
Public cnConexion As ADODB.Connection
Public rsRegistro As ADODB.Recordset

Public Sub Conexion()
    Set cnConexion = New ADODB.Connection
    cnConexion.ConnectionString = "Provider=Microsoft.Jet.Oledb.4.0; data source=" & App.Path & "\jardineria.mdb"
    cnConexion.CursorLocation = adUseClient
    cnConexion.Open
End Sub

'Carga el recordset.
Public Function Cargar(sSource As String)
    Set rsRegistro = New ADODB.Recordset
    rsRegistro.ActiveConnection = cnConexion
    rsRegistro.CursorType = adOpenDynamic
    rsRegistro.LockType = adLockOptimistic
    rsRegistro.Source = sSource
    rsRegistro.Open
    Set Cargar = rsRegistro
End Function