Foxtable(狐表)用户栏目专家坐堂 → 怎么更人性化的取值


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

主题:怎么更人性化的取值

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


加好友 发短信
等级:九尾狐 帖子:2707 积分:18056 威望:0 精华:0 注册:2013/4/9 10:41:00
怎么更人性化的取值  发帖心情 Post By:2013/10/9 15:17:00 [只看该作者]

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


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20131009151533.png
图片点击可在新窗口打开查看
 
事件代码:Select Case e.DataCol.Name
    Case "附表编号列","合格数量","结账数量"
        Dim drs As List(of DataRow)
        Dim Filter As String
        Filter = "[_SortKey] >= " & e.DataRow("_SortKey") & " And [附表编号列] = '" & e.DataRow("附表编号列") & "'"
        drs = e.DataTable.Select(Filter)
        For Each dr As DataRow In drs
            Filter = "[_SortKey] <= " & dr("_SortKey") & " And [附表编号列] = '" & dr("附表编号列") & "'"
            Dim Val1 As Double = e.DataTable.Compute("Sum(合格数量)",Filter)
            Dim Val2 As Double = e.DataTable.Compute("Sum(结账数量)",Filter)
            dr("未结数量") = Val1 - Val2
        Next
        If e.DataCol.Name = "附表编号列" AndAlso e.OldValue IsNot Nothing AndAlso e.OldValue <> e.NewValue Then
            Filter = "[_SortKey] > " & e.DataRow("_SortKey") & " And [附表编号列] = '" & e.OldValue & "'"
            drs = e.DataTable.Select(Filter)
            For Each dr As DataRow In drs
                Filter = "[_SortKey] <= " & dr("_SortKey") & " And [附表编号列] = '" & dr("附表编号列") & "'"
                Dim Val1 As Double = e.DataTable.Compute("Sum(合格数量)",Filter)
                Dim Val2 As Double = e.DataTable.Compute("Sum(结账数量)",Filter)
                dr("未结数量") = Val1 - Val2
            Next
        End If
End Select
For Each r As Row In Tables("表A").Rows
    If r("未结数量") = r("合格数量") Then
        r("结账情况")="未结账"
    ElseIf r("未结数量") < r("合格数量") And  r("未结数量")>0 Then
        r("结账情况")="结账中"
ElseIf r("未结数量")=0
        r("结账情况")="已结账"
    End If
Next


但是这个功能只能在第一排实现 有没办法拍都实现  未结数量在不同阶段时 结账情况就跟着发生变化

[此贴子已经被作者于2013-10-9 15:33:31编辑过]

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


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

大哥,你这个问题也太抽象了吧.  有具体的问题,才有具体的解答呀.

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


加好友 发短信
等级:九尾狐 帖子:2707 积分:18056 威望:0 精华:0 注册:2013/4/9 10:41:00
  发帖心情 Post By:2013/10/9 15:23:00 [只看该作者]

不好意思 兄弟 又是你在帮我!感谢感谢 !

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


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

半天没理清楚你想做什么,你看看是否符合你要求吧

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



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


加好友 发短信
等级:九尾狐 帖子:2707 积分:18056 威望:0 精华:0 注册:2013/4/9 10:41:00
  发帖心情 Post By:2013/10/9 15:51:00 [只看该作者]

感谢兄弟! 是这样的 我语言交流不是很好 感谢你很赖心!
  发的那个文件相信你也看了,他的功能是个流水账   合格数量-结帐数量=未结数量  
后面还有一个设置就是 当未接数量=合格数量,结账情况显示 未结账
                             当未接数量小于合格数量切等于0  结账情况显示 结账中
                             当未接数量=0的时候显示  已结账
但是这个功能只能在第一行体现  后面的几行就失去了这个功能  
我想怎么让后面的几行也有这个功能  
 兄弟 谢谢你怎么赖心 我的QQ294068455  如果不方便我也可以加你 感谢不进
[此贴子已经被作者于2013-10-9 15:55:49编辑过]

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


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

你在你原来的基础下,加上我这个代码吧,就OK了.

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


加好友 发短信
等级:九尾狐 帖子:2707 积分:18056 威望:0 精华:0 注册:2013/4/9 10:41:00
  发帖心情 Post By:2013/10/9 16:14:00 [只看该作者]

感谢 座等哦 兄弟

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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/10/9 16:16:00 [只看该作者]

楼主的流水账,应该参照区分产品的

照葫芦画瓢,不需要自己发挥。

然后参照Bin的代码。


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


加好友 发短信
等级:九尾狐 帖子:2707 积分:18056 威望:0 精华:0 注册:2013/4/9 10:41:00
  发帖心情 Post By:2013/10/9 16:21:00 [只看该作者]

 对 流水账  但是二排的结账情况为什么不是和第一排的一样呢? 兄弟 帮看看 


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


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

 流水账代码,在加上下面的代码就行了。

Dim max As Double = DataTables("表A").Compute("max(合格数量)", "附表编号列='" & e.DataRow("附表编号列") & "'")
For Each r As DataRow In DataTables("表A").Select("附表编号列='" & e.DataRow("附表编号列") & "'")
    If r("未结数量")=0 Then
        r("结账情况")="已结账"
    ElseIf r("未结数量") < max AndAlso r("未结数量")> 0  Then
        r("结账情况")="结账中"
    ElseIf r("未结数量") = max Then
        r("结账情况")="未结账"
    End If
Next

 回到顶部