以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  表达式问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=129961)

--  作者:lfz123
--  发布时间:2019/1/9 17:13:00
--  表达式问题
老师,请帮我看下这个代码:我要计算截止到3月(1月-3月)的营业收入,月份的表达式结果结算不正确
Dim cb As WinForm.ComboBox = Forms("会计科目主窗口").Controls("ComboBox1")  比如我输入2018年3月
    If cb.text > "" Then
        Dim dt As DataTable = DataTables("凭证明细")
        Dim tb As Table = Tables("利润表")
        Dim d As Date = cdate(cb.Text)

tb(0,3) =  dt.Compute("sum(贷方金额)","一级码 = \'5101\'and 年份 = \'"& d.Year & "\'and 月份 <=  \'"& d.Month & "\' ") \'营业收入
--  作者:有点甜
--  发布时间:2019/1/9 17:21:00
--  

参考

 

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=129930&page=1&star=1

 


--  作者:lfz123
--  发布时间:2019/1/9 17:38:00
--  回复:(有点甜)参考 http://www.foxtable....
Dim d1 As Date = Date.Today
Dim d2 = d1.AddMonths(-12)
Dim filter = "年度 + iif(月份>=10,convert(月份,\'System.String\'),\'0\'+convert(月份,\'System.String\')) >= \'" & Format(d2, "yyyyMM") & "\' and 年度 + iif(月份>=10,convert(月份,\'System.String\'),\'0\'+convert(月份,\'System.String\')) <= \'" & Format(d1, "yyyyMM") & "\'"
msgbox(filter)
Tables("窗口1_table1").Filter = filter

这个暂时我还不能理解,晕了,能否帮我直接写出来,或者有没有更容易理解点的

--  作者:有点甜
--  发布时间:2019/1/9 17:39:00
--  

 

tb(0,3) =  dt.Compute("sum(贷方金额)","一级码 = \'5101\' and 年度 + iif(月份>=10,convert(月份,\'System.String\'),\'0\'+convert(月份,\'System.String\')) >= \'" & Format(d, "yyyyMM") & "\'") \'营业收入

 


--  作者:lfz123
--  发布时间:2019/1/9 18:05:00
--  回复:(有点甜) tb(0,3) =  dt.Compute...
老师.结果还是不对,有其他的代码吗?
--  作者:有点甜
--  发布时间:2019/1/9 18:23:00
--  
以下是引用lfz123在2019/1/9 18:05:00的发言:
老师.结果还是不对,有其他的代码吗?

 

具体实例发上来测试。