一个动态自报表时出错的一段代码,Database1为 Tdatabase 组件,cmbtabename为组合框从中挑选数据表,strlist显示字段
procedure TFrm_Main.cmbTableNameChange(Sender: TObject);
var
i,j: Integer;
nCurSel: integer;
strTableName: string;
strList: TStringList;
begin
Clear;
tblCurrent := TTable.Create(Self); //产生表
actrptCool := TActReport.Create(Self); nCurSel := cmbTableName.ItemIndex; //为组合框索引
strTableName := cmbTableName.Items.Strings[nCurSel];为组合框值
strList := TStringList.Create; //生成list with tblCurrent do begin //定义表
Active := False;
Name := strTableName;
DatabaseName := DM_Main.Database1.DatabaseName;//数据库路径出错,DM_Main.Database1为数据集组件 tdatabase TableName := strTableName; //从cmbTableName组合框选表
ReadOnly := True;
Active := True;
for i := 0 to FieldDefs.Count - 1 do
strList.Add(FieldDefs[i].Name);
end; actrptCool.Initialize(tblCurrent, strTableName, strList); actrptCool.LoadRep;
actrptCool.PreviewRep(prvHot);
strList.Free;
end;此一为是动态制表范例程序一段代码,我想测试一下,学习学习。这段代码意思为从一数据库(DM_Main.Database1)任意选一个表,跟据表的结构,用户自己做表格打印。请各位大侠指点。thank you
procedure TFrm_Main.cmbTableNameChange(Sender: TObject);
var
i,j: Integer;
nCurSel: integer;
strTableName: string;
strList: TStringList;
begin
Clear;
tblCurrent := TTable.Create(Self); //产生表
actrptCool := TActReport.Create(Self); nCurSel := cmbTableName.ItemIndex; //为组合框索引
strTableName := cmbTableName.Items.Strings[nCurSel];为组合框值
strList := TStringList.Create; //生成list with tblCurrent do begin //定义表
Active := False;
Name := strTableName;
DatabaseName := DM_Main.Database1.DatabaseName;//数据库路径出错,DM_Main.Database1为数据集组件 tdatabase TableName := strTableName; //从cmbTableName组合框选表
ReadOnly := True;
Active := True;
for i := 0 to FieldDefs.Count - 1 do
strList.Add(FieldDefs[i].Name);
end; actrptCool.Initialize(tblCurrent, strTableName, strList); actrptCool.LoadRep;
actrptCool.PreviewRep(prvHot);
strList.Free;
end;此一为是动态制表范例程序一段代码,我想测试一下,学习学习。这段代码意思为从一数据库(DM_Main.Database1)任意选一个表,跟据表的结构,用户自己做表格打印。请各位大侠指点。thank you
解决方案 »
- 求高效的圆圈内所有点的算法?
- 有谁能在QQ上和我语音聊一下关于分布式开发方面的内容!!QQ:53782893
- 关于use unit的问题?
- 高分求助!!winexec函数的第一个参数可以设置为相对路径吗(例如主文件所在目录或其上一层)?谢谢!
- 关于图形转换方法,急需,提供信息者均有分!!
- 如何使用DXDBGrid的Hint对鼠标移动到该列时进行数据的显示
- Delphi中重新排序的问题
- 求CRC_CCITT校验的计算结果
- 如何通过编程去控制另外一个程序的运行、暂停和关闭?
- bde+mdb+dao、ado+mdb+dao、diamond+mdb哪种方案好?分发如何?
- 当我试作用缓存更新表,表能缓存,不能更新,错误码是 ‘table is read only’,or ‘不能更新操作’,我用了tdatabase,tquery, tupdatesp
- 如何在编程,实现Win2000下进程无法被结束?
动态制报表范例程序一段代码,测试中出错。原例了是ineterbase数据库,我没有建ineterbase数据库,改用prodxo 数据库。Database1为 Tdatabase 组件,cmbtabename为组合框从中挑选数据表,strlist显示字段,我测试中发现数据源有问题,strlist是显示字段的,测试中动态产生表出错,strlist当然不显示字段。问题就出在这是,不然话就能测试下去了。此范例程序是是对外不可见的。大家和我共同感受一下动态制报表风范吧!