Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/10/2010, 10:44
Avatar de eaanillol
eaanillol
 
Fecha de Ingreso: septiembre-2010
Ubicación: Bogota - Colombia
Mensajes: 25
Antigüedad: 13 años, 8 meses
Puntos: 0
Pregunta Como clonar un resordset en vb

Bueno este es mi primer problema manejando objetos resultsets.
Cita:
Iniciado por eaanillol Ver Mensaje
Prengunta:
¿Cómo
clono un objeto resultSet?
Estoy usando el siguiente código


Código:

Const MyConn = "Driver={SQL Server};Server=servidor;Uid=sa;Pwd=password;Database=base_de_datos"
Global Connect As New ADODB.Connection
Global rsl As ADODB.Recordset
Global rsl2 As ADODB.Recordset


Sub prueba()

'Conexión
    Connect.CommandTimeout = 0
    Connect.ConnectionTimeout = 0
    Connect.Provider = "SQLOLEDB"
    Connect.Open MyConn
    If Not Connect.State = adStateOpen Then
      MsgBox "No se pudo hacer la conexion"
      End
    End If

MySql = " SELECT p1.CodCliente, p1.Cliente,p2.ups_zone AS TipoClienteActual, SUM(p1.VrVenta) AS VRVENTA " & _
        " FROM COR_Ventascorrugado p1 " & _
        " INNER JOIN ARCUSFIL_SQL p2 ON (p2.cus_no=p1.CodCliente) " & _
        " WHERE (CONVERT (char(6), fecha, 112) BETWEEN '" & Left(Hoja1.Cells(2, 7), 6) & "' AND '" & Left(Hoja1.Cells(3, 7), 6) & "') " & _
        " AND p1.Estado = 'FACTURADO' AND EMPRESA = 'EMPRESA' " & _
        " GROUP BY p1.CodCliente, p1.Cliente, ups_zone "

    Set rsl = New ADODB.Recordset
        
    rsl.Open MySql, Connect, adOpenDynamic, adLockOptimistic
    

    Set rsl2 = New ADODB.Recordset
    Set rsl2 = rsl.Clone

    
Connect.Close
rsl.close
End Sub
 
Incluso he probado el código que me sugiere la página:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ado270/htm/mdmthclone.asp

Y nada. Me sale el error 3251: el recordset actual no admite marcadores, y eso que use open dynamic como me sugieren en varias paginas.
Estoy usando vb 2005 con office 2003

También he estado buscando la solución en distintos foros y aun no esta resuelto.