2013-12-23 1 views
0

У меня есть работа SQL Server, которая выполняется раз в две недели в понедельник. У меня также есть таблица со списком дат отпуска. Я хочу быть в состоянии пропустить выполнение моей работы в любой понедельник, который является праздником, и вместо этого запустить эту итерацию работы на следующий день.Задача SQL Server 2008 R2 перепланировать на праздники

Любые идеи о том, как это сделать?

ответ

0

Настройте работу в понедельник и вторник.

Для работы, начните с логикой:

if (cast(getdate() as date) in (select days from holidaytable) and 
    datename(weekday, getdate()) = 'Monday' 
    ) or 
    (cast(getdate()-1 as date) not in (select days from holidaytable) and 
    datename(weekday, getdate()) = 'Tuesday' 
    ) 
begin 
    don't run the job now (whatever you want to do to log that) 
end; 
rest of the code for the job 
+0

совершенного Я думал о воссоздании рабочих мест это так намного чище ... спасибо за подход – user2129585