以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何实现表达式 用于数据列  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=107559)

--  作者:13868960029
--  发布时间:2017/9/30 11:04:00
--  如何实现表达式 用于数据列
老师  好  


我项目内的:日发电是表达式  要在项目中进行编辑和统计 ,请查验一下事件设置需要改那里,来实现所有的显示功能

谢谢
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:112(1).table


--  作者:有点蓝
--  发布时间:2017/9/30 12:08:00
--  
改为数据列,发电录入表Datacolchanged事件代码改改

Dim dr As DataRow = e.DataRow
Select Case e.DataCol.name
    Case "设备_1","设备_2","设备_3"
        dr("日发电") = dr("设备_1") + dr("设备_2") + dr("设备_3")
    End  Select
    
    
    If e.DataCol.Name = "名称" Then \'如果内容发生变动的是名称列
        If e.NewValue Is Nothing Then \'如果新值是空白,也就是品名列的内容为空
            e.DataRow("装机容量") = Nothing \'那么清空此行单价列的内容
        Else
            Dim fd As DataRow
            \'否则在产品表查找同名的产品行,将找到的行赋值给变量dr
            fd = DataTables("安装信息").Find("[名称] = \'" & e.NewValue & "\'")
            If fd IsNot Nothing Then \'如果找到了同名的产品行,也就是dr不是Nothing
                e.DataRow("装机容量") = fd("装机容量")
            End If
        End If
    End If

--  作者:13868960029
--  发布时间:2017/9/30 13:29:00
--  
发电录入 会自动合计 日发电  但是统计之后  再从其它表跳回来就没了显示
--  作者:13868960029
--  发布时间:2017/9/30 13:33:00
--  

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

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

--  作者:有点蓝
--  发布时间:2017/9/30 15:03:00
--  
重置列,然后点击保存按钮保存一下数据。