以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  二表之间较特殊的统计表达式如何写?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=13414)

--  作者:fagg
--  发布时间:2011/10/11 13:05:00
--  二表之间较特殊的统计表达式如何写?

本项目中有二表《客户信息》与《配发物料》,关联为父与子。

《配发物料》表中有一列为“物料类型”共五种类型,分别是A\\B\\C\\D\\E。

目标:

1、《客户信息》统计《配发物料》“费用时”,行-是以客户为统计(这个我会做),

2、《客户信息》的各项物料费用的A\\B\\C\\D\\E的列,表达式如何写?

开发者,密码是:888

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目108.table


图片点击可在新窗口打开查看此主题相关图片如下:未标题-1.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2011-10-11 13:25:42编辑过]

--  作者:狐狸爸爸
--  发布时间:2011/10/11 13:37:00
--  

这种情况不能用表达式计算,只能用代码,所以客户信息表的A会议物料、B促销物料等列不能是表达式列,必须改为数据列。

 

然后用代码计算,设置DataColChanged事件:

 

 

Dim r As DataRow = e.DataRow
Select Case e.DataCol.name
    Case "客户编号"
        r("各项物料费用_A会议物料") =  DataTables("物料配发").Compute("Sum(物料信息_数量)","客户编号 = \'" & r("客户编号") & "\' And 物料类型 = \'A_会议物料\'")
        r("各项物料费用_B促销物料") =  DataTables("物料配发").Compute("Sum(物料信息_数量)","客户编号 = \'" & r("客户编号") & "\' And 物料类型 = \'B_促销物料\'")
End Select

 

建议看看:

http://www.foxtable.com/help/topics/0681.htm

http://www.foxtable.com/help/topics/1454.htm

http://www.foxtable.com/help/topics/2235.htm

 

 


--  作者:mr725
--  发布时间:2011/10/11 13:49:00
--  
这个用代码吧,表达式不好弄···
--  作者:fagg
--  发布时间:2011/10/11 16:50:00
--  

按上述要求,并套用代码,没能搞定,不知何故,烦请老大,再次指点啊


--  作者:狐狸爸爸
--  发布时间:2011/10/11 17:00:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目108.rar