If you are finding that data is being regularly "re-keyed" when being transferred from one application to another, it might be an idea to consider a system that will automate that procedure. Advantages are: quicker, less chances of errors or forgetting to do part of the procedure.
I can give many examples. Here's one: A client of mine receives Purchase Orders from one of their customers via email. These are always from the same email address, always have the same "header" information (delivery address, date required, Purchase Order No., etc.), and each item on the Order is in a consistent format.
I've setup their email system to recognize these emails and copy them into a specific folder. This folder is regularly checked for new emails which are then parsed and put into a database.
This client prefers to use an "off the shelf" accounts package at the present time, so they key the Order into it, changing information where necessary (e.g., customer ordered 5 of an item, we only have 3 in stock). When finished the Purchase Order is married up with the entry in the database, which is then updated with the Invoice No. from the accounts program. Any difference in price is notified to the user. Pressing a button sends the invoice details via FTP to the Customer's EDI system for payment authorisation.
If the Purchase Order is not found it is sometimes due to there being a typo in the PO number put into the accounts system, which invariably meant a delay in getting paid in the old days. Now it is flagged up as a problem before being submitted for payment, which can be rectified in the accounts system.
The above example gives an idea of how to migrate from an old legacy system to something more up-to-date. You're not doing it all in one go, but changing elements in a way that users identify with.
The program tools I work with have been around for a very long time, yet they have been continually updated so that they continue to work with any version of Windows, with the bonus ability to be migrated to Linux or Mac, or be hosted within a browser session. For Windows "Line of Business" applications there is no dependency on third-party frameworks which have a tendancy to be the bees knees one day, and End Of Life when the fad has passed. Examples are Adobe Flash and Microsoft's Silverlight. The only dependencies are the core elements that all versions of Windows are obliged to use. For instance if I want a "Save Dialog" it is the standard Windows "Save Dialog" - if my customer needs the program to work with Windows XP then I would simply use the Save Dialog that works with Windows XP. Contrary to popular belief there are still companies wishing to continue using XP.