If your service contract record contains the appropriate date information, you should be able to perform a find for it.
Example: Say you have a date field, NextService that records the next service date in it.
Then you could perform a find for all records where NextService schedules a date in January, 2011 by entering find mode, then entering 1/1/2011...1/31/2011 in this field, then performing the find. (I'm using US dates MMDDYYY, this also works in DDMMYYYY formatted systems.)
This is just a bare bones example. You can create much more sophisticated finds and can also use inequalities such as < 1/31/2011 as a way to find all with dates for the end of January and earlier. (Might be a way to make sure you haven't missed one.)
These searches can be peformed by hand or in a script.