does the set of database columns actually differ from client to client? if not one report can be easily parameterized so that the record set reflects the different clients as Ludek mentioned above.
if the set of database columns has to be different, there are ways of parameterizing each report to each client for having dynamic columns using formulas and case statements. but that of course would have to be on the same database if you're parameterizing the actual columns. in versions from v9 you can actually parameterize the entire sql query as long as you're returning an identical column structure for the report. however you're using 8.5 so your options are much more limited.