Foxtable(狐表)用户栏目专家坐堂 → 一个登记状态列有借出与归还两个状态,怎么判断两个状态不平等时候,显示借出状态最后一行数据呢?


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

主题:一个登记状态列有借出与归还两个状态,怎么判断两个状态不平等时候,显示借出状态最后一行数据呢?

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
一个登记状态列有借出与归还两个状态,怎么判断两个状态不平等时候,显示借出状态最后一行数据呢?  发帖心情 Post By:2018/2/26 23:17:00 [只看该作者]

怎么实现一个使用记录表中 有一个编号列  一个登记状态列  一个录入时间列

 

当编号为1的时候  如果登记状态有“借出”“归还”两个状态的时候,判断为“0”  也就是不再显示当前编号为1的数据行

反之,如果登记状态只有“借出”状态的时候,或者有两个借出状态  但是只有一个归还状态的时候,必须显示当前编号为1的数据行,且显示录入时间为最后一个借出状态的数据行

 

怎么操作呢


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

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


加好友 发短信
等级:超级版主 帖子:110809 积分:563983 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/2/26 23:24:00 [只看该作者]

不能理解你的逻辑

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点蓝)不能理解你的逻辑  发帖心情 Post By:2018/2/27 1:21:00 [只看该作者]

当编号是一样的时候,登记状态如果有多个借出 多个归还   当借出等于归还的时候  该编号数据不要显示出来啦

如果当借出大于归还的时候,显示该编号最后一条借出数据


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


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

首先分组统计各个编号的借出数和归还数,然后得到相减的结果,显示出对应数据。

 

如果还需要在原表那里显示,就根据编号,把最后一行数据显示出来。


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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点甜)首先分组统计各个编号的借出数和归还...  发帖心情 Post By:2018/2/27 10:44:00 [只看该作者]

不得要领哦  分组统计中  无法对登记状态这个字符进行统计

 


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


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

以下是引用李孝春在2018/2/27 10:44:00的发言:

不得要领哦  分组统计中  无法对登记状态这个字符进行统计

 

 

哦,是交叉统计。得到统计数据,然后就可以对统计表筛选了。

 

如果要对原表筛选,就比较麻烦,要额外编写代码。


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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点甜)首先分组统计各个编号的借出数和归还...  发帖心情 Post By:2018/2/27 11:16:00 [只看该作者]

不得要领   例子在窗口管理里面的用户记录中  麻烦老师多多指导   密码默认888

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:求助.rar


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


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

参考代码

 

Dim g As New CrossTableBuilder("统计表1", DataTables("用户记录_Table1"))
g.HGroups.AddDef("名称")
g.HGroups.AddDef("案件编号")
g.HGroups.AddDef("编号")
g.HGroups.AddDef("序号")
g.HGroups.AddDef("数量")
g.HGroups.AddDef("承办人")
g.VGroups.AddDef("登记状态")
g.Totals.AddDef("案件编号", AggregateEnum.Count, "案件编号")
Dim t = e.form.controls("Table1").Table
t.datasource = g.BuildDataSource
't.filter = "案件编号_2 > 案件编号_1"


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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点甜)参考代码 Dim g As New Cro...  发帖心情 Post By:2018/2/27 12:32:00 [只看该作者]

有点甜老师  貌似我要的好像不是这样

这个表统计的是所有借出与归还

然后显示了案件编号

 

我想实现的是借出>归还  的数据  案件编号显示出来  且显示该案件编号最后一条借出记录数据


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


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

1、加上条件就行,如 t.filter = "案件编号_2 > 案件编号_1"

 

2、或者改成

 

Dim idxs As String = "-1,"
Dim t As Table = e.form.controls("Table1").Table
For Each bh As String In t.DataTable.getvalues("加密字符")
    Dim o As Integer = t.Compute("count(加密字符)", "加密字符 = '" & bh & "' and 登记状态 = '借出'")
    Dim i As Integer = t.Compute("count(加密字符)", "加密字符 = '" & bh & "' and 登记状态 = '归还'")
    If o >= i Then
        idxs &= t.DataTable.Find("加密字符 = '" & bh & "' and 登记状态 = '借出'", "_Identify desc")("_Identify") & ","
    End If
Next
t.filter = "_Identify in (" & idxs.trim(",") & ")"


 回到顶部