Robin,
Are you doing a technical upgrade from 4.6c to 6.0? If it is a technical upgrade the projects will already be in the upgraded system.
It sounds like you are doing a reimplementation (starting from scratch).
You will need a separate load step for each PS object. BAPIs are the most common way to create objects. If you create BPC's use the older, simpler transactions rather than CJ20N.
You'll need to create:
1. Project Definitions
2. WBS elements
3. Network Headers
4. Network Activities
you should stop and validate the data load after each step.
Once the project structure are complete you can post confirmatons and financial postings. You say you have Results Analysis so I am assuming you have run settlement. You mention half finished POs and projects.
Migration of partially completed projects are very difficult. Another approach is to just create new projects for the balance of work to be completed and not have historical data. Recreating projects that are partially complete and trying to show old financial data requires a custom postings and a deep understanding of financial data.