以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  表事件代码  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=92656)

--  作者:散客
--  发布时间:2016/11/9 21:08:00
--  表事件代码

Select Case e.DataCol.name
    Case "年"
        Dim y As Integer = Tables("专项资金指标统计").Current("年")
        Dim dt0 As New Date(y-1, 12, 31)
        Dim dt1 As New Date(y, 1, 1)
        Dim dt2 As new Date(y, 12, 31)
        Dim sk0,sk1,sk2 As  Double
        Dim fk0,fk1,fk2 As  Double
        Dim r As Row = Tables("专项资金指标统计").Current
        sk0 = DataTables("专项资金表").Compute("sum(指标金额", "收到日期 <= #" & dt0 & "#" )
        sk1 = DataTables("专项资金表").Compute("sum(指标金额)", "收到日期 >= #" & dt1 & "# AND 收到日期 <= #" & dt2 & "#" )
        sk2 = DataTables("专项资金表").Compute("sum(指标金额)", "收到日期 <= #" & dt2 & "#" )
        
        fk0 = DataTables("专项资金拨付记录").Compute("sum(拨款金额)", "拨款日期 <= #" & dt0 & "#" )
        fk1 = DataTables("专项资金拨付记录").Compute("sum(拨款金额)", "拨款日期 >= #" & dt1 & "# AND 拨款日期 <= #" & dt2 & "#" )
        fk2 = DataTables("专项资金拨付记录").Compute("sum(拨款金额)", "拨款日期 <= #" & dt2 & "#" )
        r("上年结转") = sk0 - fk0
        r("本年新增") = sk1
        r("本年拨付") = fk1
        r("年末结转下年") = sk2 - fk2
End Select
.NET Framework 版本:2.0.50727.8009
Foxtable 版本:2016.7.29.1
错误所在事件:表,专项资金指标统计,DataColChanged
详细错误信息:
调用的目标发生了异常。
聚合参数中的语法错误: 需要具有可能的“Child”限定符的单个列参数。
这个表事件代码有错吗?请高人指点 目的是输入年份(列)后根据原始数据生成统计表

--  作者:散客
--  发布时间:2016/11/9 21:14:00
--  
请教 求高人指点


--  作者:散客
--  发布时间:2016/11/9 21:26:00
--  
Select Case e.DataCol.name
    Case "年"
        Dim y As Integer = Tables("专项资金指标统计").Current("年")
        Dim dt0 As New Date(y-1, 12, 31)
        Dim dt1 As New Date(y, 1, 1)
        Dim dt2 As new Date(y, 12, 31)
        Dim sk0,sk1,sk2 As  Double
        Dim fk0,fk1,fk2 As  Double
        \'Dim r As Row = Tables("专项资金指标统计").Current
        sk0 = DataTables("专项资金表").Compute("sum(指标金额", "收到日期 <= #" & dt0 & "#" )
        sk1 = DataTables("专项资金表").Compute("sum(指标金额)", "收到日期 >= #" & dt1 & "# AND 收到日期 <= #" & dt2 & "#" )
        sk2 = DataTables("专项资金表").Compute("sum(指标金额)", "收到日期 <= #" & dt2 & "#" )
        
        fk0 = DataTables("专项资金拨付记录").Compute("sum(拨款金额)", "拨款日期 <= #" & dt0 & "#" )
        fk1 = DataTables("专项资金拨付记录").Compute("sum(拨款金额)", "拨款日期 >= #" & dt1 & "# AND 拨款日期 <= #" & dt2 & "#" )
        fk2 = DataTables("专项资金拨付记录").Compute("sum(拨款金额)", "拨款日期 <= #" & dt2 & "#" )
        e.DataRow("上年结转") = sk0 - fk0
        e.DataRow("本年新增") = sk1
e.DataRow("本年拨付") = fk1
e.DataRow("年末结转下年") = sk2 - fk2
End Select


--  作者:散客
--  发布时间:2016/11/9 21:26:00
--  
这样也不行
--  作者:有点蓝
--  发布时间:2016/11/9 21:33:00
--  
sk0 = DataTables("专项资金表").Compute("sum(指标金额)", "收到日期 <= #" & dt0 & "#" )
--  作者:散客
--  发布时间:2016/11/9 21:37:00
--  
谢了 真是犯了低级错误图片点击可在新窗口打开查看