Foxtable(狐表)用户栏目专家坐堂 → 汇总显示


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

主题:汇总显示

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


加好友 发短信
等级:童狐 帖子:248 积分:1985 威望:0 精华:0 注册:2014/5/13 10:53:00
汇总显示  发帖心情 Post By:2014/6/13 14:43:00 [只看该作者]

在收入表窗口中的Table中有其中三列,金额,收入汇总,账号卡号。现在我想在添加新的收入时,收入汇总列能够自动的累加上次并显示出来。怎么写?
下面这个是我的代码,但是没有达到效果。

        If e.Form.Controls("金额").text <> "" Then
            nr("金额") = CInt(e.Form.Controls("金额").text )
            Dim ccfs As DataRow = DataTables("存支方式").find("del=1 and 编号 = '" & nr("存支方式编号") & "'")
            If ccfs IsNot Nothing Then
                nr("收入汇总") = Tables("收入表窗口_Table1").Compute("Sum(金额)","账号卡号 = '" & ccfs("卡号") & "'")
            End If
        End If

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/6/13 14:46:00 [只看该作者]

你NR从何而来,自己利用messagebox.show 调试一下看看哪一步没有按照你预先的运行

建议您用这个方法:
http://www.foxtable.com/help/topics/1485.htm

先找出是哪一行出错,然后分析原因,搞不定,把调试结果发出来,或者上例子.

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


加好友 发短信
等级:童狐 帖子:248 积分:1985 威望:0 精华:0 注册:2014/5/13 10:53:00
  发帖心情 Post By:2014/6/15 12:44:00 [只看该作者]

看我截图,和下面的增加按钮Click的代码。

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看

添加收入按钮的代码:
Dim Result As DialogResult
Result = MessageBox.Show("您确定添加吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If Result = DialogResult.Yes Then
    If  e.Form.Controls("类型2").text = "" Or  e.Form.Controls("收入者2").text = "" Or e.Form.Controls("存储方式2").text = "" Or  e.Form.Controls("持有人2").text = "" Or  e.Form.Controls("金额").text ="" Or e.Form.Controls("日期").text="" Then
        MessageBox.Show("必填项不能为空!!!")
    Else
        Dim nr As Row = Tables("收入表窗口_Table1").AddNew
        
        Dim zc As DataRow
        If e.Form.Controls("类型2").text <> "" Then
            nr("收入类型表编号") = CInt(e.Form.Controls("类型2").text)
            Dim lx As DataRow = DataTables("收入类型表").find("del = 1 and 编号='"& nr("收入类型表编号") &"'")
            If lx IsNot Nothing Then
                nr("收入类型") =lx("类型")
            End If
        End If
        If e.Form.Controls("金额").text <> "" Then
            nr("金额") = CInt(e.Form.Controls("金额").text )
            Dim ccfs As DataRow = DataTables("存支方式").find("del=1 and 编号 = '" & nr("存支方式编号") & "'")
            If ccfs IsNot Nothing Then
                nr("收入汇总") = Tables("收入表窗口_Table1").Compute("Sum(金额)","账号卡号 = '" & ccfs("卡号") & "'")
            End If
        End If
        
        If e.Form.Controls("日期").text <> "" Then
            nr("日期") = CDate(e.Form.Controls("日期").text )
        End If
        If e.Form.Controls("收入者2").text <> "" Then
            nr("收入者编号") = CInt(e.Form.Controls("收入者2").text )
            Dim fdr As DataRow = DataTables("家庭成员表").Find("del=1 and 编号 = '" & nr("收入者编号") & "'")
            If fdr IsNot Nothing Then
                nr("收入者姓名") = fdr("姓名")
            End If
            
            
        End If
        If e.Form.Controls("存储方式2").text <> "" Then
            nr("存支类型表编号") = CInt(e.Form.Controls("存储方式2").text)
            Dim sd As DataRow = DataTables("存支类型表").find("del=1 and 编号 = '"& nr("存支类型表编号") & "'")
            If sd IsNot Nothing Then
                nr("储存方式") = sd("存支类型")
            End If
            
        End If
        
        If e.Form.Controls("卡号类型2").text <> "" Then
            nr("银行表编号") = CInt(e.Form.Controls("卡号类型2").text )
            Dim zh As DataRow = DataTables("银行表").find("del=1 and 编号 = '"& nr("银行表编号")&"'"  )
            If zh IsNot Nothing Then
                nr("账号卡号类型") = zh("名称")
            End If
        End If
        
        If e.Form.Controls("银行卡号2").text <> "" Then
            nr("存支方式编号") = CInt(e.Form.Controls("银行卡号2").text )
            Dim yh As DataRow = DataTables("存支方式").find("del=1 and 编号 = '"& nr("存支方式编号")&"'" )
            If yh IsNot Nothing Then
                nr("账号卡号") = yh("卡号")
            End If
        End If
        
        If e.Form.Controls("持有人2").text <> "" Then
            nr("持有人") = CInt(e.Form.Controls("持有人2").text )
            Dim cy As DataRow = DataTables("家庭成员表").find("del =1 and 编号 = '"& nr("持有人")&"'")
            If cy IsNot Nothing Then
                nr("持有人姓名") = cy("姓名")
            End If
        End If
        MessageBox.Show("数据添加成功!")
        e.Form.close()
        
        nr.Save
    End If
End If

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


加好友 发短信
等级:童狐 帖子:248 积分:1985 威望:0 精华:0 注册:2014/5/13 10:53:00
  发帖心情 Post By:2014/6/15 12:50:00 [只看该作者]

我的意思是当我添加的时候,收入汇总列也能够自动的跟随着金额列累加显示出来。

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/6/15 14:17:00 [只看该作者]

 不明你的意思,代码不是没有错吗?你看看红色代码是否有对应的数据

 

If e.Form.Controls("金额").text <> "" Then
    nr("金额") = CInt(e.Form.Controls("金额").text )
    Dim ccfs As DataRow = DataTables("存支方式").find("del=1 and 编号 = '" & nr("存支方式编号") & "'")
    If ccfs IsNot Nothing Then

        msgbox("aaabbbccc")
        nr("收入汇总") = Tables("收入表窗口_Table1").Compute("Sum(金额)","账号卡号 = '" & ccfs("卡号") & "'")
    End If
End If


 回到顶部