以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  求DataColChanged属性计算代码  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=99457)

--  作者:bluesky3234
--  发布时间:2017/4/19 16:31:00
--  求DataColChanged属性计算代码

希望在B表中 通过代码 实现  下图中  黄色列  的计算: 求各位大神

 


图片点击可在新窗口打开查看此主题相关图片如下:fd@a}6gxf6m}ar3ay2axjwh.png
图片点击可在新窗口打开查看

--  作者:有点色
--  发布时间:2017/4/19 16:40:00
--  

DataColChanged 事件

 

If e.DataCol.Name = "分组" Then
    If e.DataRow.Isnull("分组") Then
        e.DataRow("计算") = Nothing
    Else
        Dim sum1 As Double = DataTables("表A").compute("count(分数)", "分组 = \'" & e.DataRow("分组") & "\'")
        Dim sum2 As Double = DataTables("表A").compute("sum(分数)", "分组 = \'" & e.DataRow("分组") & "\'")
        e.DataRow("计算") = sum1 * sum2
    End If
End If


--  作者:有点色
--  发布时间:2017/4/19 16:41:00
--  

 参考

 

 http://www.foxtable.com/webhelp/scr/1472.htm

 

[此贴子已经被作者于2017/4/19 16:58:31编辑过]

--  作者:bluesky3234
--  发布时间:2017/4/19 16:51:00
--  
忘了问,  这个DataColChanged 属性应该是A表中  设置代码吧
--  作者:有点色
--  发布时间:2017/4/19 16:57:00
--  
以下是引用bluesky3234在2017/4/19 16:51:00的发言:
忘了问,  这个DataColChanged 属性应该是A表中  设置代码吧

 

写到表B的DataColChanged事件,看3楼的帮助文档。

 

http://www.foxtable.com/webhelp/scr/1472.htm

 

[此贴子已经被作者于2017/4/19 16:58:24编辑过]

--  作者:bluesky3234
--  发布时间:2017/4/19 17:13:00
--  

大神,写在B表中的  事件中了, 但是A表增加行数据后,B表计算列没反应。  您有QQ 或微信吗, 想单独咨询下。


--  作者:有点色
--  发布时间:2017/4/19 17:15:00
--  

 表ADataColChanged事件要加上代码

 

If e.DataCol.Name = "分数" Then
    DataTables("表B").DataCols("分组").RaiseDataColChanged("分组 = \'" & e.DataRow("分组") & "\'")
End If

[此贴子已经被作者于2017/4/19 17:15:39编辑过]

--  作者:bluesky3234
--  发布时间:2017/4/19 17:29:00
--  

还是没反应


--  作者:有点色
--  发布时间:2017/4/19 17:31:00
--  

修改表A的分数列,自然会计算。

 

点击重置列菜单,也行。把3楼和5楼帮助文档看一下。


--  作者:bluesky3234
--  发布时间:2017/4/19 17:35:00
--  

点击重置列可以了, 已经得出计算,多谢, 每次都要点重置列吗?