Foxtable(狐表)用户栏目专家坐堂 → 自动计算


  共有1748人关注过本帖树形打印复制链接

主题:自动计算

帅哥哟,离线,有人找我吗?
有点甜
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/1/18 9:20:00 [显示全部帖子]

Dim filter As String =  " 年度 = '" & e.DataRow("年度") & "' And 期间 = '" & e.DataRow("期间") & "'And 公司名称 = '" & e.DataRow("公司名称") & "'And 部门编号 = '" & e.DataRow("部门编号") & "'"
Select Case e.DataCol.name
    Case "数量","单价"
           e.DataRow("金额") = e.DataRow("数量") * e.DataRow("单价")
    Case "年度","期间"
        Dim drgh As DataRow = e.DataTable.find(filter & " And 项目 = '挂号收入'and 收入明细 like '%合计%'")
        If  drgh IsNot Nothing Then
            drgh("单价") = e.DataTable.Compute("sum(单价)",filter & " And 项目 = '挂号收入'and (收入明细 not like '%合计%' or 收入明细 is null)")
            drgh("数量") = e.DataTable.Compute("sum(数量)",filter & " And 项目 = '挂号收入'and (收入明细 not like '%合计%' or 收入明细 is null)")
            drgh("金额") = e.DataTable.Compute("sum(金额)",filter & " And 项目 = '挂号收入'and (收入明细 not like '%合计%' or 收入明细 is null)")
        End If
End Select
Select Case e.DataCol.name
    Case "数量","单价","金额"
        If e.DataRow("收入明细") <> "合计" Then
            e.DataTable.DataCols("年度").RaiseDataColChanged(filter & " and 收入明细 like '%合计%'" )
        End If
End Select

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/1/18 19:57:00 [显示全部帖子]

Forms("查询").open
Dim sql As String = "Select 项目,金额,期间,收入明细,部门编号 FROM {门诊收入预算} where (收入明细 not like '总计'  or 收入明细 is null) and (收入明细 not like '%合计%' or 收入明细 is null) and 项目 is not null union all Select 项目,金额,'小计',收入明细,部门编号 FROM {门诊收入预算} where (收入明细 not like '总计'  or 收入明细 is null) and (收入明细 not like '%合计%' or 收入明细 is null) and 项目 is not null "
Dim b As New CrossTableBuilder("统计表1",sql)
b.HGroups.AddDef("项目")
b.vGroups.AddDef("部门编号")
b.VGroups.AddDef("期间","{0}月")
b.Totals.AddDef("金额")
b.HorizontalTotal = True
b.VerticalTotal = True
b.Build()
Forms("查询").controls("table1").Table.DataSource = DataTables("统计表1")

 回到顶部