If you have 100+ users in your system accessing the same table, you are so in trouble using
Exec GetNextId @NewID OUTPUT
to get unique @NewID value. Under stress, your technique will not guarantee that @NewID value is unique between calls. An IDENTITY column will ensure that.
If you bought the software, what is the purpose for this topic? To copy the addresses and faculty belongings and link them? Shouldn't this be part of the software?