[SQL Server] Compiler les parmètres envoyées par un rapport SSRS

  • Imprimer

-- =============================================

-- Author:        Zouhaier KHARROUBI

-- Create date: 30/05/2016

-- Description:   Compiler les parmètres envoyées par un rapport SSRS

-- =============================================

CREATE FUNCTION [dbo].[ufn_CompilerParametreChaineSSRS]

(    

      -- Add the parameters for the function here

      @Parametre VARCHAR(MAX)

)

RETURNS @ListParametre TABLE

(

Parametre VARCHAR(MAX) NULL

)

AS

BEGIN

DECLARE @Parametre_Element VARCHAR(250)

DECLARE @Chaine CHAR(1)

DECLARE @Indice AS INT

DECLARE @Taille AS INT

DECLARE @ChaineRech AS CHAR(1)

IF @Parametre='' OR @Parametre IS NULL

      BEGIN

            INSERT INTO @ListParametre(Parametre) VALUES(NULL)

      END

ELSE

      BEGIN

            SELECT @Parametre = @Parametre + ','

      END

SELECT @ChaineRech=','

IF CHARINDEX(@ChaineRech,@Parametre)=0

      BEGIN

            SELECT @Parametre=@Parametre + @ChaineRech

      END

     

SELECT @Indice=0

SELECT @Taille=LEN(@Parametre)

SELECT @Parametre_Element=''

      WHILE @Indice<=@Taille

      BEGIN

            SELECT @Chaine = Substring(@Parametre,@Indice,1)

            IF @Chaine<>@ChaineRech

                  BEGIN

                        SELECT @Parametre_Element= @Parametre_Element + @Chaine

                  END

            ELSE

                  BEGIN

                        IF RTRIM(LTRIM(@Parametre_Element))<>''

                             BEGIN

                                   INSERT INTO @ListParametre(Parametre) VALUES(RTRIM(LTRIM( @Parametre_Element )))

                             END

                        SELECT @Parametre_Element=''

                  END

            SELECT @Indice = @Indice + 1

      END

RETURN

END