PROC ALMAC. SQL + ASP.NET (VB)
Publicado por maxi (6 intervenciones) el 10/09/2008 19:53:33
Hola
Estoy intentando resolver esto ya hace algunos dias, y estoy convencido
de que el error es simple.
Necesito recuperar un ID de usuario de una tabla, para hacerlo
realizo un select con un campo llamado codigo que también es único para cada
registro, de esta forma devería recuperar el ID sin problemas.
Procedimiento ALMACENADO sql server 2000
cerate procedure get_idusuario_by_codigo
@IDusuario int output,
@CODIGO varchar(50)
AS
SELECT @IDusuario=tabla.IDusuario
FROM tabla
WHERE tabla.CODIGO=@CODIGO
______________________________________________________________________________________
Fúncion para recuperar el ID desde asp.net(VB)
Public Function get_idusuario_by_codigo(ByVal codigo As String) As Integer
objconn = New sqlconnection(strconn)
objcmd = New sqlcommand("get_idusuario_by_codigo", objconn)
objcmd.Commandtype = Commandtype.StoredProcedure
objparam = New sqlparameter
objparam = objcmd.parameters.Add("@IDusuario", sqldbType.int)
objparam.direction = ParameterDirection.Output
objparam = objcmd.parameters.Add("@CODIGO", sqldbType.varchar, 50)
objparam.direction = ParameterDirection.Input
objparam.value = trim(Codigo)
Try
objconn.open()
objreader = objcmd.executeReader()
If objreader.read() Then
Return (objreader.getvalue(0))
Else
Return (-1)
End If
Catch ex As Exception
Return (-2) ' si genera error
Finally
objconn.close()
End Try
End Function
Cuando pruebo la función desde el query analizer de sql 2000 con el siguiente código
------------------------------------------------------------------------------------
Declare @Codigo varchar(50)
declare @IDusuario int
exec get_idusuario_by_codigo @IDusuario output,'25435910mh0qtwmzbl3toc45dxisnu55'
select @IDusuario
------------------------------------------------------------------------------------
'25435910mh0qtwmzbl3toc45dxisnu55' (es un ejemplo de un codigo existente, que deberia
arrojar un ID)
el resultado es correcto, me tira el ID de usuario que necesito. Sin embargo al ejecutar la función
desde asp.net(VB) el resultado es (-1) Esto quiere decir que no encuentra/lee nigun registro.
El error tiene que estar en la funcion de asp.net, sin embargo no lo encuentro.
Cualquier ayuda posible es desde ya agradecida.
Estoy intentando resolver esto ya hace algunos dias, y estoy convencido
de que el error es simple.
Necesito recuperar un ID de usuario de una tabla, para hacerlo
realizo un select con un campo llamado codigo que también es único para cada
registro, de esta forma devería recuperar el ID sin problemas.
Procedimiento ALMACENADO sql server 2000
cerate procedure get_idusuario_by_codigo
@IDusuario int output,
@CODIGO varchar(50)
AS
SELECT @IDusuario=tabla.IDusuario
FROM tabla
WHERE tabla.CODIGO=@CODIGO
______________________________________________________________________________________
Fúncion para recuperar el ID desde asp.net(VB)
Public Function get_idusuario_by_codigo(ByVal codigo As String) As Integer
objconn = New sqlconnection(strconn)
objcmd = New sqlcommand("get_idusuario_by_codigo", objconn)
objcmd.Commandtype = Commandtype.StoredProcedure
objparam = New sqlparameter
objparam = objcmd.parameters.Add("@IDusuario", sqldbType.int)
objparam.direction = ParameterDirection.Output
objparam = objcmd.parameters.Add("@CODIGO", sqldbType.varchar, 50)
objparam.direction = ParameterDirection.Input
objparam.value = trim(Codigo)
Try
objconn.open()
objreader = objcmd.executeReader()
If objreader.read() Then
Return (objreader.getvalue(0))
Else
Return (-1)
End If
Catch ex As Exception
Return (-2) ' si genera error
Finally
objconn.close()
End Try
End Function
Cuando pruebo la función desde el query analizer de sql 2000 con el siguiente código
------------------------------------------------------------------------------------
Declare @Codigo varchar(50)
declare @IDusuario int
exec get_idusuario_by_codigo @IDusuario output,'25435910mh0qtwmzbl3toc45dxisnu55'
select @IDusuario
------------------------------------------------------------------------------------
'25435910mh0qtwmzbl3toc45dxisnu55' (es un ejemplo de un codigo existente, que deberia
arrojar un ID)
el resultado es correcto, me tira el ID de usuario que necesito. Sin embargo al ejecutar la función
desde asp.net(VB) el resultado es (-1) Esto quiere decir que no encuentra/lee nigun registro.
El error tiene que estar en la funcion de asp.net, sin embargo no lo encuentro.
Cualquier ayuda posible es desde ya agradecida.
Valora esta pregunta


0