Foxtable(狐表)用户栏目专家坐堂 → 请帮助看一下,为何只统计开始日期的一个月的数值?


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

主题:请帮助看一下,为何只统计开始日期的一个月的数值?

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


加好友 发短信
等级:六尾狐 帖子:1290 积分:9826 威望:0 精华:0 注册:2012/9/19 21:13:00
请帮助看一下,为何只统计开始日期的一个月的数值?  发帖心情 Post By:2013/2/23 14:02:00 [只看该作者]

请帮助看一下,为何只统计开始日期的一个月的数值?

 


此主题相关图片如下:21.jpg
按此在新窗口浏览图片

 

代码

Dim g As New sqlGroupTableBuilder("统计表1","坯布输入")
g.C
Dim dt1 As fxDataSource
g.Filter = " 日期 >= #" & e.Form.Controls("DateTimePicker22").Value & "# And 日期 <= #" & e.Form.Controls("DateTimePicker23").Value & "# And 双面= false"
g.Groups.AddDef("年")
g.Groups.AddDef("月")
g.Totals.AddDef("总长","单面_长度")
g.Totals.AddDef("织造车间扣分","单面_实际扣分")
g.Decimals = 2
g.FromServer = True
dt1 = g.BuildDataSource()

Dim g1 As New sqlGroupTableBuilder("统计表2","坯布输入")
g1.C
Dim dt2 As fxDataSource
g1.Filter = " 日期 >= #" & e.Form.Controls("DateTimePicker22").Value & "# And 日期 <= #" & e.Form.Controls("DateTimePicker23").Value & "# And 双面= True"
g1.Groups.AddDef("年")
g1.Groups.AddDef("月")
g1.Totals.AddDef("总长","双面_长度")
g1.Totals.AddDef("织造车间扣分","双面_实际扣分")
g1.Decimals = 2
g1.FromServer = True
dt2 = g1.BuildDataSource()

Dim g2 As New sqlGroupTableBuilder("统计表3","坯布输入")
g2.C
Dim dt3 As fxDataSource
g2.Filter = " 日期 >= #" & e.Form.Controls("DateTimePicker22").Value & "# And 日期 <= #" & e.Form.Controls("DateTimePicker23").Value & "#"
g2.Groups.AddDef("年")
g2.Groups.AddDef("月")
g2.Totals.AddDef("总长")
g2.Totals.AddDef("织造车间扣分")
g2.Decimals = 2
g2.FromServer = True
dt3 = g2.BuildDataSource()


Dim nms As String() = { "年","月"} '指定连接列
dt1.Combine(nms,dt2,nms)
dt1.Combine(nms,dt3,nms) 
Tables("导航_Table14").DataSource = dt1 '将统计结果绑定到Tabl
                   
With DataTables("导航_Table14").DataCols 
    .Add("单面_理论扣分",Gettype(Double))
    .Add("双面_理论扣分",Gettype(Double))
    .Add("单面_奖罚",Gettype(Double))
    .Add("双面_奖罚",Gettype(Double))
End With

 

              Dim r As Row = Tables("导航_Table14").Current                             
               Dim txt As WinForm.TextBox = e.Form.Controls("TextBox21")   '单面扣分标准
                  r("单面_理论扣分")  = r("单面_长度") * txt.Text
               Dim txt1 As WinForm.TextBox = e.Form.Controls("TextBox22")  '双面扣分标准

                  r("双面_理论扣分")  = r("双面_长度") * txt1.Text
               Dim txt2 As WinForm.TextBox = e.Form.Controls("TextBox23")  '扣分标准单价

                  r("单面_奖罚")  = (r("单面_理论扣分") - r("单面_实际扣分"))* txt2.Text
                  r("双面_奖罚")  = (r("双面_理论扣分") - r("双面_实际扣分"))* txt2.Text

[此贴子已经被作者于2013-2-23 14:06:11编辑过]

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2013/2/23 14:23:00 [只看该作者]

 是不是你12月份没有数据啊?

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


加好友 发短信
等级:六尾狐 帖子:1290 积分:9826 威望:0 精华:0 注册:2012/9/19 21:13:00
  发帖心情 Post By:2013/2/23 19:29:00 [只看该作者]

有数据,因为2012-12-23——2013-01-22为1月份,2013-01-23——2013-02-22为2月份,

 

表中统计数据是正确的,第一行1月份,根据输入的数值计算了,第二行2月没有根据输入的数值计算。

[此贴子已经被作者于2013-2-23 19:31:43编辑过]

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


加好友 发短信
等级:婴狐 帖子:89 积分:535 威望:0 精华:0 注册:2013/2/23 20:06:00
  发帖心情 Post By:2013/2/23 20:17:00 [只看该作者]

能不能有个例子传上来测试啊?


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


加好友 发短信
等级:六尾狐 帖子:1290 积分:9826 威望:0 精华:0 注册:2012/9/19 21:13:00
  发帖心情 Post By:2013/2/24 0:22:00 [只看该作者]

上传附件测试

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


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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2013/2/25 12:39:00 [只看该作者]

是否是你的数据没有保存?你的这个是统计后台数据库的。

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


加好友 发短信
等级:六尾狐 帖子:1290 积分:9826 威望:0 精华:0 注册:2012/9/19 21:13:00
  发帖心情 Post By:2013/2/25 13:11:00 [只看该作者]

数据全部保存,前台表和数据库是一样的数据,为什么只统计开始日期的一个月,后面个月份就不统计,数据全在后台,上面发的例子改到前台表,统计结果也都是一样的。


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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2013/2/25 13:57:00 [只看该作者]

 你说的是这段代码没有执行吧?

               Dim r As Row = Tables("导航_Table14").Current                             
               Dim txt As WinForm.TextBox = e.Form.Controls("TextBox21")   '单面扣分标准
                  r("单面_理论扣分")  = r("单面_长度") * txt.Text
               Dim txt1 As WinForm.TextBox = e.Form.Controls("TextBox22")  '双面扣分标准

                  r("双面_理论扣分")  = r("双面_长度") * txt1.Text
               Dim txt2 As WinForm.TextBox = e.Form.Controls("TextBox23")  '扣分标准单价

                  r("单面_奖罚")  = (r("单面_理论扣分") - r("单面_实际扣分"))* txt2.Text
                  r("双面_奖罚")  = (r("双面_理论扣分") - r("双面_实际扣分"))* txt2.Text


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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2013/2/25 13:58:00 [只看该作者]

 改一下。

For Each r As Row In Tables("导航_Table14").Rows
    Dim txt As WinForm.TextBox = e.Form.Controls("TextBox21")   '单面扣分标准
    r("单面_理论扣分")  = r("单面_长度") * txt.Text
    Dim txt1 As WinForm.TextBox = e.Form.Controls("TextBox22")  '双面扣分标准
   
    r("双面_理论扣分")  = r("双面_长度") * txt1.Text
    Dim txt2 As WinForm.TextBox = e.Form.Controls("TextBox23")  '扣分标准单价
   
    r("单面_奖罚")  = (r("单面_理论扣分") - r("单面_实际扣分"))* txt2.Text
    r("双面_奖罚")  = (r("双面_理论扣分") - r("双面_实际扣分"))* txt2.Text
Next
[此贴子已经被作者于2013-2-25 13:58:29编辑过]

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


加好友 发短信
等级:六尾狐 帖子:1290 积分:9826 威望:0 精华:0 注册:2012/9/19 21:13:00
  发帖心情 Post By:2013/2/26 18:19:00 [只看该作者]

非常谢谢,可以了

 回到顶部