以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 如何实现会计科目的分组汇总 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=130508) |
||||
-- 作者:nxhylczh -- 发布时间:2019/1/23 21:57:00 -- 如何实现会计科目的分组汇总 此主题相关图片如下:630cd9b54edc6fb659f05a3036fc795.png [此贴子已经被作者于2019/1/23 23:20:39编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2019/1/23 22:09:00 --
做一个内部数据源或者access数据源的例子发上来,说明操作步骤,以及需要做到的效果。
|
||||
-- 作者:nxhylczh -- 发布时间:2019/1/23 23:12:00 -- 请看示例 [此贴子已经被作者于2019/1/23 23:12:41编辑过]
|
||||
-- 作者:nxhylczh -- 发布时间:2019/1/23 23:15:00 -- 以下是引用nxhylczh在2019/1/23 23:12:00的发言: 请看示例 [此贴子已经被作者于2019/1/23 23:12:41编辑过]
项目的实际情况是 科目表 期初数表为外部表 科目期初数表是 一个填充表
[此贴子已经被作者于2019/1/23 23:19:14编辑过]
|
||||
-- 作者:nxhylczh -- 发布时间:2019/1/23 23:22:00 -- \'1010030202 的级数为4级 Dim kmbm_lenC() As String ={"101","101003","10100302","1010030202"} \'假定现在在第8行 借方累计栏内输入 100 For js As Integer = 4 To 1 Step -1 For CurRow As Integer = Tables("期初数").Position To 1 Step -1 \'从当前行向上查找 If Tables("期初数").Current("科目编码") = kmbm_lenC(js - 1) Then \'找到上级 10100302 \'汇总当前科目的下级科目 1010030202=1010030201+1010030202 第一次循环 \'Dim je As String = \'汇总当前科目的下级科目 1010030202=1010030201+1010030202 第一次循环 \'更新 期初数 1010030202 \'Tables("期初数").Current(e.Col.Name) = je \'表第六行 10100302 的借方累计=100+100 Exit For End If Next Next
|
||||
-- 作者:有点甜 -- 发布时间:2019/1/24 9:36:00 --
|
||||
-- 作者:nxhylczh -- 发布时间:2019/1/24 10:55:00 -- If e.Col.name = "借方累计" OrElse e.Col.name = "年初数" Then Dim bmgs As String = "3322" Dim bm As String = e.Row("科目编码") Dim idx As Integer = 0 For i As Integer = 0 To bmgs.length-1 idx += val(bmgs(i)) If bm.length >= idx Then Dim s = bm.SubString(0, idx) Dim fdr As DataRow = e.Table.DataTable.find("科目编码 = \'" & s & "\' and 有下级 = true") If fdr IsNot Nothing fdr("借方累计") = e.Table.Compute("sum(借方累计)", "科目编码 like \'" & s & "%\' and 科目编码 <> \'" & s & "\' and 有下级 = false")\' fdr("年初数")= e.Table.Compute("sum(年初数)", "科目编码 like \'" & s & "%\' and 科目编码 <> \'" & s & "\' and 有下级 = false")\' End If End If Next End If
|
||||
-- 作者:nxhylczh -- 发布时间:2019/1/24 10:56:00 -- 公开源代码,让有用的同行借鉴一下!(代码是版主写的) |