views:

648

answers:

3

I need to be able to schedule a job on the 10th of each month and have it run for a set number of days or until a specified date.

Is there any way to customize sql server agent jobs using some sort of API or something?

Thanks.

A: 

I still can't find any way of customizing the job schedule, but I have figured a way around it by adding the condition to the job step:

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

And setting the schedule to run every day.

HAdes
A: 

The SQL Server Agent does not have a schedule option like you need, so I think your workaround is as good as it gets for keeping it inside SQL Server.

The Windows Task Scheduler however does have an option to run a job on the 'x' day of the month, maybe kicking your sproc off using sqlcmd via Windows Task Scheduler is an alternate solution?

Hope this helps

James Green
+2  A: 

You can accomplish using the SQL Job Schedule properties by using more than one schedule for the job. You can schedule the job to run on the 10th day of the month (with the option for an end date). You can then create multiple schedules, one for the 11th, 12th, etc.

duckworth