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

Sintaxis para recoger un parametro de un store procedure

Estas en el tema de Sintaxis para recoger un parametro de un store procedure en el foro de ASP Clásico en Foros del Web. Hola tengo un store procedure q retorna un valor pero no se cual es la sintaxis en asp para recoger ese parametro Saludos...
  #1 (permalink)  
Antiguo 16/11/2007, 09:23
 
Fecha de Ingreso: enero-2006
Mensajes: 233
Antigüedad: 19 años, 4 meses
Puntos: 2
Sintaxis para recoger un parametro de un store procedure

Hola
tengo un store procedure q retorna un valor
pero no se cual es la sintaxis en asp para recoger ese parametro

Saludos
  #2 (permalink)  
Antiguo 16/11/2007, 14:14
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Re: Sintaxis para recoger un parametro de un store procedure

Tienes que crear un parametro de salida:

Código:
Set param = cmd.CreateParameter("nombre", adInteger, adParamOutput, 4)
cmd.Parameters.Append(param)

cmd.Execute()
variable = cmd.Parameters("nombre")
Salud
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 16/11/2007, 15:14
 
Fecha de Ingreso: enero-2006
Mensajes: 233
Antigüedad: 19 años, 4 meses
Puntos: 2
Re: Sintaxis para recoger un parametro de un store procedure

ok pero si el parametro no es entero
  #4 (permalink)  
Antiguo 16/11/2007, 15:29
 
Fecha de Ingreso: enero-2006
Mensajes: 233
Antigüedad: 19 años, 4 meses
Puntos: 2
Re: Sintaxis para recoger un parametro de un store procedure

adInteger: me imagino q es el tipo,
adParamOutput : me dise q es de salida el parmaetro
y cuatro 4 que es ?
  #5 (permalink)  
Antiguo 16/11/2007, 15:34
 
Fecha de Ingreso: enero-2006
Mensajes: 233
Antigüedad: 19 años, 4 meses
Puntos: 2
Re: Sintaxis para recoger un parametro de un store procedure

mira lo que he hecho
creo q esta bien segun lo q he leido
el tiene un parametro de entrada y otro de salida
el valor de entrada es string y el de salida es int pero no se como declararlo
<%
set conSRG=Server.CreateObject("ADODB.Connection")
Set cmdSRG = Server.CreateObject("ADODB.Command")
Set lrsDatosRep=Server.CreateObject("ADODB.Recordset")
'Abre Conexión a Base de Datos SRG
conSRG.Open Application("DSN_SRG")
'Establece tipo de comando
'cmdSRG.CommandType=1
Set cmdSRG.ActiveConnection = conSRG

set cmdSRG.ActiveConnection=conSRG

cmdSRG.CommandText = "{ call SP_VTHistoryRep(?,?) }"
cmdSRG.parameters.append cmdSRG.createparameter("Num",adInteger, adParamOutput)
cmdSRG.parameters.append cmdSRG.createparameter("PsNumReporte",adInteger, adParamInput)
cmdSRG.parameters("PsNumReporte") ="07-999-1679"
cmdSRG.Execute
response.write Num
%>
el error que me manda es fuera de rango
  #6 (permalink)  
Antiguo 16/11/2007, 17:27
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Re: Sintaxis para recoger un parametro de un store procedure

Si estás cerca Nancy, lo único que necesitas es declarar bien el de entrada:

Básicamente los argumentos son: "nombre", adVaChar, adParamInput, [longitud del campo], valor

Por aca tratamos a detalle el tema

A ver si te funciona
Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #7 (permalink)  
Antiguo 19/11/2007, 08:45
 
Fecha de Ingreso: enero-2006
Mensajes: 233
Antigüedad: 19 años, 4 meses
Puntos: 2
Re: Sintaxis para recoger un parametro de un store procedure

gracias pero sigo sin veer el error

el error q me manda es el siguiente
ADODB.Command error '800a0bb9'
Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another.

mi codigo
<%
set conSRG=Server.CreateObject("ADODB.Connection")
Set cmdSRG = Server.CreateObject("ADODB.Command")
'Abre Conexión a Base de Datos SRG
conSRG.Open Application("DSN_SRG")
response.write conSRG
'cmdSRG.CommandType=4
Set cmdSRG.ActiveConnection = conSRG

cmdSRG.CommandText = "{ call SP_VTHistoryRep(?,?)}"
cmdSRG.parameters.append cmdSRG.createparameter("Num",adInteger, adParamOutput)
cmdSRG.parameters.append cmdSRG.createparameter("PsNumReporte",adVaChar,adP aramInput)
cmdSRG.parameters("PsNumReporte")="07-999-1679"
cmdSRG.Execute

%>


mi store procedure

CREATE procedure SP_VTHistoryRep(@PsNumReporte Varchar(13)=Null,@Num int=Null OUTPUT)as

--verifica
begin
declare @Encontrado int
Set @Encontrado= (Select count(*)from THISTORYREP where @PsNumReporte=sNumReporte)
if @Encontrado > 0
Select @Num =1
else
Select @Num=0
end
GO

Muchisimas gracias
Sludos
  #8 (permalink)  
Antiguo 19/11/2007, 10:29
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
Re: Sintaxis para recoger un parametro de un store procedure

