Foxtable(狐表)用户栏目专家坐堂 → 关联表(子表)切换到主表后


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

主题:关联表(子表)切换到主表后

美女呀,离线,留言给我吧!
bm
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:437 积分:3463 威望:0 精华:0 注册:2011/9/13 23:27:00
关联表(子表)切换到主表后  发帖心情 Post By:2011/12/26 16:01:00 [只看该作者]

If e.DataCol.Name = "审核" Then
   If e.NewValue = True Then
   Dim pr As DataRow = Tables("业务.车辆信息").Current.DataRow
   Dim r As Row = Tables("支出明细").AddNew()
   r("支出项目") = "运费"
   r("金额") = pr("应付金额")
   r("收款人") = pr("车辆信息")
   r("关单号") = pr("关单号")
   Tables("业务.车辆信息").Current.Locked = True
   Tables("业务.车辆信息").Current.Save()
   Tables("支出明细").Current.Locked = True
   Tables("支出明细").Current.Save()
  End If
ElseIf e.DataCol.Name = "支付账户" Then
    If e.NewValue IsNot Nothing Then
   Dim pd As DataRow = Tables("业务.车辆信息").Current.DataRow
   Dim d As Row = Tables("支出明细").AddNew()
   d("支出项目") = "出车费"
   d("金额") = pd("出车费")
   d("收款人") = pd("车辆信息")
   d("关单号") = pd("关单号")
   d("支出账户") = pd("支出账户")
   Tables("业务.车辆信息").Current.Locked = True
   Tables("业务.车辆信息").Current.Save()
   Tables("支出明细").Current.Locked = True
   Tables("支出明细").Current.Save()
  End If
End If
[此贴子已经被作者于2011-12-26 16:05:05编辑过]

 回到顶部
美女呀,离线,留言给我吧!
bm
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:437 积分:3463 威望:0 精华:0 注册:2011/9/13 23:27:00
切换到主表后出错  发帖心情 Post By:2011/12/26 16:05:00 [只看该作者]

切换到主表后。在主表中“审核”“支付”数据不对

 回到顶部
美女呀,离线,留言给我吧!
bm
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:437 积分:3463 威望:0 精华:0 注册:2011/9/13 23:27:00
需要在审核  发帖心情 Post By:2011/12/26 16:16:00 [只看该作者]

需要在“审核”或”支付“的时候都是当前行进行操作

 回到顶部
美女呀,离线,留言给我吧!
bm
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:437 积分:3463 威望:0 精华:0 注册:2011/9/13 23:27:00
请高手帮帮忙  发帖心情 Post By:2011/12/26 16:56:00 [只看该作者]

请高手帮帮忙

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/12/26 22:20:00 [只看该作者]

你上面的代码,用的都是Current,Current表示当前行,和触发事件的行没有关系。

一般表事件,都是用e.DataRow或者e.Row获得触发事件的行,不应该用Current。

你看看帮助文件中所有的表事件的代码,都是这样的。


 回到顶部