Torna al Thread

CREATE PROCEDURE SearchBollettino( @cognome nvarchar(50), @causale nvarchar(100), @datainiziale varchar(40), @datafinale varchar(40), @cf nvarchar(16)) AS BEGIN Declare @datai datetime Set @datai=Convert(datetime,@datainiziale) Declare @surname varchar(50) Set @surname=@cognome Declare @dataf datetime Set @dataf=CONVERT(datetime,@datafinale) SELECT u.Cognome, u.Nome, u.Via, u.Telefono,u.Comune,u.Cap,u.Provincia,u.Cf,b.Data_Versamento,b.Data_inserimento,b.IdOperatore,b.Note, c.Causale,c.Nr_CC, case WHEN @surname='' THEN ( SELECT u.Cognome, u.Nome, u.Via, u.Telefono,u.Comune,u.Cap,u.Provincia,u.Cf,b.Data_Versamento,b.Data_inserimento,b.IdOperatore,b.Note, c.Causale,c.Nr_CC from Utenti u Left Join Bollettino b on u.idUtenti = b.IdUtente INNER JOIN Causale c on b.IdCausale = c.IdCausale where u.Cognome=@surname ) WHEN @causale is not null THEN (SELECT u.Cognome, u.Nome, u.Via, u.Telefono,u.Comune,u.Cap,u.Provincia,u.Cf,b.Data_Versamento,b.Data_inserimento,b.IdOperatore,b.Note, c.Causale,c.Nr_CC from Utenti u Left Join Bollettino b on u.idUtenti = b.IdUtente INNER JOIN Causale c on b.IdCausale = c.IdCausale where b.Data_Versamento between @datainiziale and @datafinale and c.Causale = @causale) WHEN @cf is not null THEN (SELECT u.Cognome, u.Nome, u.Via, u.Telefono,u.Comune,u.Cap,u.Provincia,u.Cf,b.Data_Versamento,b.Data_inserimento,b.IdOperatore,b.Note, c.Causale,c.Nr_CC from Utenti u Left Join Bollettino b on u.idUtenti = b.IdUtente INNER JOIN Causale c on b.IdCausale = c.IdCausale where b.Data_Versamento between @datai and @dataf) END from Utenti u Left Join Bollettino b on u.idUtenti = b.IdUtente INNER JOIN Causale c on b.IdCausale = c.IdCausale where b.Data_Versamento between @datainiziale and @datafinale END
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5