Datasource Transfer

I am looking to move a project from one datasource to a new datasource as we have issues with our current datasource. We use workflows using the Rules Engine with document codes. Both datasources use the same attributes.

I have tried the Excel Import/Export tool but find that documents will lose state info and version files come in out of order.

What options are there to accomplish this?