SQL - Retornar en un SELECT la salida de un Store Proced

 
Vista:

Retornar en un SELECT la salida de un Store Proced

Publicado por Jaime (6 intervenciones) el 03/01/2006 23:39:56
Que tal amigos:

Necesito de su ayuda. Tengo listo un Store Procedure que genera una simple salida en string. Sucede que esa salida la necesito como una columna que entregará una instrucción SELECT. ¿Cómo debo construir esa instrucción?.
Será algo como:

SELECT CodDcto, Nombre, (STORE_PROCEDURE CodDcto) FROM Documentos

Donde 'CodDcto' es la entrada para el procedimiento 'STORE_PROCEDURE'

Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Retornar en un SELECT la salida de un Store Pro

Publicado por Isaías (5072 intervenciones) el 04/01/2006 02:04:14
¿porque mejor no haces una UDF (Funcion de Usuario)?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Retornar en un SELECT la salida de un Store Pro

Publicado por Jaime (6 intervenciones) el 04/01/2006 13:18:44
¿Y cómo creo esa función?, no soy desarrollador de UDFs.
Mi Store Procedure es el siguiente, es muy sencillo:
Recibe como parámetro a @CodFact y retorna a 'SALIDA'.

CREATE PROCEDURE SP_CONSTLINEA
@CodFact nvarchar(100)
AS
DECLARE @Campo AS nvarchar(2000)
SET @Campo = NULL

SELECT @Campo = @Campo + T1.Dscription + ', '

FROM OINV T0 LEFT JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry
WHERE T0.DocNum = @CodFact

SELECT @Campo AS SALIDA
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Retornar en un SELECT la salida de un Store Pro

Publicado por Isaías (5072 intervenciones) el 04/01/2006 17:46:12
Creo que no hace falta una UDF, primera regla, los stores no deben empezar son SP:

CREATE PROCEDURE pr_CONSTLINEA
@CodFact nvarchar(100)
AS
SET NOCOUNT ON
-- Quito posibel inyeccion de codigo
SET @CodFact = REPLACE(@CodFact, CHAR(39),'')

DECLARE @Campo AS nvarchar(2000)
SET @Campo = ''

SELECT @Campo = @Campo + T1.Dscription + ', '
FROM OINV T0 LEFT JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry
WHERE T0.DocNum = @CodFact

SELECT @Campo AS SALIDA
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar