Foxtable(狐表)用户栏目专家坐堂 → [求助]datacolchange里面没法定义控件


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

主题:[求助]datacolchange里面没法定义控件

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


加好友 发短信
等级:五尾狐 帖子:1187 积分:8266 威望:0 精华:0 注册:2015/3/30 10:44:00
[求助]datacolchange里面没法定义控件  发帖心情 Post By:2015/12/14 16:42:00 [显示全部帖子]

我想在配货整理窗口勾线确定,右下角能自动统计出配货筛选明细表数量列求和的值。

想直接在datacolchange里面写代码,又没法直接定义控件。

有啥办法可以实现上面的要求?


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


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


加好友 发短信
等级:五尾狐 帖子:1187 积分:8266 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2015/12/14 17:01:00 [显示全部帖子]

Dim sum1,sum2 As Integer
If e.DataCol.name = "确定" Then
    If e.DataRow("确定") = True Then
        Dim dr As DataRow
        dr = DataTables("库存明细表").find ("物料编码 = '" & e.DataRow("物料编码") & "' and 库位编码 = '" & e.DataRow("库位编码") & "' And 提示 = '入库完成'","SN")
        If dr IsNot Nothing Then
            For i As Integer = 1 To e.DataRow("预配货数量")
                Dim ndr As DataRow = DataTables("配货筛选明细表").AddNew()
                ndr("SN") = dr("SN")
                ndr("物料编码") = dr("物料编码")
                ndr("库位号") = dr("库位号")
                ndr("库位编码") = dr("库位编码")
                ndr("数量") = dr("数量")
                ndr("标志") = e.DataRow("_Identify")
            Next
            
            sum1 = sum1 + DataTables("配货筛选明细表").Compute("count([SN])","物料编码 = '" & e.DataRow("物料编码") & "' and 标志 = '" & e.DataRow("_Identify") & "'")
            If Forms("配货整理").Opened Then
                Forms("配货整理").Controls("实配货数量").Text = sum1
            End If
        End If
    Else
        Dim drs As List(Of DataRow) = DataTables("配货筛选明细表").Select("物料编码 = '" & e.DataRow("物料编码") & "' and 标志 = '" & e.DataRow("_Identify") & "'")
        For i As Integer = drs.count - 1 To 0 Step -1
            drs(i).delete
        Next

        sum2 = DataTables("配货筛选明细表").Compute("count([SN])","物料编码 = '" & e.DataRow("物料编码") & "' and 标志 = '" & e.DataRow("_Identify") & "'")
        If Forms("配货整理").Opened Then
            Forms("配货整理").Controls("实配货数量").Text = sum1 - sum2
        End If
    End If
End If

这样统计不对吗?

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


加好友 发短信
等级:五尾狐 帖子:1187 积分:8266 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2015/12/14 17:09:00 [显示全部帖子]

同样的物料编码在配货筛选明细表也有啊。总不能把所有的物料编码都统计进去。
只统计这一次的。

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


加好友 发短信
等级:五尾狐 帖子:1187 积分:8266 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2015/12/14 17:15:00 [显示全部帖子]

应该这么理解,勾选第一行的确定时,根据条件物料编码 = '" & e.DataRow("物料编码") & "' and 标志 = '" & e.DataRow("_Identify") & "'统计出sum1数量2,显示也是2.
勾选第二行的确定时,根据条件物料编码 = '" & e.DataRow("物料编码") & "' and 标志 = '" & e.DataRow("_Identify") & "'统计出sum2数量1,显示sum应该为sum1+sum2显示为3才对。
如果去掉确定勾时,显示sum应该为sum1-sum2显示为1才对。

就是这样。


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


加好友 发短信
等级:五尾狐 帖子:1187 积分:8266 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2015/12/14 17:19:00 [显示全部帖子]

应该这么理解,勾选第一行的确定时,根据条件物料编码 = '" & e.DataRow("物料编码") & "' and 标志 = '" & e.DataRow("_Identify") & "'统计出sum1数量2,显示也是2.
勾选第二行的确定时,根据条件物料编码 = '" & e.DataRow("物料编码") & "' and 标志 = '" & e.DataRow("_Identify") & "'统计出sum2数量1,显示sum应该为sum1+sum2显示为3才对。
如果去掉确定勾时,显示sum应该为sum1-sum2显示为1才对。

就是这样。

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


加好友 发短信
等级:五尾狐 帖子:1187 积分:8266 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2015/12/14 17:53:00 [显示全部帖子]

没看懂

1、打开窗口记录全部的值sum-------统计条件是啥?每行的_idengty值是不一样的。

 

2、计算所有的值,减去sum,就是窗口打开以后变化的值。------再次计算所有的值?这又是啥意思?统计的是什么?


请帮忙。


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


加好友 发短信
等级:五尾狐 帖子:1187 积分:8266 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2015/12/14 18:14:00 [显示全部帖子]

这么说就明白了。
不明白的地方是afterload里面定义的sum1在datacolchange里面又不能用、是不是这个意思?

 回到顶部