Foxtable(狐表)用户栏目专家坐堂 → 窗口中的表问题


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

主题:窗口中的表问题

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 11:15:00 [显示全部帖子]


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 11:41:00 [显示全部帖子]

不是也有datacolchanged事件么?直接抄原来的代码,如

 

Dim dr  As  DataRow

dr = e.DataRow

Dim db  As  DataRow
db =  DataTables("价格表").Find("品名 = '" & dr("品名") & "'")
If db IsNot Nothing Then
    db("库存") = db("库存") - dr("数量")
End If


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 14:35:00 [显示全部帖子]

1、你试试不写代码,然后确认,库存是否减少;

 

2、肯定是执行了两次代码才会减少两倍的。


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 15:10:00 [显示全部帖子]

贴出密码

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 15:35:00 [显示全部帖子]

dataColChanged事件

 

If e.DataCol.Name = "品名" Then
    If e.NewValue Is Nothing Then
        e.DataRow("单价") = Nothing
    Else
        Dim dr  As  DataRow
        dr =  DataTables("价格表").Find("品名 = '" & e.DataRow("品名") & "'")
        If dr IsNot Nothing Then
            e.DataRow("单价") = dr("价格")
        End If
    End If
End If

Select Case e.DataCol.Name
    Case "数量"
        If  e.DataRow("数量") = 12 Then
            e.DataRow("总价") = e.DataRow("单价") * e.DataRow("数量") - e.DataRow("单价")
        Else
            e.DataRow("总价") = e.DataRow("单价") * e.DataRow("数量")
        End If
        Dim db As  DataRow =  DataTables("价格表").Find("品名 = '" & e.DataRow("品名") & "'")
        If db IsNot Nothing Then
            db("库存") = db("库存") - e.DataRow("数量")
        End If

End Select

 


 回到顶部