以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 多字段跨表计算 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=108793) |
-- 作者:wakai -- 发布时间:2017/10/29 17:59:00 -- 多字段跨表计算 包材合同,合同明细表两个 实现合同中列的总额等于明细表金额的sum,有两个关联列,申请编号,包材合同编号 现在存在问题是,只按申请编号分组求和,没有按申请编号+包材合同编号进行分组求和,请问要怎么写,现在代码如下, 包材合同 Select Case e.DataCol.Name Case "申请编号","包材合同编号" Dim Filter3 As String = "申请编号 = " & e.DataRow("申请编号")\'\' ) e.DataRow("总额") = DataTables("合同_包材申请明细表").Compute("Sum(金额)", Filter3) End Select 合同明细表 Select Case e.DataCol.Name Case "采购数量","单价" If e.OldValue <> e.NewValue Then Dim pr As DataRow pr = DataTables("合同_包材合同").Find("[申请编号] = " & e.DataRow("申请编号") If pr IsNot Nothing Then DataTables("合同_包材合同").DataCols("申请编号").RaiseDataColChanged(pr) End If End If End Select [此贴子已经被作者于2017/10/29 18:03:12编辑过]
|
-- 作者:有点甜 -- 发布时间:2017/10/29 21:22:00 -- 比如
Select Case e.DataCol.Name
Case "申请编号","包材合同编号"
Dim Filter3 As String = "申请编号 = \'" & e.DataRow("申请编号") & "\' and 包材合同编号 = \'" & e.DataRow("包材合同编号") & "\'"
e.DataRow("总额") = DataTables("合同_包材申请明细表").Compute("Sum(金额)", Filter3)
End Select
|
-- 作者:wakai -- 发布时间:2017/10/29 23:18:00 -- .NET Framework 版本:2.0.50727.5485 Foxtable 版本:2017.8.19.1 错误所在事件:表,合同_合同明细表,DataColChanged 详细错误信息: 调用的目标发生了异常。 从字符串“[申请编号] = 34”到类型“Long”的转换无效。 输入字符串的格式不正确。 |
-- 作者:有点甜 -- 发布时间:2017/10/30 0:10:00 -- 贴出你写的代码。 |