No, I gave a solution, use an ole driver and set the connection via your app.
You could also have your app get the dataset or datatable and pass the datatable to the report. You don't need to have the report get the data, but if that is the method that you want to use, then you can use the ole driver.
Or you can progammatically change the values in the ODBC driver. This last one, I haven't done personally, but I have seen it done, I don't like it, but it works.
CR doesn't care 'where' the data comes from, just that 'looks' like what it expects it to (data schema).