Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共12 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

标题:老大,请进!

1楼
baoxyang 发表于:2010/4/21 14:49:00
dim dtset1 as new System.Data.DataSet()
dtset1 = tt.GetStationAlarms(val(vars("CusID")),vars("Gpspwd"),car,tm1,tm2)  ‘这个是从外部数据表中采集的数据(外部接口)
      if dtset1.Tables(0).Rows.Count > 0 then
             Dim th as Data.DataTable = dtset1.Tables(0)
             dtset1.Tables.Remove(th)    ’这个老大教的方法,主要是写数据到表中
             Tables("车辆即时状态_Table2").DataSource = th
             DataTables("车辆即时状态_Table2").DataCols("uploadtime").SetDateTimeFormat(DateTimeFormatEnum.DateLongTime)
      end if
当外部数据在条件设置下所采集的数据为空时(也就是无数据时)会报错,if dtset1.Tables(0).Rows.Count > 0 then 用此判断无效。
请老大指点,应怎样才能不报错?谢谢!!!
2楼
狐狸爸爸 发表于:2010/4/21 15:01:00

报什么错? 我不明白你的意思

3楼
baoxyang 发表于:2010/4/21 15:05:00

在条件下有数据时可以正常加载数据到表中,但无数据时提示如下错误。


图片点击可在新窗口打开查看此主题相关图片如下:未命名.gif
图片点击可在新窗口打开查看
4楼
baoxyang 发表于:2010/4/21 16:08:00
 原因找到,如果数据为空时不能使用if dtset1.Tables(0).Rows.Count > 0 then 来判断。去掉这个判断即可。
但有遇到另外一个问题,
Dim th as Data.DataTable = dtset1.Tables(0)
dtset1.Tables.Remove(th)    ’这个老大教的方法,主要是写数据到表中
Tables("车辆即时状态_Table2").DataSource = th
看到表dataTables("车辆即时状态_Table2")只有列,没有行。
但用 if Tables("车辆即时状态_Table2").count > 0 then 来判断是否有加载数据时,此句会报错。

图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看
5楼
狐狸爸爸 发表于:2010/4/21 16:41:00
删除这行:
dtset1.Tables.Remove(th)    ’这个老大教的方法,主要是写数据到表中

已经从dataset移除了表th, 该表不再属于dataset中,所以if dtset1.Tables(0).Rows.Count > 0 then会出错
6楼
baoxyang 发表于:2010/4/21 17:01:00
哦,我用其它方法解决了。谢谢!!
7楼
baoxyang 发表于:2010/4/21 17:07:00
以下是引用狐狸爸爸在2010-4-21 16:41:00的发言:
删除这行:
dtset1.Tables.Remove(th)    ’这个老大教的方法,主要是写数据到表中

已经从dataset移除了表th, 该表不再属于dataset中,所以if dtset1.Tables(0).Rows.Count > 0 then会出错

这样会报错

8楼
狐狸爸爸 发表于:2010/4/21 17:14:00

应该不会报错了的

9楼
baoxyang 发表于:2010/4/21 17:20:00
删除这行:
dtset1.Tables.Remove(th)    ’这个老大教的方法,主要是写数据到表中


出现如下错误:


图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看
10楼
狐狸爸爸 发表于:2010/4/21 17:29:00
下次改一下。
共12 条记录, 每页显示 10 条, 页签: [1] [2]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02930 s, 2 queries.