我用delphi6调用外部设计好的水晶报表,但必须动态设置连接的数据库(运行时连接access文件)。
下面是我的代码,运行正常,但数据不是我新设置的数据库数据   report := Application1.OpenReport('E:\Crw\报表\dj.rpt',crOpenReportByTempCopy);    
 Report.DiscardSavedData;
    strconn:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=E:\概预算系统\image\Data.mdb;Mode=Share Deny None;Extended Properties="";Persist Security Info=False;Jet OLEDB:System database="";Jet OLEDB:Registry';
    strconn:=strconn+' Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database';
     strconn:=strconn+' Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False';
     Report.Database.AddOLEDBSource(strconn,'D单价库');
     report.Database.SetDataSource(adoquery1.Recordset,3,1);
     //report.AutoSetUnboundFieldSource(crBMTName,???); 此句无法通过,不知道第二个参数是何变量,但在vb中可以省略该参数      crViewer1.ReportSource := Report;
     crViewer1.ViewReport;
     Crviewer1.Zoom(100);
各位帮帮忙