You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ITSM/.svn/pristine/37/37c62f95d8bbff03aa13ced5999...

48 lines
3.1 KiB

USE [Vertragsverwaltung_20160404]
GO
/****** Object: UserDefinedFunction [dbo].[get_solved_in] Script Date: 02.12.2016 09:08:53 ******/
DROP FUNCTION [dbo].[get_solved_in]
GO
/****** Object: UserDefinedFunction [dbo].[get_solved_in] Script Date: 02.12.2016 09:08:55 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE FUNCTION [dbo].[get_solved_in]
(
@von DATETIME,
@bis DATETIME
)
RETURNS @solved_in TABLE (ticketid varchar(255), statusid varchar(255))
AS
begin
DECLARE @ticketid varchar(255)
DECLARE @statusid VARCHAR(255)
DECLARE @changedate DATETIME
DECLARE @rc int
DECLARE xc CURSOR FOR
SELECT DISTINCT ticketid FROM txp_ticket_data WHERE ticketid LIKE 'in_%' AND status_neu = 'solved' AND Status_Changedate BETWEEN @von AND @bis
OPEN xc
FETCH NEXT FROM xc INTO @ticketid
WHILE @@FETCH_STATUS=0 BEGIN
FETCH NEXT FROM xc INTO @ticketid
SELECT TOP 1 @statusid=statusid, @changedate=Status_Changedate FROM txp_ticket_data WHERE ticketid=@ticketid AND status_neu='Solved' ORDER BY Status_Changedate DESC
SELECT @rc=COUNT(*) FROM dbo.TXP_Ticket_Data WHERE ticketid=@ticketid AND Status_Changedate>@changedate AND status_neu <> 'Solved' AND status_neu <> 'Geschlossen'
AND status_neu <> 'Geschlossen "Autoclose"' AND status_neu <> 'Warten auf Schliessung'
IF @rc=0 begin
INSERT @solved_in (ticketid, statusid) VALUES(@ticketid, @statusid)
end
END
CLOSE xc
DEALLOCATE xc
return
END
GO