none
Obtener Valores de un Stored Procedure desde Otro Stored Procedure RRS feed

  • Pregunta

  • Buenas tardes, espero q me puedan ayudar,

    tengo un sp que regresa un SELECT CAMPO1, CAMPO2 FROM TABLA

    El problema es q no se como obtener los dos valores en dos variables distintas en otro SP.

    De antemano muchas gracias.

    Saludos.


    Hugo Gil

    viernes, 17 de octubre de 2014 16:02

Respuestas

  • Si no puedes modificar el primer SP para que devuelva los datos en parámetros Output, entonces lo que puedes hacer es un insert...exec y luego leer esa tabla. Es decir, el segundo SP contendría algo parecido a lo siguiente:

    declare @tmp TABLE (campo1 int, campo2 int)
    insert into @tmp(campo1, campo2) exec Procedimiento1
    declare @variable1, @variable2 int
    select @variable1=campo1, @variable2=campo2 from @tmp
    

    • Marcado como respuesta Hugo Gil viernes, 17 de octubre de 2014 17:42
    viernes, 17 de octubre de 2014 17:11

Todas las respuestas

  • Hola,

    Espero entender bien tu pregunta, y se resuelve así:

    DECLARE @miVariable int;
    EXECUTE @miVariable = [NombreStoredProcedure] Param1, Param2
    
    SELECT CAMPO1, CAMPO2 FROM TABLA WHERE CAMPO3 = @miVariable

    Saludos,

    viernes, 17 de octubre de 2014 16:26
  • Hola,

    En el primer sp deberías usar parámetros de salida http://msdn.microsoft.com/es-ES/es/library/ms188655.aspx#

    Ya con las variables llenas, puedes usarlos como parámetros de entrada para otro sp.

    Saludos.

    viernes, 17 de octubre de 2014 17:01
  • Si no puedes modificar el primer SP para que devuelva los datos en parámetros Output, entonces lo que puedes hacer es un insert...exec y luego leer esa tabla. Es decir, el segundo SP contendría algo parecido a lo siguiente:

    declare @tmp TABLE (campo1 int, campo2 int)
    insert into @tmp(campo1, campo2) exec Procedimiento1
    declare @variable1, @variable2 int
    select @variable1=campo1, @variable2=campo2 from @tmp
    

    • Marcado como respuesta Hugo Gil viernes, 17 de octubre de 2014 17:42
    viernes, 17 de octubre de 2014 17:11