Foxtable(狐表)用户栏目专家坐堂 → 删除行时,刷新计算


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

主题:删除行时,刷新计算

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


加好友 发短信
等级:四尾狐 帖子:893 积分:8064 威望:0 精华:0 注册:2013/5/30 11:27:00
删除行时,刷新计算  发帖心情 Post By:2017/2/13 11:59:00 [只看该作者]

各位老师,我在进出明细记录内录入数据,表属性在datacolchanged内写入计算代码:总账 “物料代码”就会刷新; 可是当删除行时,总账上的总数就不会自动扣除;于是我又将这个语句写入删除时执行的代码中,依然不会刷新汇总数据,各位老师帮我看看,我刷新重新计算的代码要写在哪里?

 Case "入库数量"
        e.DataRow.Save()
        Dim dr As DataRow
        dr = DataTables("物料信息").Find("物料代码 = '" & e.DataRow("物料代码") & "'" )
        If dr IsNot Nothing '如果找到, 则设置各列内容
           
            dr("入库数量") = DataTables("进出明细记录").SQLCompute("Sum(入库数量)","物料代码 = '" & e.DataRow("物料代码") & "'")
            dr.Save()
        End If
    Case "出库数量"
        e.DataRow.Save()
        Dim dr As DataRow
        dr = DataTables("物料信息").Find("物料代码 = '" & e.DataRow("物料代码") & "'" )
        If dr IsNot Nothing '如果找到, 则设置各列内容
           
            dr("出库数量") = DataTables("进出明细记录").SQLCompute("Sum(出库数量)","物料代码 = '" & e.DataRow("物料代码") & "'")
            dr.Save()
        End If


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


加好友 发短信
等级:四尾狐 帖子:893 积分:8064 威望:0 精华:0 注册:2013/5/30 11:27:00
  发帖心情 Post By:2017/2/13 12:01:00 [只看该作者]

我在datarowdeleting 中写的代码删除时刷新汇总数据的代码 :

e.DataRow.Save()
Dim dr As DataRow
'MessageBox.Show(1)
dr = DataTables("物料信息").Find("物料代码 = '" & e.DataRow("物料代码") & "'" )
If dr IsNot Nothing '如果找到, 则设置各列内容
   ' MessageBox.Show(2)
    dr("入库数量") = DataTables("进出明细记录").SQLCompute("Sum(入库数量)","物料代码 = '" & e.DataRow("物料代码") & "'") - e.DataRow("入库数量")
    dr("出库数量") = DataTables("进出明细记录").SQLCompute("Sum(出库数量)","物料代码 = '" & e.DataRow("物料代码") & "'") - e.DataRow("出库数量")
   


End If


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/2/13 12:22:00 [只看该作者]

datarowdeleting 事件,如果msgbox(2)弹出,肯定会改的。


Dim dr As DataRow
MessageBox.Show(1)
dr = DataTables("物料信息").Find("物料代码 = '" & e.DataRow("物料代码") & "'" )
If dr IsNot Nothing '如果找到, 则设置各列内容
    MessageBox.Show(2)

SystemReady = False
    dr("入库数量") = DataTables("进出明细记录").SQLCompute("Sum(入库数量)","物料代码 = '" & e.DataRow("物料代码") & "'") - e.DataRow("入库数量")
    dr("出库数量") = DataTables("进出明细记录").SQLCompute("Sum(出库数量)","物料代码 = '" & e.DataRow("物料代码") & "'") - e.DataRow("出库数量")
SystemReady = True
End If


 回到顶部