Solo por curiosidad ... ¿ya incluiste el archivo de constantes ADO?
  #9 (permalink)  
Antiguo 19/11/2007, 10:46
 
Fecha de Ingreso: enero-2006
Mensajes: 233
Antigüedad: 19 años, 4 meses
Puntos: 2
Re: Sintaxis para recoger un parametro de un store procedure

me hablas de este archivo
<!--#include file="../Include/ADOVBS.INC"-->
la verdad no lo tenia pero ahora que me lo comentas lo inclui y me mando otro error

ADODB.Parameters error '800a0e7c'

Parameter object is improperly defined. Inconsistent or incomplete information was provided.

/newintranet/SRG/Administrador Reportes/prueba.asp, line 14
  #10 (permalink)  
Antiguo 19/11/2007, 11:09
 
Fecha de Ingreso: enero-2006
Mensajes: 233
Antigüedad: 19 años, 4 meses
Puntos: 2
Re: Sintaxis para recoger un parametro de un store procedure

ok muchicimas gracias excelente
la solucion estaba en ese archivo
tiene estas constantes
'Const adParamInput = &H0001
'Const adParamOutput = &H0002
'Const adVarChar = 200
'Const adInteger = 3
y en mi codifo quedo asi

cmdSRG.parameters.append cmdSRG.createparameter("Num",adInteger, adParamOutput,3)
cmdSRG.parameters.append cmdSRG.createparameter("PsNumReporte",adVarChar,ad ParamInput,200)
  #11 (permalink)  
Antiguo 19/11/2007, 14:21
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
Re: Sintaxis para recoger un parametro de un store procedure

Que bueno que lograste solucionar el problema
  #12 (permalink)  
Antiguo 20/11/2007, 08:19
 
Fecha de Ingreso: enero-2006
Mensajes: 233
Antigüedad: 19 años, 4 meses
Puntos: 2
Re: Sintaxis para recoger un parametro de un store procedure

me gustaria manejar ese valor retornado con un javascript osea si el valor es uno q me mande una pantallita el reporte tal ya existe en la base de datos mi pregunta es, se puede manejar datos asp en un jscript
osea en la pantalla me me dira
el reporte numero 88888 ya exixte
la pantalla es jscript y el dato viene de una variable asp
ok entonces,
bueno me gustaria sacar un tema nuevo por esta interesante y lo mustro mas detallado pero primero quiero saber si se puede
bye
  #13 (permalink)  
Antiguo 20/11/2007, 13:14
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
Re: Sintaxis para recoger un parametro de un store procedure

si, se puede.

<%VariableASP = "algo"%>
<script>
alert('Valor asp: <%=VariableASP%>')
</script>
  #14 (permalink)  
Antiguo 20/11/2007, 14:41
 
Fecha de Ingreso: enero-2006
Mensajes: 233
Antigüedad: 19 años, 4 meses
Puntos: 2
Re: Sintaxis para recoger un parametro de un store procedure

ok gracias te lo muestro en un momento pero una consulta estoy llenando un vector con los datos de un select pero no se como declar el recordset en el for para tomar la longitud del vector
asi lo estoy haciendo
for i=0 to lrsDatosRep.count 'aqui me manda error, lrsDatosRep. es mi recordset
reponse.write i
'redim vNumRep (i) = lrsDatosRep("sNumReporte")
next
  #15 (permalink)  
Antiguo 20/11/2007, 14:43
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
Re: Sintaxis para recoger un parametro de un store procedure

lrsDatosRep.RecordCount

Saludos
  #16 (permalink)  
Antiguo 20/11/2007, 15:28
 
Fecha de Ingreso: enero-2006
Mensajes: 233
Antigüedad: 19 años, 4 meses
Puntos: 2
Re: Sintaxis para recoger un parametro de un store procedure

bueno es esto
<tr> <%do while not lrsDatosRep.eof
lbHabilita=true%>

<td><font Face="Arial" size="2"><%=lnConsecutivo%> </font></td>
<td><font Face="Arial" size="2"><%=lrsDatosRep("sNumReporte")%></font>
</td><td align="center"><input type="checkbox" name="chkGenera" onClick="Verifica();"></td>
</tr>
lo que queria era q al momente de darle clic o checkbox
se me ejecutara este codigo asp
<%cmdSRG.CommandText = "{ call SP_VTHistoryRep(?,?)}"
cmdSRG.parameters.append cmdSRG.createparameter("Num",adInteger, adParamOutput,3)
cmdSRG.parameters.append cmdSRG.createparameter("PsNumRep",adVarChar,adPara mInput,200)
cmdSRG.parameters("PsNumRep")= lrsDatosRep("sNumReporte")
cmdSRG.Execute
response.write cmdSRG("Num")
response.write cmdSRG("PsNumRep")%>
pero en onclick llama una funcion jscript como puedo hacer para llamar entonces a mi codigo y ejecutarlo o llamar un funcion de asp
lo q me gustaria es q fuera en el momento de darle check al checkbos, claro si se puede

<%lnConsecutivo=lnConsecutivo + 1
lrsDatosRep.movenext
Loop%>
muchisimas gracias
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 22:42.