in such case, You can create a custom program and read all the data from Master P tables.
I think you might be good coding wise. Without storing at table coding part may work.
in coding, need to make proper relations to combine the data from 3 tables and later down load data into flat files.
i think DSO Option will be good to go(if no APD) if you need to load updated data on daily basis.
if its one time activity you can go with manual way.