以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  想不明白二三月份都可计算出来就是一月份不行  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=148855)

--  作者:zhuxinhui
--  发布时间:2020/4/16 16:46:00
--  想不明白二三月份都可计算出来就是一月份不行

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

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20200416163457.png
图片点击可在新窗口打开查看
工资计算系统社保计算出问题了,二三月份都可以计算出来的,就是一月份不能,查了半天也不知是什么原因

--  作者:zhuxinhui
--  发布时间:2020/4/16 16:47:00
--  
这个公式哪里出问题了
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20200416163925.png
图片点击可在新窗口打开查看

--  作者:zhuxinhui
--  发布时间:2020/4/16 16:48:00
--  
很怪的问题,二三月份打后都可以计算出来,就是一月份不行,我已把BIN文件删除重新打开也不行,把公式删了重设也不行
--  作者:有点蓝
--  发布时间:2020/4/16 17:05:00
--  
条件搞反了吧:

执行日期 >= 开始日期 and 停止日期 <= 结束日期

--  作者:有点蓝
--  发布时间:2020/4/16 17:06:00
--  
或者是不是统一一个日期啊,2个日期感觉有点不合理

停止日期 >= 开始日期 and 停止日期 <= 结束日期

--  作者:zhuxinhui
--  发布时间:2020/4/16 17:13:00
--  
dr1("社保") = DataTables("社保").Compute("Sum(个人缴纳)","[工号] =\'" & dr1("工号") & "\'and 执行日期 <= #" & dr1("开始日期") & "# And 停止日期 >= #" & dr1("结束日期") & "#")
执行日期小于或等于开始日期,停止日期大于或等于结束日期
如果:执行日期 >= 开始日期 and 停止日期 <= 结束日期,这样就是执行日期大于开始日期和停止日期小于结束日期,感觉有些不对劲

--  作者:有点蓝
--  发布时间:2020/4/16 17:21:00
--  
我不理解您的业务。情使用文字描述一下具体逻辑是怎么样的,要做什么条件判断?

以1楼数据为例,执行日期>=2020-1-1的数据只有最后2行,2020-2-1和2020-3-1两个日期的数据,但是这2行数据的停止日期都是大于结束日期2020-1-31的,所以不符合条件,也就是没有符合条件的数据。

是不是应该是:停止日期 >= 开始日期 and 停止日期 <= 结束日期?

--  作者:zhuxinhui
--  发布时间:2020/4/16 17:30:00
--  
工资计算时扣回个人承担部份社保业务:假如从2019-01-01起至2020-01-31止,就是执行日期从2019-01-01至停止日期2020-01-31日每个月个人承担的社保费用都是318.42元,在计算这段期间的工资时就进行计算扣除,所以执行日期应该小于等于2楼计算窗口选定的开始日期,同时停止日期要小于2楼的结束日期
--  作者:zhuxinhui
--  发布时间:2020/4/16 17:31:00
--  
这个之前也是相同的公式是可以计算,但是今日调整过其他表后就计算一月时就不行了,计算其他月份是可以的,因这个涉及公司资料不方便上传,可以远程下吗?
--  作者:有点蓝
--  发布时间:2020/4/16 17:55:00
--  
新建项目,导入表数据,把人名改为张三李四,然后发上来测试。

试试
dr1("社保") = DataTables("社保").Compute("Sum(个人缴纳)","[工号] =\'" & dr1("工号") & "\'and 执行日期 >= #" & dr1("开始日期") & "# And 执行日期 <= #" & dr1("结束日期") & "# and 停止日期 <= #" & dr1("结束日期") & "#")