Foxtable(狐表)用户栏目专家坐堂 → [求助] 关于datatable 的方法 select 运用中的问题。


  共有20660人关注过本帖树形打印复制链接

主题:[求助] 关于datatable 的方法 select 运用中的问题。

帅哥哟,离线,有人找我吗?
wcs
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1034 积分:7402 威望:0 精华:0 注册:2008/8/31 22:52:00
[求助] 关于datatable 的方法 select 运用中的问题。  发帖心情 Post By:2008/11/18 23:32:00 [只看该作者]

我在当前表事件  datacolchanged 中写了如下代码:
If e.DataCol.Name = "结账" and e.NewValue = -1 Then
   For Each dr As DataRow In DataTables("会计凭证").Select("[月] = "& e.DataRow("月") and "[年] = "& e.DataRow("年"))
           dr("结账") = -1
   Next
end if

执行结果出错,如图:


图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看

提示是[月]= 10 的 类型不合法。

但是,我将  select  里面的条件颠倒一下:DataTables("会计凭证").Select("[年] = "& e.DataRow("年") and "[月] = "& e.DataRow("月"))
则执行结果出错,如图:


图片点击可在新窗口打开查看此主题相关图片如下:未命名1.jpg
图片点击可在新窗口打开查看

提示是[年]= 2008 的 类型不合法。

可见总是第一个条件出错,不任顺序,这是不是bug?

同时,如果将select里面的两个条件去掉一个,是可以正常执行的。
实在是不明白啊!

注:我的两个表都是外部数据库ACCESS,年、月列的类型全部为整型。


 回到顶部
帅哥哟,离线,有人找我吗?
smileboy
  2楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 好心情 一级勋章
等级:超级版主 帖子:715 积分:5564 威望:0 精华:1 注册:2008/8/31 20:45:00
  发帖心情 Post By:2008/11/18 23:44:00 [只看该作者]

If e.DataCol.Name = "结账" and e.NewValue = -1 Then
   For Each dr As DataRow In DataTables("会计凭证").Select("[月] = " & e.DataRow("月") & " and [年] = " & e.DataRow("年"))
           dr("结账") = -1
   Next
end if
[此贴子已经被作者于2008-11-18 23:44:15编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
wcs
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1034 积分:7402 威望:0 精华:0 注册:2008/8/31 22:52:00
  发帖心情 Post By:2008/11/19 19:54:00 [只看该作者]

为什么要这样?

能说明一下理由吗?

为保证以后不再有疑问。


 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7237 积分:40614 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2008/11/19 22:48:00 [只看该作者]

看看这一段就知道了:
"& e.DataRow("月") and "[年] = "&

 回到顶部
帅哥哟,离线,有人找我吗?
wcs
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1034 积分:7402 威望:0 精华:0 注册:2008/8/31 22:52:00
  发帖心情 Post By:2008/11/20 0:12:00 [只看该作者]

程的理解有误啊!

"[月] = "
& e.DataRow("月") &
" and [年] = "
& e.DataRow("年")

这样才能理解。

凡表达式,要""
凡E参数,不要""

帮助例子中一般只有一组条件,多组条件,并有E参数时,就这样搞定!


 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7237 积分:40614 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2008/11/20 0:21:00 [只看该作者]

您把您一楼的公式和二楼对比一下,看看是少了啥?
看看您只用几个&二楼用了几个&?
[此贴子已经被作者于2008-11-20 0:23:04编辑过]

 回到顶部