Pergunta

Eu preciso ser capaz de agendar um trabalho no dia 10 de cada mês e executá-lo para um determinado número de dias ou até uma data específica.

Existe alguma maneira de personalizar trabalhos de agente do SQL Server usando algum tipo de API ou algo assim?

Graças.

Foi útil?

Solução 3

Eu ainda não consigo encontrar alguma maneira de personalizar a agenda de trabalho, mas eu não descobri uma maneira de contornar isso adicionando a condição para a etapa de trabalho:

IF (DAY (GetDate ())> = 10)
EXEC MySP

E definir o agendamento para executar todos os dias.

Outras dicas

Você pode fazer usando as propriedades agenda de trabalho SQL usando mais de um cronograma para o trabalho. Você pode agendar o trabalho para executar no 10º dia do mês (com a opção para uma data final). Você pode criar várias agendas, uma para o 11, 12, etc.

O SQL Server Agent não tem uma opção de agendamento que você precisa, então eu acho que a sua solução é tão bom quanto ele ganha para mantê-lo dentro do SQL Server.

O Agendador de Tarefas do Windows no entanto tem uma opção para executar um trabalho sobre o 'x' dia do mês, talvez chutar o seu sproc fora de usar sqlcmd via Agendador de Tarefas do Windows é uma solução alternativa?

Espero que isso ajude

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top