报表QRDBText中的dataset选项中只有table和query,怎么样才能把clientdataset查询到的数据传给QRDBText.
   我用以下的方法预览报表时没有显示数据,只是一张空表:
   report.dataset:='clientdataset1';
   report.QRDBText1.datafield:='field1';
   report.QRDBText2.datafield:='field2';
   report.preview;
   report.free;
  
为什么会这样。

解决方案 »

  1.   

    首先:你得确定clientdataset里面有数据!!!
    然后:
       report.dataset:=clientdataset1;   //注意:clientdataset1不是字符!
       report.QRDBText1.datafield:='field1';
       report.QRDBText2.datafield:='field2';
       report.preview;
       report.free;
      
      

  2.   

    report.dataset:=clientdataset1;   
       report.QRDBText1.datafield:='field1';
       report.QRDBText2.datafield:='field2';
       report.preview;
       report.free;
      

  3.   

    先把clientdataset1查询到得数据赋值给数据集adoDataSet1,然后用adoDataSet1关联QRDBText.
      

  4.   

    我按照上面几位所说的把'clientdataset1'改成clientdataset1,结果仍旧是空表,我能保证查询结果有数据,而且不只两条。
      

  5.   

    你有没有把QRDBText放到QuickRep1的Band上去(比如说DetailBand)呢?
      

  6.   

    那你QuickRep1上有没有DetailBand。
    因为qrsubDetail的使用是跟在DetailBand之后的,而且qrsubDetail也要关联数据集(Quickrep也要);
      

  7.   

    问题已解决,原因是服务端没开启,所以QRDBText不能联到clientdataset1上。
    谢谢各位!