39 lines
1.2 KiB
Transact-SQL
39 lines
1.2 KiB
Transact-SQL
CREATE PROCEDURE [dbo].[sp_insertNewReportModel]
|
|
@nome as varchar(70),
|
|
@descrizione as varchar(250),
|
|
@flgModello as bit,
|
|
@IdReportModello as int,
|
|
@tpReport as smallint,
|
|
@utente as varchar(13)
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON;
|
|
DECLARE @found as int
|
|
DECLARE @idReport as int
|
|
--esiste gia?
|
|
SELECT @found = count(*) FROM [dbo].[Report] WHERE Nome = @nome and Utente = @utente and IdReportModello = @IdReportModello
|
|
IF(@found > 0)
|
|
BEGIN
|
|
SELECT @idReport=idReport FROM [dbo].[Report] WHERE Nome = @nome and Utente = @utente and IdReportModello = @IdReportModello
|
|
UPDATE Report SET Descrizione = @Descrizione , DtCreazione = getDate() WHERE idReport = @idReport
|
|
SELECT TOP 1 idReport FROM Report WHERE Nome = @nome and Utente = @utente and IdReportModello = @IdReportModello ORDER BY DtCreazione DESC
|
|
END
|
|
ELSE
|
|
INSERT INTO [dbo].[Report]
|
|
([Nome]
|
|
,[Descrizione]
|
|
,[DtCreazione]
|
|
,[FlgModello]
|
|
,[IdReportModello]
|
|
,[TpReport]
|
|
,[Utente])
|
|
VALUES
|
|
(@nome
|
|
,@descrizione
|
|
,getDate()
|
|
,@flgModello
|
|
,@IdReportModello
|
|
,@tpReport
|
|
,@utente)
|
|
SELECT @@identity as idReport
|
|
END |