The issue here is that the archive database is multi-tenant. The databases being archived are single-tenant - therefore, when I'm archiving I don't know my source. As you can see, I also have joins going across databases and to make matters even worse I won't even know the BatchTableName or Database until archive time.