Visual Basic - PROCEDI ALMACENADOS: NO ME DEVUELVE LOS OUTPUT

Life is soft - evento anual de software empresarial
 
Vista:

PROCEDI ALMACENADOS: NO ME DEVUELVE LOS OUTPUT

Publicado por aLE (36 intervenciones) el 04/06/2007 20:58:27
GENTE:
SOY NUEVO CON EL SQL SERVER 2005 Y VIUSLA BASIC PERO.. TENGO UNOS PROCEDIMIENTOS DE CARGA BASTANTE SENCILLOS. AL PROCEDIMIENTO LE MANDO MIS DATOS DESDE EL FORM Y ME LOS INSERTA EN UNA TABLA, ANTES DE INSERTAR HAGO UN SELECT PARA BUSCAR EL "ID" NUEVO. ESE ID LO GUARDO EN UNA VARIABLE @ID. HAGO EL INSERT Y ME GUARDO BIEN LOS DATOS DESPUES HAGO UN SELECT @ID Y TERMINO EL PROCEDIMIENTO ALMACENADO. DESDE VB LLAMO AL PROC. ALMAC. MEDIANTE UN RECORSET, AL IGUAL COMO SI FUERA UN SELECT EJ: RS1.OPEN "INSERT_AFILIADO PARAMETRO1, PARAMETRO2,.....PARAMETRO5",Y LOS DEMAS DATOS DE CONEXION ESTO LLAMA AL PROCEDIMIENTO Y FUNCIONA PERO.. SI YO LE HAGO UN IF RS1.EOF=FALSE AND RS1.BOF=FALSE THEN
ME TIRA ERROR: "LA OPERACION NO ESTA PERMITIDA SI EL OBJETO ESTA CERRADO" OSEA QUE NO ME DEVUELVE EL VALOR OUTPUT DEL PROCEDIMIENTO.. Y NECESITO MOSTRAR ESE DATO! POR FAVOR AYUDA CON ESTO...DESDE YA MUCHISIMA GRACIAS
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:PROCEDI ALMACENADOS: NO ME DEVUELVE LOS OUTPUT

Publicado por Cecilia Colalongo (3116 intervenciones) el 04/06/2007 22:27:05
Si estás utilizando ADO puedes hacer:

Dim cnt As Connection, cmd As Command, rst As Recordset

Set cnt = New ADODB.Connection

cnt.Open "TuConnectionString"

Set cmd = New ADODB.Command

Set cmd.ActiveConnection = cnt

cmd.CommandType = adStoredProc
cmd.CommandText = "MiProcedimiento"

cmd.Parameters.Append cmd.CreateParameter("param1",TipoDeDatos,adParamInput,Longitud,Valor

cmd.Parameters.Append cmd.CreateParameter("param2",TipoDeDatos,adParamInput,Longitud,Valor

cmd.Parameters.Append cmd.CreateParameter("param3",TipoDeDatos,adParamOutput,Longitud,Null

Set rst = cmd.Execute

Luego para recuperar los parámetros de salida:

cmd.Paramters.Item("param3").Value
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar