Foxtable(狐表)用户栏目专家坐堂 → 操作时间为充值的当天,并且是最大值


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

主题:操作时间为充值的当天,并且是最大值

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


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
操作时间为充值的当天,并且是最大值  发帖心情 Post By:2016/3/1 15:12:00 [显示全部帖子]

遇到一个问题搞半天没弄成。。。求助。。。

如图:


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

这是后台的一个sql视图,想统计各个店员经办的会员充值当天的余额,充值金额-消费金额,有可能当天没有消费,那就是当天的充值金额

 

我是这样想的:先找出这些行,然后统计:

Dim dt As DataTable
cm d.Comman dText = "SELEC T 操作时间,经办店员,余额 * '" & tcbl & "' As 储值提成 From {储值卡操作记录} where " & filter & " and 操作时间 = "          '//tcbl  是设定的一个  提成比率 打黄色的是想说 操作时间 的充值时间 的当天,并且是最大值(这样就知道充值当天之后的余额)。。不知道可不可行,也不知道怎么写。。
dt = cmd.ExecuteReader()

Dim b As New GroupTableBuilder("统计表1",dt)
b.Groups.AddDef("操作时间",DateGroupEnum.Year,"年") '添加日期列用于分组,并用"年"代替原名称
b.Groups.AddDef("操作时间","月") '添加日期列用于分组,并用"月"代替原名称
b.Groups.AddDef("经办人") '根据产品分组
b.Totals.AddDef("储值提成","","提成收入_值")


 


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


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2016/3/1 15:14:00 [显示全部帖子]

表里打黄色的就是要找出来的行,然后进行统计。。。

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


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2016/3/1 15:27:00 [显示全部帖子]

余额已经算出来了,那个表就是计算好了之后的sql视图。现在的具体问题就是想找到这些行。。。

现在是这样:

Dim dt As DataTable
cm d.Comman dText = "SELEC T 操作时间,经办店员,余额  From {储值卡操作记录}  "
这是找到所有的余额的行。

但想实现的找到表中打黄色的行。

也就是每个充值当天的,而不是所有的。

大红袍老师,上传实例有点麻烦,你看我这样描述可以吗?如果不行,我就上传实例。。。


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


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2016/3/1 16:36:00 [显示全部帖子]

哦,我试了:

Dim dt As DataTable
cmd.CommandText = "SELEC T 操作时间,经办门店,经办人,余额,余额 * '" & tcbl & "' As 储值提成 From {储值卡操作记录} where " & filter & ""
dt = cmd.ExecuteReader()

 

Dim b As New GroupTableBuilder("统计表1",dt)
b.Groups.AddDef("操作时间",DateGroupEnum.Year,"年") '添加日期列用于分组,并用"年"代替原名称
b.Groups.AddDef("操作时间","月") '添加日期列用于分组,并用"月"代替原名称
b.Groups.AddDef("操作时间",DateGroupEnum.day,"日") '添加日期列用于分组,并用"月"代替原名称
b.Groups.AddDef("经办店员") '根据产品分组
b.Totals.AddDef("操作时间",AggregateEnum.Max,"充值当天最后操作时间") ‘这一句报错

报错:

从类型“Date”到类型“Decimal”的转换无效。

要怎么改呢。。。


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


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2016/3/1 16:50:00 [显示全部帖子]

哦,大红袍老师,这不知道又是什么原因。。。


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

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


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2016/3/1 16:57:00 [显示全部帖子]

解决。直接改为: Dim b As New sqlGroupTableBuilder("统计表1","储值卡操作记录") 

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


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2016/3/1 17:50:00 [显示全部帖子]

大红袍老师,已经按日分组,并且操作时间的最大值。那在统计余额的时候应该是时间最大值的那个余额,可是还是结果还是统计今天的余额的总和。这是为什么呢?难道时间最大值没有起作用??

Dim b As New sqlGroupTableBuilder("统计表1","储值卡操作记录") 
b.C
b.filter = filter
b.Groups.AddDef("操作时间",DateGroupEnum.Year,"年") '添加日期列用于分组,并用"年"代替原名称
b.Groups.AddDef("操作时间","月") '添加日期列用于分组,并用"月"代替原名称
b.Groups.AddDef("操作时间",DateGroupEnum.day,"日") '添加日期列用于分组,并用"月"代替原名称
b.Groups.AddDef("经办人") '根据产品分组
b.Totals.AddDef("操作时间",AggregateEnum.Max,"充值当天最后操作时间")
b.Totals.AddExp("余额","余额 * '" & tcbl & "'")

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


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


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2016/3/1 18:52:00 [显示全部帖子]

哦,原来可以用表达式做分组列:

b.Groups.AddExp("操作时间","Max(操作时间)")

但是这样也报错,说分组列不能用聚合函数,那么当天的最大值要怎么写呢。。。。


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


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2016/3/2 9:52:00 [显示全部帖子]

恩恩。我现在试着弄 统计充值。。遇到这个长日期的问题。。 


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

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


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2016/3/2 9:55:00 [显示全部帖子]

GROUP BY
dbo.StoredCard.fchrCustomerName ,
dbo.StoredCard.fchrCustomerPhone,
dbo.StoredCard.fchrCustomerCode ,
dbo.StoredCard.fchrStoredCardCode ,
dbo.StoredCardRecordcz.[充值时间],
dbo.StoredCardRecordcz.[经办门店] ,
dbo.StoredCardRecordcz.[经办人]

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