Foxtable(狐表)用户栏目专家坐堂 → 统计取值


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

主题:统计取值

帅哥,在线噢!
cd_tdh
  21楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3081 积分:20591 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2018/2/12 15:25:00 [只看该作者]

每一期都可能会开piao,所以开piao日期会不一样,是少数情况。

感觉这个逻辑有点走不通,我在想想还有没其他办法来处理。

 


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


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

以下是引用cd_tdh在2018/2/12 15:25:00的发言:

每一期都可能会开piao,所以开piao日期会不一样,是少数情况。

感觉这个逻辑有点走不通,我在想想还有没其他办法来处理。

 

 

比如,你第二期,要计算什么日期范围的数据?那同样是第二期,我修改了开piao日期,再统计,要统计什么数据?


 回到顶部
帅哥,在线噢!
cd_tdh
  23楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3081 积分:20591 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2018/2/12 15:58:00 [只看该作者]

开piao日期之前没有具体范围,之后就是开piao日期后一个月的15日前的。

Dim filter As String = "合同编码='" & dr("合同编码") & "' And 计量期数='" & dr("计量期数") & "'"    (不按期统计)

能否这样,第一期不存在,就是开piao日期后一个月15日之前的数据,第二期统计开piao日期后一个月15号之前的所有数据在减去第一期已经统计的数据,第三期统计开piao日期后一个月15日之前的所有数据在减去第一期和第二期已统计的数据,类推.......

[此贴子已经被作者于2018/2/12 16:11:01编辑过]

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


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

完全没看懂你的逻辑。

 

1、第一期的时候,设置开piao日期是1月10日,统计什么数据?第二期,设置开piao日期为2月25日,统计什么数据?统计完以后,第二期,再设置开piao日期是2月11日,统计什么数据?

 

2、直接说你要做到什么效果吧。之前没统计是什么意思?怎么算已经被统计?


 回到顶部
帅哥,在线噢!
cd_tdh
  25楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3081 积分:20591 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2018/2/12 17:20:00 [只看该作者]

以下是引用有点甜在2018/2/12 16:41:00的发言:

完全没看懂你的逻辑。

 

1、第一期的时候,设置开piao日期是1月10日,统计什么数据?第二期,设置开piao日期为2月25日,统计什么数据?统计完以后,第二期,再设置开piao日期是2月11日,统计什么数据?

 

2、直接说你要做到什么效果吧。之前没统计是什么意思?怎么算已经被统计?

老师,重新传了个示例

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:进项piao跨时段统计.table


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

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


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

看懂代码,细节自己调整。

 

Dim d As Date = e.Form.Controls("开piao日期").value
Dim dr As DataRow = Tables("工程款管理").current.DataRow
Dim d2 As Date = new Date(d.year, d.Month, 15)
d2 = d2.AddMonths(1)
Dim filter As String = "合同编码='" & dr("合同编码") & "' and 寄达日期 <= #" & d2 & "#"
Dim sum1 As Double = DataTables("进项piao审核").sqlCompute("sum(税额)", filter & " And 审核状态='财务部已审核' and 类别='专piao'")
Dim sum2 As Double = 0
For i As Integer = 1 To dr("计量期数")-1
    sum2 += val(dr.DataTable.datarows(i-1)("本期统计增值税"))
Next
msgbox(sum1)
msgbox(sum2)
dr("本期统计增值税")= sum1-sum2


 回到顶部
帅哥,在线噢!
cd_tdh
  27楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3081 积分:20591 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2018/2/14 11:55:00 [只看该作者]

老师,我在示例里面测试没问题,弄到我的项目里面这句代码执行了但报错,

    Dim sum1 As Double = DataTables("进项piao审核").sqlCompute("sum(税额)", filter1 & " and 审核状态='财务部已审核' and 类别='专piao'")

 

 

.NET Framework 版本:2.0.50727.8762
Foxtable 版本:2017.12.31.1
错误所在事件:
详细错误信息:
从 varchar 数据类型到 datetime 数据类型的转换产生一个超出范围的值。

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


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

Sqlserver数据库改为单引号

Dim filter As String = "合同编码='" & dr("合同编码") & "' and 寄达日期 <= '" & d2 & "'"

 回到顶部
帅哥,在线噢!
cd_tdh
  29楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3081 积分:20591 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2018/2/14 12:05:00 [只看该作者]

以下是引用有点蓝在2018/2/14 12:00:00的发言:
Sqlserver数据库改为单引号

Dim filter As String = "合同编码='" & dr("合同编码") & "' and 寄达日期 <= '" & d2 & "'"

这个我改了,调试是后面一句报错的

 


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


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

msgbox(filter1 & " and 审核状态='财务部已审核' and 类别='专piao'")看看完整条件是什么样的

 回到顶部
总数 35 上一页 1 2 3 4 下一页