Actually with the advent of FMP 5.5 there is a new status function Status(CurrentFieldName). You could set up something fancy where the user can click an a field and that field is set into a global. The global would be used in a calculation to determine the data that is shown for that record (field1,2,etc.)
Or you can do it the way I did it, (see attached file). I created a db with 5 data fields and 3 global fields.
Lets assume the report layout needs to show 3 colomns. You set the 3 globals with the value of the field names that you want to appear on the table or report. There is a calculation field for each of the global fields. The calculation will show the result based upon the value of the global, see sample.
**Note this method has a drawback... If you need to report on a large number of fields, it could be very slow, due to the fact that the database has to carry a calculation for each column needed on the report.
I am betting though, you could use the 'Status(CurrentFieldName)' function to simplify the process. If you come up with something good I'd love to see it.
Good luck! **OOps, the message board will not let me upload a .fmp file to this message. Email me at cnjackson@earthlink if you want to take a look at the file I built.