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

Recuperar una datos de un Stored Procedure

Estas en el tema de Recuperar una datos de un Stored Procedure en el foro de Visual Basic clásico en Foros del Web. Hola gente... tengo un problema con una conexión VB6.0 a un Stored Procedure SQL Server 2008. Cuando llego a la linea rstDatos.EOF me arroja el ...
  #1 (permalink)  
Antiguo 31/01/2011, 15:27
 
Fecha de Ingreso: abril-2007
Mensajes: 16
Antigüedad: 17 años
Puntos: 0
Recuperar una datos de un Stored Procedure

Hola gente... tengo un problema con una conexión VB6.0 a un Stored Procedure SQL Server 2008.

Cuando llego a la linea rstDatos.EOF me arroja el siguiente error:
Error '3704' en tiempo de ejecución:
La operación no está permitida si el objeto está cerrado.


Código vb:
Ver original
  1. Dim cmdDatos As ADODB.Command
  2. Dim rstDatos As ADODB.Recordset
  3. Set cmdDatos = New ADODB.Command
  4. Set rstDatos = New ADODB.Recordset
  5. With cmdDatos
  6.     .ActiveConnection = Cnn
  7.     .CommandType = adCmdStoredProc
  8.     .CommandText = "dbo.ReaDatosPersonales"
  9.     .Parameters.Append .CreateParameter("@sApellido", adVarChar, adParamInput, 30, sApellido)
  10.     .Parameters.Append .CreateParameter("@sNombre", adVarChar, adParamInput, 30, sNombre)
  11.     .Parameters.Append .CreateParameter("@sTipoDoc", adChar, adParamInput, 1, sTipoDoc)
  12.     .Parameters.Append .CreateParameter("@nDocumento", adInteger, adParamInput, 80, nDocumento)
  13.     .Parameters.Append .CreateParameter("@dFechaNac", adDBTimeStamp, adParamInput, 10, dFechaNac)
  14.     .Parameters.Append .CreateParameter("@sCodEstadoCivil", adChar, adParamInput, 1, sCodEstadoCivil)
  15.     .Parameters.Append .CreateParameter("@sDomicilio", adVarChar, adParamInput, 80, sDomicilio)
  16.     .Parameters.Append .CreateParameter("@nCodLocalidad", adInteger, adParamInput, 50, nCodLocalidad)
  17.     .Parameters.Append .CreateParameter("@nCodProvincia", adInteger, adParamInput, 50, nCodProvincia)
  18.     .Parameters.Append .CreateParameter("@sTelefono1", adVarChar, adParamInput, 15, sTelefono1)
  19.     .Parameters.Append .CreateParameter("@sTelefono2", adVarChar, adParamInput, 15, sTelefono2)
  20.     .Parameters.Append .CreateParameter("@sEmail1", adVarChar, adParamInput, 30, sEmail1)
  21.     .Parameters.Append .CreateParameter("@sEmail2", adVarChar, adParamInput, 30, sEmail2)
  22. End With
  23. With rstDatos
  24.     .CursorLocation = adUseClient
  25.     .Open cmdDatos, , adOpenStatic, adLockReadOnly, adCmdStoredProc
  26. End With
  27. If Not rstDatos.EOF Then
  28.     a = 1
  29. End If

QUE CARAJO HICE MALLL!!!! JAJAJA
  #2 (permalink)  
Antiguo 07/02/2011, 17:39
Avatar de DexterGlue  
Fecha de Ingreso: septiembre-2010
Ubicación: Managua
Mensajes: 60
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Recuperar una datos de un Stored Procedure

Hola

Revisando a "Vuelo de Pajaro" el codigo que indicas tienes que hacer dos cosas.
  1. Aun que a simple vista se ve bien la asignacion de los parametros no se ha ejecutado el comando todabia, el resultado devuelto por el comando debes asignarlo mediante la instruccion SET al recorset<br>
  2. En el caso de que vayas a asignar los datos algun control lo puedes hacer por medio de un ciclo por lo general se hace con WHILE verificando la propiedad EOF del recorsed, aun que igual lo puedes hacer con FOR por medio de la propiedad RECORDCOUNT

Espero poder ayudarte con estos comentarios

Saludos

Etiquetas: procedure, recuperar, stored
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:35.