我的数据库表是动态生成的(每次根据初始条件,表的字段会有变化),所以只好亦动态的方式生成报表。我想通过以下方式解决。用DBGrid控件来显示Table表。在QuickReport中显示DBGrid。从而解决动态问题。试写以下代码:
QuickReport5.DataSet:=unit1.MainForm.DBGrid1.DataSource.DataSet;
QuickReport5.QRDBText2.DataSet:=unit1.MainForm.DBGrid1.DataSource.DataSet;
QuickReport5.QRDBText2.DataField:=unit1.MainForm.DBGrid1.DataSource.DataSet.Fields[0].Name;
QuickReport5.QRCompositeReport1.Preview;
(QRDBText2放在QRBand上,QRBand的BandType属性设为rbDetail
但是运行后,不能在预览中显示DBgrid的内容。
请大家帮忙看一看,急切等待ing...谢谢
QuickReport5.DataSet:=unit1.MainForm.DBGrid1.DataSource.DataSet;
QuickReport5.QRDBText2.DataSet:=unit1.MainForm.DBGrid1.DataSource.DataSet;
QuickReport5.QRDBText2.DataField:=unit1.MainForm.DBGrid1.DataSource.DataSet.Fields[0].Name;
QuickReport5.QRCompositeReport1.Preview;
(QRDBText2放在QRBand上,QRBand的BandType属性设为rbDetail
但是运行后,不能在预览中显示DBgrid的内容。
请大家帮忙看一看,急切等待ing...谢谢
lihao_ningxia(耗子) :我忘记说明了,因为想在一个预览中同时显示多张表,所以用了QRCompositeReport控件
应该为
QuickReport5.QRDBText2.DataField:=unit1.MainForm.DBGrid1.DataSource.DataSet.Fields[0].FieldName;