求助啊···Delphi2009下如何调用水晶报表? 求助啊···Delphi2009下如何调用水晶报表?网上都找不到相关资料啊·老板一定要用水晶报表啊···有人会吗??? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 procedure TForm1.Button1Click(Sender: TObject);begin Crpe1.ReportName := 'C:\your report.rpt'; Crpe1.Execute;end;·将TADODataSet的Connection属性设置为TADOConnection(ADOConnection1)。·将TcrpeDS的DataSet属性设置为TADODataSet(ADODataSet1)。·代码实现: Crpe1.Tables[0].DataPointer := CrpeDS1.DataPointer; Crpe1.Refresh; Crpe1.Execute; TclientDataSet的使用方法,为什么要使用TclientDataSet呢?因为我们一方面不想使程序需要第三方数据库引擎,另一方面想提高速度的时候,就可以考虑使用TclientDataSet,这样我们可以把数据写入TclientDataSet所建立的表临时表中,完全在内存中使用,当然也可以保存,写入文件。同上面的道理,我们首先需要利用TclientDataSet来建立表,然后将数据写入TclientDataSet建立的表中:·创建表,进行初始化table: TclientDataSet;table := TClientDataset.Create(Application);·添加字段定义table.FieldDefs.Add('ID', ftInteger, 0, False);table.FieldDefs.Add('Status', ftString, 10, False);table.FieldDefs.Add('Created', ftDate, 0, False);table.FieldDefs.Add('Volume', ftFloat, 0, False);·创建数据集table.CreateDataset;·打开数据集table.Open;·加入数据(加入数据的方法比较多,参考TclientDataSet的使用方法) for i := 1 to 100 do begin table.Append; table.FieldByName('ID').AsInteger := i; table.FieldByName('Status').AsString := 'Code'+IntToStr(i); table.FieldByName('Created').AsDateTime := Date(); table.FieldByName('Volume').AsFloat := Random(10000); table.Post; end;·加入索引table.IndexFieldNames := 'Created'; ·可以将内存中的数据写入文件table.SaveToFile('c:\mem.cds');table.LoadFromFile('c:\mem.cds');·使用过滤条件table.Filtered := True;table.Filer := ‘test’;·显示报表代码CrpeDS1.DataSet := tableCrpe1.Tables[0].DataPointer := CrpeDS1.DataPointer; Crpe1.Refresh; Crpe1.Execute; 4、处理中遇到的问题在利用Crystal Report VCL来编写我们的程序的过程中总会遇到这样那样的问题。例如显示的报表中有超链接,但不能够正常使用,是因为Crystal Report 中drill down event设置为False,需要代码中设置为True,就可以正常使用了。with Crpe1.WindowButtonBar do begin Visible := True; AllowDrillDown := True; CancelBtn := False; ToolbarTips := True; end; crpe1.execute 2楼是delphi7的用法吧,2009装不上报表控件啊····· 顶上去·继续求助ing 关于PageControl的Tab页跳转问题 问问智能手机的主要构成 特简单的问题,请指教。 WideString与Xor,急! DELPHI7开发网络用什么控件? 存取款清单的打印(也就是要实现下一次的打印要在最后一条打印记录的后面) 请问哪里有免费主页空间? 运维 ORACLETABLE-DBF dephi或者api有无这样的函数可以跟踪程序的执行,一旦程序成功结束时才返回。(有内容) 大家有没有好的学习嵌入式系统的方法? Execute为什么不能保存?
begin
Crpe1.ReportName := 'C:\your report.rpt';
Crpe1.Execute;
end;
·将TADODataSet的Connection属性设置为TADOConnection(ADOConnection1)。
·将TcrpeDS的DataSet属性设置为TADODataSet(ADODataSet1)。
·代码实现:
Crpe1.Tables[0].DataPointer := CrpeDS1.DataPointer;
Crpe1.Refresh;
Crpe1.Execute;
TclientDataSet的使用方法,为什么要使用TclientDataSet呢?因为我们一方面不想使程序需要第三方数据库引擎,另一方面想提高速度的时候,就可以考虑使用TclientDataSet,这样我们可以把数据写入TclientDataSet所建立的表临时表中,完全在内存中使用,当然也可以保存,写入文件。
同上面的道理,我们首先需要利用TclientDataSet来建立表,然后将数据写入TclientDataSet建立的表中:
·创建表,进行初始化
table: TclientDataSet;
table := TClientDataset.Create(Application);
·添加字段定义
table.FieldDefs.Add('ID', ftInteger, 0, False);
table.FieldDefs.Add('Status', ftString, 10, False);
table.FieldDefs.Add('Created', ftDate, 0, False);
table.FieldDefs.Add('Volume', ftFloat, 0, False);·创建数据集
table.CreateDataset;
·打开数据集
table.Open;·加入数据(加入数据的方法比较多,参考TclientDataSet的使用方法)
for i := 1 to 100 do
begin
table.Append;
table.FieldByName('ID').AsInteger := i;
table.FieldByName('Status').AsString := 'Code'+IntToStr(i);
table.FieldByName('Created').AsDateTime := Date();
table.FieldByName('Volume').AsFloat := Random(10000);
table.Post;
end;
·加入索引
table.IndexFieldNames := 'Created';
·可以将内存中的数据写入文件
table.SaveToFile('c:\mem.cds');
table.LoadFromFile('c:\mem.cds');·使用过滤条件
table.Filtered := True;
table.Filer := ‘test’;·显示报表代码
CrpeDS1.DataSet := table
Crpe1.Tables[0].DataPointer := CrpeDS1.DataPointer;
Crpe1.Refresh;
Crpe1.Execute; 4、处理中遇到的问题
在利用Crystal Report VCL来编写我们的程序的过程中总会遇到这样那样的问题。
例如显示的报表中有超链接,但不能够正常使用,是因为Crystal Report 中drill down event设置为False,需要代码中设置为True,就可以正常使用了。
with Crpe1.WindowButtonBar do
begin
Visible := True;
AllowDrillDown := True;
CancelBtn := False;
ToolbarTips := True;
end;
crpe1.execute