Foxtable(狐表)用户栏目专家坐堂 → [求助]余额计算


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

主题:[求助]余额计算

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


加好友 发短信
等级:一尾狐 帖子:426 积分:3505 威望:0 精华:0 注册:2015/4/17 9:13:00
[求助]余额计算  发帖心情 Post By:2017/5/27 10:57:00 [只看该作者]

请教一下,我现在想执行以下代码时,每类产品名的第一行余额不变(维持原来的值),只需要从各类产品第二行的余额才开始计算,所以我直接把以下红底的代码直接去,还是不行



Dim drs As List(of DataRow) = DataTables("表A").Select("", "产品名,发生日期")
If drs.Count > 0  Then    

    drs(0)("余额") = drs(0)("收入") - drs(0)("支出") ‘设置第一行余额

    For i As Integer = 1 To drs.Count - 1  '从第二行开始逐行计算余额
        If drs(i)("产品名") = drs(i - 1)("产品名") Then
            drs(i)("余额") = drs(i-1)("余额") + drs(i)("收入") - drs(i)("支出")
        Else
            drs(i)("余额") = drs(i)("收入") - drs(i)("支出")
        End If
    Next
  
End If

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


加好友 发短信
等级:超级版主 帖子:107135 积分:544918 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/5/27 11:41:00 [只看该作者]

测试了一下,没有问题啊。截图说明或者上传例子看看

 回到顶部
帅哥哟,离线,有人找我吗?
乡里出城
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:426 积分:3505 威望:0 精华:0 注册:2015/4/17 9:13:00
  发帖心情 Post By:2017/5/27 16:49:00 [只看该作者]

表A因为有空行,所以导致第一行也重算了,表B的A1产品能正常计算,但A2产品就不能正常计算了(假设每个产品之前都是有收支的数据,现在表里的数据只是所有数据的一部份),这个目标主要是为了解决每次增加后面的数据时,只要加载之前的部份数据(余额之前也正确计算保存了),可以起来余额承上启下的连续计算。(不采用案例的分页加载计算)

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:余额计算.foxdb


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


加好友 发短信
等级:超级版主 帖子:107135 积分:544918 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/5/27 17:47:00 [只看该作者]

空行

Dim drs As List(of DataRow) = DataTables("表A").Select("产品名 is not null", "产品名,发生日期")

表B:
Dim drs As List(of DataRow) = DataTables("表B").Select("", "产品名,发生日期")
If drs.Count > 0 Then

    For i As Integer = 1 To drs.Count - 1 '从第二行开始逐行计算余额
        If drs(i)("产品名") = drs(i - 1)("产品名") Then
            drs(i)("余额") = drs(i-1)("余额") + drs(i)("收入") - drs(i)("支出")
        End If
    Next
    
End If

 回到顶部
帅哥哟,离线,有人找我吗?
乡里出城
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:426 积分:3505 威望:0 精华:0 注册:2015/4/17 9:13:00
  发帖心情 Post By:2017/5/28 23:12:00 [只看该作者]

谢谢!

 回到顶部