以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]关于DataColChanged代码不执行的请教  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=113653)

--  作者:洮沙
--  发布时间:2018/1/20 9:37:00
--  [求助]关于DataColChanged代码不执行的请教

我的项目是“SQL2008r2数据库”,现有“客户表”、“合同主表”。分别采用的是分页加载。

如下图:

 


图片点击可在新窗口打开查看此主题相关图片如下:客户表.png
图片点击可在新窗口打开查看

 


 


图片点击可在新窗口打开查看此主题相关图片如下:合同表.png
图片点击可在新窗口打开查看

现在计划,只要是主合同表中客户的“实收费”累计数达到2000,自动将客户表中对应客户的“VIP”选项勾选。

目前在“主合同表”DataColChanged事件中加入以下代码:

 

Select e.DataCol.Name
    Case "客户名称","实收费"
        If e.DataRow("客户名称") IsNot Nothing Then
            Dim Sum As Double
            Sum = DataTables("主合同").SQLCompute("Sum(实收费)", "客户名称 = \'" & e.DataRow("客户名称") & "\'")
            If Sum >= 2000 Then
                Dim dr As DataRow
                dr = DataTables("客户").SQLFind("客户名称 = \'" & e.DataRow("客户名称") & "\'")
                If dr IsNot Nothing
                    If dr("VIP") = False Then
                        dr("VIP") = True
                    End If
                End If
            End If
        End If
End Select

 

修改合同表中的“实收费”数值,代码无法自动执行!昨天实验了大半天了,自己无解!望老师指正一下,谢谢!


--  作者:有点蓝
--  发布时间:2018/1/20 9:55:00
--  
Select e.DataCol.Name
    Case "客户名称","实收费"
        If e.DataRow.Isnull("客户名称") = False Then
            Dim Sum As Double
            Sum = DataTables("主合同").SQLCompute("Sum(实收费)", "客户名称 = \'" & e.DataRow("客户名称") & "\' and _Identify <> " & e.DataRow("_Identify"))
            If Sum + e.DataRow("实收费") >= 2000 Then
                Dim dr As DataRow
                dr = DataTables("客户").SQLFind("客户名称 = \'" & e.DataRow("客户名称") & "\'")
                If dr IsNot Nothing
                    If dr("VIP") = False Then
                        dr("VIP") = True
                        dr.Save
                        e.DataRow.save
                        dr = DataTables("客户").Find("客户名称 = \'" & e.DataRow("客户名称") & "\'")
                        If dr IsNot Nothing Then dr.Load
                    End If
                End If
            End If
        End If
End Select
[此贴子已经被作者于2018/1/20 9:56:10编辑过]

--  作者:洮沙
--  发布时间:2018/1/20 12:04:00
--  回复:(有点蓝)Select e.DataCol.Name   ...
合适了,谢谢蓝老师!