If you are prepared to revise your activity ID codes then I think the best option is to create one sub project for each contractor and check the schedules out and email them to each contractor. This way they are unable to change the coding dictionaries, calendars and some other values which make difficult to merge sub projects into projects, but may add values to a dictionaries. They may then update, status & change the schedule and send back to you and you will be able to check them in with a minimum of problems.
I suggest you do a trial with a couple of small subprojects, check them out edit them and check them back in.
A checkout subproject will remember any predecessors created at project level between subprojects when they are scheduled which is an interesting feature.
Paul E Harris
Eastwood Harris Pty Ltd, Melbourne, Australia
Planning and Scheduling Book Publishers, Training & Consulting
www.eh.com.au