If you dont pass them in code are you prompted for them when you run the report? Try commenting the thos lines out and then run the report and see if the login dialog appears.
With CR its hard to know for sure which connection is failing, given the multi-pass nature of report generation, with subreports going last.
My initial reaction is that since you have two different connections and if they each require passwords you will very likely have to pass them to the connection in the code. Dong one set will not take care of it. I dont recall off the top of my head how the subreport connection is exposed, but I have worked with it in the past.
I hope this gives you some suggestions of things to look for.
Regards,
John W.