62 lines
2 KiB
Transact-SQL
62 lines
2 KiB
Transact-SQL
-- =============================================
|
|
-- Description: Törli az egy hétnél régebbi fel nem használt linkeket, valamint a hozzájuk tartozó CSÖKKENTETT jogosultságú gondviselőket
|
|
-- =============================================
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
|
|
IF OBJECT_ID('[dbo].[uspDeleteInvalidLinks]') IS NOT NULL
|
|
BEGIN
|
|
DROP PROCEDURE [dbo].[uspDeleteInvalidLinks]
|
|
END
|
|
GO
|
|
|
|
|
|
CREATE PROCEDURE [dbo].[uspDeleteInvalidLinks]
|
|
|
|
AS
|
|
BEGIN
|
|
-- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.
|
|
SET NOCOUNT ON;
|
|
|
|
CREATE TABLE #DeletedIds ( ID INT );
|
|
|
|
DELETE FROM T_JELSZOMODOSITASLINK
|
|
OUTPUT DELETED.C_GONDVISELOID INTO #DeletedIds
|
|
WHERE (GETDATE() - 7) > C_LETREHOZASDATUMA
|
|
AND TOROLT = 'F'
|
|
|
|
UPDATE e
|
|
SET e.TOROLT = 'T'
|
|
FROM T_EMAIL e
|
|
INNER JOIN #DeletedIds gId ON gId.ID = e.C_GONDVISELOID
|
|
INNER JOIN T_GONDVISELO g ON g.ID = gId.ID AND g.C_ISCSOKKENTETTGONDVISELO = 'T'
|
|
WHERE e.TOROLT = 'F'
|
|
AND NOT EXISTS (SELECT 1 FROM T_FELHASZNALOBELEPES x WHERE g.ID = x.C_GONDVISELOID AND x.TOROLT = 'F')
|
|
AND NOT EXISTS (SELECT 1 FROM T_JELSZOMODOSITASLINK x WHERE g.ID = x.C_GONDVISELOID AND x.TOROLT = 'F')
|
|
|
|
UPDATE c
|
|
SET c.TOROLT = 'T'
|
|
FROM T_CIM c
|
|
INNER JOIN #DeletedIds gId ON gId.ID = c.C_GONDVISELOID
|
|
INNER JOIN T_GONDVISELO g ON g.ID = gId.ID AND g.C_ISCSOKKENTETTGONDVISELO = 'T'
|
|
WHERE c.TOROLT = 'F'
|
|
AND NOT EXISTS (SELECT 1 FROM T_FELHASZNALOBELEPES x WHERE g.ID = x.C_GONDVISELOID AND x.TOROLT = 'F')
|
|
AND NOT EXISTS (SELECT 1 FROM T_JELSZOMODOSITASLINK x WHERE g.ID = x.C_GONDVISELOID AND x.TOROLT = 'F')
|
|
|
|
UPDATE g
|
|
SET g.TOROLT = 'T'
|
|
FROM T_GONDVISELO g
|
|
INNER JOIN #DeletedIds d ON d.ID = g.ID
|
|
WHERE g.C_ISCSOKKENTETTGONDVISELO = 'T'
|
|
AND g.TOROLT = 'F'
|
|
AND NOT EXISTS (SELECT 1 FROM T_FELHASZNALOBELEPES x WHERE g.ID = x.C_GONDVISELOID AND x.TOROLT = 'F')
|
|
AND NOT EXISTS (SELECT 1 FROM T_JELSZOMODOSITASLINK x WHERE g.ID = x.C_GONDVISELOID AND x.TOROLT = 'F')
|
|
|
|
DROP TABLE #DeletedIds
|
|
|
|
END
|
|
GO
|
|
|