Foxtable(狐表)用户栏目专家坐堂 → 流水账的筛选问题


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

主题:流水账的筛选问题

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


加好友 发短信
等级:幼狐 帖子:76 积分:735 威望:0 精华:0 注册:2020/12/20 14:02:00
流水账的筛选问题  发帖心情 Post By:2020/12/20 14:35:00 [只看该作者]

老师,您好

请教一下,如何将流水账中每一个账户的最后记录筛选出来,也就是将每一个账户当前余额的所在行筛选出来,我要将筛选的结果体现在一个窗口附表中,您受累给指导下,谢谢您

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


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

表数据截图说明一下。根据什么区分是最后的余额?
[此贴子已经被作者于2020/12/20 20:55:05编辑过]

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


加好友 发短信
等级:幼狐 帖子:76 积分:735 威望:0 精华:0 注册:2020/12/20 14:02:00
  发帖心情 Post By:2020/12/21 10:13:00 [只看该作者]

老师,您好,感谢您的回复,我的具体情况如下:

有一个表,该表也是仓库的流水账,结构为:存货名称;入库数量;入库金额;出库数量;出库金额;结存数量;结存金额

我已经按照贵处对流水账的帮助信息,设置了分别针对每个不同的“存货名称”分别计算库存数量及库存金额的表事件,我的需求是想通过筛选该【仓库流水账】的不同存货明细的最后一行,调取每种存货的库存情况

烦劳老师给指导一下,我是一个新手,您受累指点指点

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


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

怎么区分哪一行是不同存货明细的最后一行?代码是怎么计算流水账的?排序使用的是_sortkey还是_Identify?

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


加好友 发短信
等级:幼狐 帖子:76 积分:735 威望:0 精华:0 注册:2020/12/20 14:02:00
  发帖心情 Post By:2020/12/21 10:27:00 [只看该作者]

老师,以下是分别计算余额的代码,您看下


Select Case e.DataCol.Name '实现按照不同账号分别计算余额功能
    Case "存货三级明细","入库数量","出库数量","日期"
        If e.OldValue <> e.NewValue Then
            Dim dr As DataRow
            Dim mr As DataRow = e.DataRow
            Dim drs As List(of DataRow)
            dr = e.DataTable.Find("[_SortKey] < " & mr("_SortKey") & " And [索引标识] = '" & mr("索引标识") & "'", "[_SortKey] Desc")
            If dr Is Nothing Then
                mr("库存数量") = mr("入库数量") - mr("出库数量")
                dr = mr
            End If
            drs = e.DataTable.Select("[_SortKey] >= " & dr("_SortKey") & " And [索引标识] = '" & dr("索引标识") & "'", "[_SortKey]")
            For i As Integer = 1 To drs.Count - 1
                drs(i)("库存数量") = drs(i-1)("库存数量") + drs(i)("入库数量") - drs(i)("出库数量")
            Next
            If e.DataCol.Name = "索引标识" AndAlso e.OldValue IsNot Nothing AndAlso e.OldValue <> e.NewValue Then
                dr = e.DataTable.Find("[_SortKey] < " & mr("_SortKey") & " And [索引标识] = '" & e.OldValue & "'", "[_SortKey] Desc")
                If dr Is Nothing Then
                    dr = e.DataTable.Find("[索引标识] = '" & e.OldValue & "'", "[_SortKey]")
                    If dr IsNot Nothing Then
                        dr("库存数量") = dr("入库数量") - dr("出库数量")
                    End If
                End If
                If dr IsNot Nothing Then
                    drs = e.DataTable.Select("[_SortKey] >= " & dr("_SortKey") & " And [索引标识] = '" & dr("索引标识") & "'", "[_SortKey]")
                    For i As Integer = 1 To drs.Count - 1
                        drs(i)("库存数量") = drs(i-1)("库存数量") + drs(i)("入库数量") - drs(i)("出库数量")
                    Next
                End If
            End If
        End If
End Select


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


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

要使用sql获取

sel
ect a.* from {表A} as a  inner join (select 索引标识,max([_SortKey]) from {表A} group by 索引标识) as b on a.索引标识=b.索引标识 where a.[_SortKey]=b.[_SortKey]

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


加好友 发短信
等级:幼狐 帖子:76 积分:735 威望:0 精华:0 注册:2020/12/20 14:02:00
  发帖心情 Post By:2020/12/21 11:12:00 [只看该作者]

谢谢老师,我先看看,有不明白的再请教您

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


加好友 发短信
等级:幼狐 帖子:76 积分:735 威望:0 精华:0 注册:2020/12/20 14:02:00
  发帖心情 Post By:2020/12/21 13:40:00 [只看该作者]

老师

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


加好友 发短信
等级:幼狐 帖子:76 积分:735 威望:0 精华:0 注册:2020/12/20 14:02:00
  发帖心情 Post By:2020/12/21 16:01:00 [只看该作者]



Select a.
索引标识,a.库存数量,a.单价,a.库存金额 Fro m {仓库} a INNER JOIN (Select 索引标识,Max(行标识) As 行标识 Fro m {仓库} Group By 索引标识) b on a.索引标识 = b.索引标识 And a.行标识 = b.行标识 Order By a.索引标识

1- 老师帮我看看上边的代码哪里有问题
2- 另外,老师,我想把筛选的内容体现在窗口的附表中,该如何操作

我是一个新手,因此问题可能有些幼稚,您多见谅

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


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

1、没有问题,应该告诉我们的是执行后有什么问题?


 回到顶部
总数 11 1 2 下一页