With your current design I think returning the data in a format that allows for a matrix report is probably your best option. Which means you'd also have to be using SELECT * in the query to return all columns from the table.
As a side note, in my experience adding columns to a table isn't something that is done often as that normally requires some major changes to the application as well, so adding that new column to a report is usually one of the simpler tasks. If you are regularly adding columns to a table, I would argue that there is a design flaw that should be addressed.
Jack Corbett
Consultant - Straight Path Solutions
Check out these links on how to get faster and more accurate answers:
Forum Etiquette: How to post data/code on a forum to get the best help
Need an Answer? Actually, No ... You Need a Question