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

llamado de un store procedure desde un form

Estas en el tema de llamado de un store procedure desde un form en el foro de ASP Clásico en Foros del Web. buenas tardes chicos tendia que hacer un llamado a un store procedure desde un form para cargar una tabla, se que de hace de esta ...
  #1 (permalink)  
Antiguo 10/11/2004, 08:26
Avatar de jUaN_  
Fecha de Ingreso: septiembre-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 220
Antigüedad: 22 años, 7 meses
Puntos: 0
llamado de un store procedure desde un form

buenas tardes chicos

tendia que hacer un llamado a un store procedure desde un form para cargar una tabla,

se que de hace de esta forma

<%
'Creamos la conexion...
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open "DRIVER de conexion"
'Separar los parámetros con coma (,)
oConn.Execute "EXEC procedimiento param1, param2"
oConn.Close
Set oConn = Nothing
%>

pero como traigo los datos desde el formulario, dado que son parametros no nombre de campos?
__________________
<% Viru %>
  #2 (permalink)  
Antiguo 10/11/2004, 10:18
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Esa no es la forma convencional de llamar a los SP desde ASP, sino por medio del objeto command:

set cmd=server.CreateObject("ADODB.command")
Set cmd.ActiveConnection = adoConn
cmd.CommandText = "iCotizacion"
cmd.CommandType=adCmdStoredProc

cmd.Parameters.Append (cmd.CreateParameter("Parametro1", adChar, adParamInput, 8, variable1))
cmd.Parameters.Append (cmd.CreateParameter("Parametro2", adChar, adParamInput, 8, variable2))
cmd.Parameters.Append (cmd.CreateParameter("Parametro3", adChar, adParamOutput, 5))

cmd.Execute

Donde los identificadores "variable 1 y 2", son simples variables que haz llenado con request u algñun otro origen de datos.

Si deseas usar las constantes como en el ejemplo anterior recurda incluir el adovbs.inc

Saludos
  #3 (permalink)  
Antiguo 10/11/2004, 10:33
Avatar de jUaN_  
Fecha de Ingreso: septiembre-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 220
Antigüedad: 22 años, 7 meses
Puntos: 0
encontre una forma de hacerlo asi

<%
tiempo= Now()
'tiempo= cdate(request.form("TIEMPO"))
'Fecha= cint(10800) + DateDiff("s", CDate("01/01/1970"), TIEMPO)
id= request.form("ID")
nombre=request.form("NOMBRE")
apellido_paterno= request.form("APELLIDO_PATERNO2")
Apellido_materno= request.form("APELLIDO_MATERNO")
grupo= request.form("GRUPO")
abierto= request.form("ABIERTO")
tipo_servicio= request.form("TIPO_SERVICIO")
servicio= request.form("SERVICIO")
Estado= request.form("ESTADO")
resolucion= request.form("RESOLUCION")
descripcion= Replace(request.form("DESCRIPCION"), chr(13),"<br>")

response.write "tiempo: " & tiempo

'Creamos la conexion...
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open = "DRIVER={SQL Server}; SERVER=sdbuetycau01; DATABASE=Arsystem; UID=webuser; PWD=1234567"
'Separar los parámetros con coma (,)
oConn.Execute = "EXEC SP_NewRemedyTicket '" & tiempo & "', '" & grupo & "', '" & abierto & "', '" & id & "', '" & descripcion & "', '" & tipo_servicio & "', '" & servicio & "', '" & estado & "', '" & resolucion & "'"

oConn.Close
Set oConn = Nothing
%>
__________________
<% Viru %>

Última edición por jUaN_; 10/11/2004 a las 10:34
  #4 (permalink)  
Antiguo 10/11/2004, 10:47
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Pues si, funciona, y al fin y al cabo es lo importante, pero no es lo más claro que pudieras tener, ¿verdad?. Ya que de esa forma no se controla el tipo ni la longitud y hace casting implícito. Además, no se como recuperarias el valor de un parámetro de salida , de esa forma no he hecho pruebas con esos parámetros.

Saludos
  #5 (permalink)  
Antiguo 11/11/2004, 12:03
Avatar de jUaN_  
Fecha de Ingreso: septiembre-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 220
Antigüedad: 22 años, 7 meses
Puntos: 0
disculpa que te joda, pero estoy tratando de hacer bien el llamado al sp y quisiera saber que son los 8 y los 5 que pusiste, y tambien cuando pusiste parametros del 1 al 3 es solo para enumerarlos no??
__________________
<% Viru %>
  #6 (permalink)  
Antiguo 11/11/2004, 13:20
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
cmd.CreateParameter es un método sobrecargado que recibe 3 o 4 parámetros:
Nombre del parámetro, tipo de dato, tipo de parámetro y opcionalmente el valor que se le envía al parámetro.

http://www.w3schools.com/ado/met_com...eparameter.asp
http://www.devguru.com/Technologies/...parameter.html

Saludos
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 12:19.