起步软件技术论坛-X3

 找回密码
 立即注册
搜索
楼主: 刺青

【结贴】TExcelToTable导入问题

[复制链接]
发表于 2009-9-25 17:13:43 | 显示全部楼层
while not ADOTable1.Eof do
  begin
    dialogs.ShowMessage(TDAtaSet(ADOTable1).Fields[0].AsString);
    ADOTable1.Next;
  end;
你是说这里没有数据么?ADOTable1.RecordCount为0?我这里是正常的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-9-25 17:33:37 | 显示全部楼层
我把记录总数show了一下,有100多条,但是就是进不去下面那个循环,怎么回事呢?
如图:

o3.gif

23.01 KB, 下载次数: 142

回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-9-25 17:36:31 | 显示全部楼层
如果像40楼那样写,前面的那个循环A是可以进去的
但是后面那个循环B就进不去了。

05.gif

15.25 KB, 下载次数: 137

回复 支持 反对

使用道具 举报

发表于 2009-9-25 17:37:27 | 显示全部楼层
进不去循环是什么意思,条件为false了?
我这里就用你的代码,已经可以在datagrid上显示出自定义数据里面的数据了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-9-25 17:48:26 | 显示全部楼层
while not ADOTable1.Eof do
就是这个条件为false。是不是我的EXCEL表是导出来的,就会出现了这问题?你帮我测试下这个文件看,已上传。这个文件只有6条记录,但是读出很多条空的记录。

t001.rar

6.35 KB, 下载次数: 83

回复 支持 反对

使用道具 举报

发表于 2009-9-25 18:08:36 | 显示全部楼层

没有问题,我这里能显示出来数据

如图

snap1.jpg

26.17 KB, 下载次数: 133

回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-9-27 09:20:26 | 显示全部楼层
我重新做一个功能就可以了,原来那个也不知道是怎么回事。

然后,还有一个问题,我把功能编译签入刷新之后,用IE登录。
这个功能打不开,错误信息:
创建业务对象“业务模型\质检管理系统\5_资源管理\认证认可管理\认证认可附表导入\认证认可附表导入(BIZ:\ZJGLXT\FIVE_ZYGL\RZRKGL\RZRKFBDR.FUNC.dir\FBDR.Form)”时发生了错误。错误信息:无效的模块“BIZ:\ZJGLXT\FIVE_ZYGL\RZRKGL\RZRKFBDR.FUNC.dir\adocomps.dll”,文件长度为零。

是不是ADO控件的问题?服务器上要怎么设置才行?
回复 支持 反对

使用道具 举报

发表于 2009-9-27 09:22:33 | 显示全部楼层
你要在服务端的NewVersion中把ado的bpl和dll放进去,然后修改一下config.xml,然后再用客户端安装制作工具重新做一下,让客户端重新下载才能生效。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-9-27 09:53:59 | 显示全部楼层
另外,导入16000多记录需要8分钟左右,我还想再优化一点速度。请问两个数据集之间如何赋值才更有效率?
只能这样子赋值吗?
ADOTable1.First;
  while not ADOTable1.Eof do
  begin
    Query2.Append;
    for i := 0 to RC-1 do     //RC字段数
    begin
      Query2.FieldByName['zdy'+sysUtils.IntToStr(i+1)].AsString := ADOTable1.Fields.AsString;
    end;
    ADOTable1.Next;
  end
回复 支持 反对

使用道具 举报

发表于 2009-9-27 09:56:37 | 显示全部楼层
试试DataSet.DisableControls
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-15 22:33 , Processed in 0.039335 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表