Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
smetanin_db_coursework.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
338.14 Кб
Скачать

Приложение 7 файл Jobs.Sql

USE db209

GO

CREATE TABLE [dbo].[JobSettings]

(

Id INT IDENTITY NOT NULL PRIMARY KEY,

Name VARCHAR(256) NOT NULL,

Value INT NOT NULL

)

GO

CREATE PROCEDURE [dbo].[ChangePerformerInactiveTasksJob]

AS

DECLARE @Value INT = 1

SELECT @Value = Value FROM [dbo].[JobSettings] WHERE Name = 'tasks.update_inactive_after'

UPDATE [dbo].[Task]

SET PerformerId = [dbo].[GetTaskPerformer](Id, PerformerId)

WHERE DATEADD(day, @Value, ModifyDate) < GETDATE()

GO

CREATE PROCEDURE [dbo].[DeleteDoneTasksJob]

AS

DECLARE @Value INT = 1

SELECT @Value = Value FROM [dbo].[JobSettings] WHERE Name = 'tasks.delete_done_after'

DELETE t

FROM [dbo].[Task] t

JOIN [dbo].[Category] c ON t.CategoryId = c.Id AND c.FinalStateId = t.StateId

WHERE DATEADD(day, @Value, ModifyDate) < GETDATE()

GO

USE msdb

GO

EXEC sp_add_job @job_name = 'ChangePerformerInactiveTasks'

EXEC sp_add_jobstep

@job_name = 'ChangePerformerInactiveTasks',

@step_name = 'SingleStep',

@database_name = 'db209',

@command = 'EXEC ChangePerformerInactiveTasksJob'

EXEC sp_add_jobschedule

@job_name = 'ChangePerformerInactiveTasks',

@name = 'ChangePerformerInactiveTasksSchedule',

@freq_type = 4,

@freq_interval = 1,

@active_start_time = 000000

EXEC sp_add_jobserver @job_name = 'ChangePerformerInactiveTasks'

GO

EXEC sp_add_job @job_name = 'DeleteDoneTasks'

EXEC sp_add_jobstep

@job_name = 'DeleteDoneTasks',

@step_name = 'SingleStep',

@database_name = 'db209',

@command = 'EXEC DeleteDoneTasksJob'

EXEC sp_add_jobschedule

@job_name = 'DeleteDoneTasks',

@name = 'DeleteDoneTasksSchedule',

@freq_type = 4,

@freq_interval = 1,

@active_start_time = 000000

EXEC sp_add_jobserver @job_name = 'DeleteDoneTasks'

GO

Приложение 8 файл Permissions.Sql

USE db209

GO

CREATE ROLE Administrator

CREATE ROLE Manager

CREATE ROLE Contributor

CREATE ROLE Auditor

GO

GRANT EXECUTE ON [dbo].[CreateProject] TO Manager

GRANT EXECUTE ON [dbo].[UpdateProject] TO Manager

GRANT EXECUTE ON [dbo].[DeleteProject] TO Manager

GRANT EXECUTE ON [dbo].[CreateComponent] TO Manager

GRANT EXECUTE ON [dbo].[DeleteComponent] TO Manager

GRANT EXECUTE ON [dbo].[CreateMilestone] TO Manager

GRANT EXECUTE ON [dbo].[DeleteMilestone] TO Manager

GRANT EXECUTE ON [dbo].[CreateTask] TO Contributor

GRANT EXECUTE ON [dbo].[UpdateTask] TO Contributor

GRANT EXECUTE ON [dbo].[DeleteTask] TO Contributor

GRANT EXECUTE ON [dbo].[CreateTaskCheckItem] TO Contributor

GRANT EXECUTE ON [dbo].[DeleteTaskCheckItem] TO Contributor

GRANT EXECUTE ON [dbo].[CreateComment] TO Contributor

GRANT EXECUTE ON [dbo].[DeleteComment] TO Contributor

GRANT EXECUTE ON [dbo].[GetProject] TO Auditor

GRANT EXECUTE ON [dbo].[GetTask] TO Auditor

GRANT EXECUTE ON [dbo].[GetCategoryTransitions] TO Auditor

GRANT EXECUTE ON [dbo].[GetProjectUsers] TO Auditor

GRANT EXECUTE ON [dbo].[GetTaskAuditors] TO Auditor

GRANT EXECUTE ON [dbo].[TasksByMilestone] TO Auditor

GRANT EXECUTE ON [dbo].[TasksByState] TO Auditor

GRANT EXECUTE ON [dbo].[ProjectReport] TO Auditor

GRANT EXECUTE ON [dbo].[UserReport] TO Auditor

GRANT SELECT ON [dbo].[CommentFile] TO Auditor

GRANT SELECT ON [dbo].[Comment] TO Auditor

GRANT SELECT ON [dbo].[TaskFile] TO Auditor

GRANT SELECT ON [dbo].[TaskCheckItem] TO Auditor

GRANT SELECT ON [dbo].[TaskAuditor] TO Auditor

GRANT SELECT ON [dbo].[Task] TO Auditor

GRANT SELECT ON [dbo].[Milestone] TO Auditor

GRANT SELECT ON [dbo].[Component] TO Auditor

GRANT SELECT ON [dbo].[ProjectFile] TO Auditor

GRANT SELECT ON [dbo].[ProjectUser] TO Auditor

GRANT SELECT ON [dbo].[Project] TO Auditor

GRANT SELECT ON [dbo].[User] TO Auditor

GRANT SELECT ON [dbo].[StateTransition] TO Auditor

GRANT SELECT ON [dbo].[Category] TO Auditor

GRANT SELECT ON [dbo].[State] TO Auditor

GRANT SELECT ON [dbo].[Position] TO Auditor

GRANT SELECT ON [dbo].[File] TO Auditor

GRANT INSERT ON [dbo].[CommentFile] TO Contributor

GRANT INSERT ON [dbo].[TaskFile] TO Contributor

GRANT INSERT ON [dbo].[TaskAuditor] TO Contributor

GRANT INSERT ON [dbo].[File] TO Contributor

GRANT INSERT ON [dbo].[ProjectFile] TO Manager

GRANT INSERT ON [dbo].[ProjectUser] TO Manager

GRANT EXECUTE, REFERENCES, SELECT, INSERT, UPDATE, DELETE TO Administrator

GO

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]