Ver Mensaje Individual
  #3 (permalink)  
Antiguo 09/06/2006, 12:37
kire94
 
Fecha de Ingreso: enero-2006
Mensajes: 169
Antigüedad: 19 años
Puntos: 0
Perfecto !!!!!!!!!!!!!

Cita:
Iniciado por PequeñoMauro
Hola kire94:
Bueno, primero lo que puedes hacer es agregar un parámetro más al procedure, que sea del tipo OUT y con un tipo de dato que pueda almacenarte cadenas grandes (no se sSel VARCHAR2(500) OUT).
Luego en la condición puedes "armar" tu sentencia dependiendo de los campos, y concatenando los valores, y esa concatenación la asignas a tu parámetro de salida. En ASP solo capturas esa variable y la muestras
Solo una idea....
Saludos
Gracias por la ayuda PequeñoMauro.

Ya lo hice como me diste la idea, pero a la hora de declarar la variable nvarchar(4000) como output, me da un error el SP, abajo te pongo el codigo y para quien lo quiera.

Código:
CREATE procedure spInsMarca
@marca char(50),
@Res_SP int output

 AS

set nocount on

declare @cmd nvarchar(4000) --Si aqui yo pongo declare @cmd nvarchar(4000) output, es donde me da el error "Cannot use the OUTPUT option in a DECLARE statement

set @marca=upper(@marca)
set @Res_SP=0 


if not exists(select 1 from marca where rtrim(marca)=rtrim(@marca))
begin
	SET @cmd = 'insert into marca values("' + @marca + '")'
	IF @@Error = 0
		set @Res_SP=1
		EXEC sp_executesql @cmd, N'@marca char(50)', @marca = marca

end
GO
O de que manera puedo regresarle la variable @cmd a la pag ASP y de que manera la cacho sin tener que utilizar output (variable de salida), me imagino que se puede hacer con RETURN @cmd, pero no se bien de que manera hacerlo en el SP y cacharlo en ASP.
__________________
"La adulación es una moneda que empobrece al que la recibe"

Última edición por kire94; 09/06/2006 a las 12:42