资讯   |   开发   |   选机中心   |   产品大全 | IBM | 惠普 | 联想 | 戴尔 | 苹果 | 神舟
更多: | 华硕 | 明基 | 方正 | 紫光 | TCL | 夏新 | 联宝 | 宏碁 | 七喜 | 长城 | 清华同方 | 海尔 | 三星 | 东芝 | 索尼 | 富士通 | LG | 技术 | ddnoon
当前位置:笔记本 > 软件开发 >
Advertisement
文章正文

delphi 下使用水晶报表问题,delphi下使用水晶报表的高手请帮帮忙

类型:转载   责任编辑:asp.net   日期:2007/05/23


热门软件下载:


   

我使用delphi水晶报表的两个控件:TCrpe,TCrpeDS,在使用中遇到了如下问题:  
  var  
        Crpe1:   TCrpe;  
        CrpeDS1:   TCrpeDS;  
  ——————————————————————————————  
   
   
  //指定数据集合  
  CrpeDS1.DataSet:=ADOQuery1;  
   
  //打开数据集合  
  ADOQuery1.Active:=true;  
   
  //指定报表  
  self.Crpe1.ReportName:=E:\report\dtest\Report1.rpt;  
   
   
  //为报表指定动态数据集合,就在这一步出错.  
  try  
    Crpe1.Tables[0].DataPointer   :=   CrpeDS1.DataPointer;  
  except  
  end;  
   
  Crpe1.Show;  
   
  //-----------错误信息------  
  Error:717   Error   in   File   E:\report\dtest\Report1.rpt:  
  Failed   to   load   database   information.  
  Tables[0].SetDataPointer   <PESetNthTablePrivateInfo>  
  //-----------错误信息------  
 

网友回答:

发表者:ldhlyh

var   s:string;  
  begin  
      s:=select   *   from   table  
      ADOQuery1.close;  
      ADOQuery1.sql.clear;  
      ADOQuery1.sql.sql.add(s);  
      ADOQuery1.open;  
      crpe1.reportname:=e:\abc.rpt  
      crpe1.DiscardSavedData;  
      crpe1.Tables[0].DataPointer:=@ADOQuery.Recordset;  
      crpe1.WindowState:=wsMaximized;  
      crpe1.Execute;  
  end;  
  注意:此方法是用SQL语句动态的生成!那幺你在制作水晶报表模板时,也应该使用SQL来动态生成报表所需字段!另外水晶报表里面的查询字段必须与ADOQuery中的  
  查询字段是一样的才行,只不过ADOQuery中增加了一些查询条件而已!


 

 
热门推荐笔记本: 方正笔记本
相关文章:
笔记本相关:
IT技术文章:
webmaster:popbb@126.com   最佳浏览:1024X768 MSIE
©2007 popbb.net All Rights Reserved