Foros del Web » Programando para Internet » ASP Clásico »

ejecutar procedimientos almacenados desde asp

Estas en el tema de ejecutar procedimientos almacenados desde asp en el foro de ASP Clásico en Foros del Web. Saludos a Todos, Si me pueden ayudar con esto seria genial. En una pagina ASP realizo una ejecucion de un procedimiento almacenado a la cual ...
  #1 (permalink)  
Antiguo 06/06/2010, 12:21
 
Fecha de Ingreso: junio-2010
Mensajes: 2
Antigüedad: 13 años, 10 meses
Puntos: 0
ejecutar procedimientos almacenados desde asp

Saludos a Todos,
Si me pueden ayudar con esto seria genial.

En una pagina ASP realizo una ejecucion de un procedimiento almacenado a la cual le envio parametros de entrada y salida.

Lo que quiero obtener es el parametro de salida y ademas el recordset pero todo en una sola consulta. El codigo es el siguiente.

SQL = "{call TABLAS.tipo(?,?,?,?,?)}"
set cmd = server.CreateObject ("ADODB.Command")
with cmd
set .ActiveConnection = ObjConn
.CommandText = SQL
.CommandType = 1
set param1 = .CreateParameter("Codigo", adDouble , 1 , , 1)
.Parameters.Append param1
set param2 = .CreateParameter("tipo", adBSTR , 1 , , "T")
.Parameters.Append param2
set param3 = .CreateParameter("err_cod", adDouble , AdParamOutput )
.Parameters.Append param3
set param4 = .CreateParameter("err_des", adBSTR , AdParamOutput,20 )
.Parameters.Append param4
set param5 = .CreateParameter("dato", adBSTR , AdParamOutput )
.Parameters.Append param5
end with
set RS = server.CreateObject ( "ADODB.Recordset" )

set RS = cmd.execute
parametro_salida = cmd.Parameters("err_cod")

En las dos ultimas lineas quiero obtener el recordset y ademas el parametro de salida que estoy devolviendo desde mi procedimiento almacenado.

Lo que tengo claro es que si lo realizo en dos llamado me devuelve el recordset y el parametro de salida.

set RS = cmd.execute --> devuelve Recordset

cmd.execute --> devuelve parametro de salida

Pero lo que quiero es en un solo llamado obtener recordset y ademas el parametro de salida.

Cualquier aporte se agradece.
  #2 (permalink)  
Antiguo 06/06/2010, 23:34
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 3 meses
Puntos: 98
Respuesta: ejecutar procedimientos almacenados desde asp

Hola pamartinezt,

No puedes...necesitas primero obtener el recordset y cerrarlo y después obtener el parámetro de salida, puedes por ejemplo obtener el recordset:

Código ASP:
Ver original
  1. set rs = cmd.Execute
  2. 'guarda en un arreglo con getrows
  3. ds = rs.getrows()
  4. rs.close
  5. 'obtienes el parametro
  6. param = cmd.parameters("parametro")

También recuerda de ofuscar la información de los registros afectados por medio de la instrucción:

SET NOCOUNT ON

Al principio de tu stored procedure.


Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 07/06/2010, 13:03
 
Fecha de Ingreso: junio-2010
Mensajes: 2
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: ejecutar procedimientos almacenados desde asp

Me funciono perfecto..!!!

Gracias por tu tiempo u_goldman.

Saludos.
  #4 (permalink)  
Antiguo 08/06/2010, 00:51
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 3 meses
Puntos: 98
Respuesta: ejecutar procedimientos almacenados desde asp

Por nadas
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway

Etiquetas: asp, ejecutar, procedimiento, almacenar
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 03:31.