Foxtable(狐表)用户栏目专家坐堂 → 商务合同管理-自动编号和求和


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

主题:商务合同管理-自动编号和求和

帅哥,在线噢!
有点蓝
  21楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105862 积分:538367 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/20 14:27:00 [只看该作者]

哪里名称重复了,换个名称

            Dim dr2 As DataRow = e.DataTable.Find("子目号 = '全部'")
            If dr2 IsNot Nothing Then
                dr2("合计") = e.DataTable.Compute("sum(合计)","子目号 not like '%-%'")
            End If


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


加好友 发短信
等级:幼狐 帖子:75 积分:496 威望:0 精华:0 注册:2020/3/6 9:06:00
  发帖心情 Post By:2020/3/20 15:38:00 [只看该作者]

谢谢版主,我找到了substring语法。

对dr的定义也改了,但是计算的结算不对,


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

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


加好友 发短信
等级:幼狐 帖子:75 积分:496 威望:0 精华:0 注册:2020/3/6 9:06:00
  发帖心情 Post By:2020/3/20 15:44:00 [只看该作者]

版主,运行时出现一个问题:“全部”这个的求和是累计求和,只要改了其中一个数据,这个sum(合计)是会一直增加的,是不是用什么条件给他限制一下,
[此贴子已经被作者于2020/3/20 15:45:39编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  24楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105862 积分:538367 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/20 16:09:00 [只看该作者]

Select Case e.DataCol.Name
    Case  "工程数量","综合单价"
        If e.DataRow.IsNull("工程数量") AndAlso e.DataRow.IsNull("综合单价")  Then
        Else
            e.DataRow("合计") = e.DataRow("工程数量") * e.DataRow("综合单价")
        End  If
    Case "合计"
        Dim s As String = e.DataRow("子目号")
        Dim idx As Integer = s.LastIndexOf("-")
        If idx > -1 Then
            Dim s1 As String = s.SubString(0,idx)
            Dim dr As DataRow = e.DataTable.Find("子目号 = '" & s1 & "'")
            If dr IsNot Nothing Then
                dr("合计") = e.DataTable.Compute("sum(合计)","子目号 like '" & s1 & "-%' and 工程数量 is not null and 综合单价 is not null")
            End If
        ElseIf e.DataRow("子目号") <> "全部"
            Dim dr2 As DataRow = e.DataTable.Find("子目号 = '全部'")
            If dr2 IsNot Nothing Then
                dr2("合计") = e.DataTable.Compute("sum(合计)","子目号 not like '%-%' and 子目号 <> '全部'")
            End If
        End If
        
End Select

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


加好友 发短信
等级:幼狐 帖子:75 积分:496 威望:0 精华:0 注册:2020/3/6 9:06:00
  发帖心情 Post By:2020/3/20 17:49:00 [只看该作者]

谢谢版主,这个问题再次解决了

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


加好友 发短信
等级:幼狐 帖子:75 积分:496 威望:0 精华:0 注册:2020/3/6 9:06:00
  发帖心情 Post By:2020/3/21 21:24:00 [只看该作者]

请教一下,这是哪里错了?

表事件

 

零号清单_DataColChanged

 

Select Case e.DataCol.Name

    Case "工程数量"

        Dim s As String = e.DataRow("子目号")

        Dim idx As Integer = s.LastIndexOf("-")

        If idx > -1 Then

            Dim s1 As String = s.SubString(0,idx)

            Dim dr As DataRow = e.DataTable.Find("子目号 = '"& s1 &"'")

            If dr IsNot Nothing Then

                dr("工程数量") = e.DataTable.Compute("sum(工程数量)","子目号 like '" & s1 & "-%'")

            End If

        End If

        Dim dr2 As DataRow = e.DataTable.Find("子目号 = '全部'")

        Dim idx1 As Integer = s.LastIndexOf("第")

        If idx1 > -1 Then

            dr2("工程数量") = e.DataTable.Compute("sum(工程数量)","子目号 not like '%-%'and 子目号  Like '第%' and 子目号 <> '全部'")

        End If

        

        Dim dr3 As DataRow = e.DataTable.Find("子目号 = '第100章'")

        Dim idx2 As Integer = s.LastIndexOf("1")

        If idx2 > -1 Then

            dr3("工程数量") = e.DataTable.Compute("sum(工程数量)","子目号 like  '1%' And 子目号 not Like '%-%' And 子目号 <> '第100章'")

        End If

        

        Dim dr4 As DataRow = e.DataTable.Find("子目号 = '第200章'")

        Dim idx3 As Integer = s.LastIndexOf("2")

        If idx3 > -1 Then

            dr4("工程数量") = e.DataTable.Compute("sum(工程数量)","子目号 like  '2%' And 子目号 not Like '%-%' And 子目号 <> '第200章'")

        End If

        

       

End Select

 

 



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


加好友 发短信
等级:幼狐 帖子:75 积分:496 威望:0 精华:0 注册:2020/3/6 9:06:00
  发帖心情 Post By:2020/3/21 21:25:00 [只看该作者]


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


 回到顶部
帅哥,在线噢!
有点蓝
  28楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105862 积分:538367 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/22 20:24:00 [只看该作者]

like没有办法区分101-1-a和101-1-a-1.建议加一个级别列,每个级别子目录编个序号,比如101-1-a、101-1-b是3级,101-1-a-1是4级,这样可以根据级别进行统计

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


加好友 发短信
等级:幼狐 帖子:75 积分:496 威望:0 精华:0 注册:2020/3/6 9:06:00
  发帖心情 Post By:2020/3/23 9:49:00 [只看该作者]

辛苦版主了,我不明白要如何增加?可否帮我处理一下,我把文件上传给您?
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目3.foxdb


 回到顶部
帅哥,在线噢!
有点蓝
  30楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105862 积分:538367 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/23 11:08:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目3(1).zip


 回到顶部
总数 36 上一页 1 2 3 4 下一页