| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2058 人关注过本帖
标题:还是统计相关问题
只看楼主 加入收藏
Kerberos
Rank: 5Rank: 5
来 自:江苏扬州
等 级:职业侠客
帖 子:227
专家分:355
注 册:2012-9-11
收藏
得分:0 
回复 10楼 wjp456789
非常感谢!

想学好VFP,想做VFP高手,想帮助更多的人解决VFP问题!
2012-11-14 16:39
Kerberos
Rank: 5Rank: 5
来 自:江苏扬州
等 级:职业侠客
帖 子:227
专家分:355
注 册:2012-9-11
收藏
得分:0 
现在的问题就是如何将月份跟年份转换了一起进行计算,坐等各位大神结果。。。

想学好VFP,想做VFP高手,想帮助更多的人解决VFP问题!
2012-11-14 17:10
月沐庭轩
Rank: 9Rank: 9Rank: 9
来 自:京城
等 级:贵宾
威 望:17
帖 子:393
专家分:1106
注 册:2011-7-24
收藏
得分:0 
工龄的计算方法 ,貌似是:当前年份-参加工作的年份+1,我当过会计和政工科人员,报送报表时都是这样计算的,不知道楼主所在地方的政策是不是跟我们一致?也不用年月-年月-1,参加工作一天,就算工龄一年了。

坚持学习vfp,QQ:306805680
2012-11-14 17:36
月沐庭轩
Rank: 9Rank: 9Rank: 9
来 自:京城
等 级:贵宾
威 望:17
帖 子:393
专家分:1106
注 册:2011-7-24
收藏
得分:0 
回复 13楼 月沐庭轩
说错了呀,楼主后来的方法是正确的,我刚百度了下职工带薪年休假条例。对不起哈!

坚持学习vfp,QQ:306805680
2012-11-14 17:42
月沐庭轩
Rank: 9Rank: 9Rank: 9
来 自:京城
等 级:贵宾
威 望:17
帖 子:393
专家分:1106
注 册:2011-7-24
收藏
得分:0 
以下是引用Kerberos在2012-11-14 16:39:00的发言:

非常感谢!

工作年限=CEILING(((当前年*12+当前月)-(参加工作年*12+参加工作月))/12)-1
这样对吗?

[ 本帖最后由 月沐庭轩 于 2012-11-14 18:49 编辑 ]

坚持学习vfp,QQ:306805680
2012-11-14 17:58
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:2 
以下是引用wjp456789在2012-11-14 15:44:35的发言:

SELECT 工号,姓名,部门名称,工作时间,进厂时间,岗位名称,;
     INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1) as 工作年限,;
     IIF(INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)>=1 AND INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)<10,5.00,;
     IIF(INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)>=10 AND INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)<20,10.00,;
     IIF(INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)>=20,15.00,0))) as 年休假天数,;
    上年未休,一月,二月,三月,四月,五月,六月,七月,八月,九月,十月,十一月,十二月,;
    VAL(上年未休+年休假天数) as 本年应休,;
    VAL(一月)+VAL(二月)+VAL(三月)+VAL(四月)+VAL(五月)+VAL(六月)+VAL(七月)+VAL(八月)+VAL(九月)+VAL(十月)+VAL(十一月)+VAL(十二月) as 合计,;
    VAL(本年应休-合计) as 年休假剩余 FROM 年休假汇总表 INTO CURSOR lsb
BROWSE

这是你最开始的算法。中部有些条件没写对,比如年休假天数。
还有部分没实现有的功能,算出来的数据不对。你自己琢磨一下。我也没弄出来
先把求解思路发给你。
在你的基础上加了一下
程序代码:
SELECT 工号,姓名,部门名称,工作时间,进厂时间,岗位名称,;
     INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1) as 工作年限,;
     IIF(INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)>=1 AND INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)<10,5.00,;
     IIF(INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)>=10 AND INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)<20,10.00,;
     IIF(INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)>=20,15.00,0))) as 年休假天数,;
    上年未休,一月,二月,三月,四月,五月,六月,七月,八月,九月,十月,十一月,十二月,;
    roun(VAL(上年未休),1)+roun(val(年休假天数),1) as 本年应休,;
    VAL(一月)+VAL(二月)+VAL(三月)+VAL(四月)+VAL(五月)+VAL(六月)+VAL(七月)+VAL(八月)+VAL(九月)+VAL(十月)+VAL(十一月)+VAL(十二月) as 合计,;
    roun(VAL(上年未休),1)+roun(val(年休假天数),1)-roun(VAL(一月)+VAL(二月)+VAL(三月)+VAL(四月)+VAL(五月)+VAL(六月)+VAL(七月)+VAL(八月)+VAL(九月)+VAL(十月)+VAL(十一月)+VAL(十二月),1) as 年休假剩余 FROM 年休假汇总表 INTO CURSOR lsb
BROWSE

2012-11-14 18:06
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册
2012-11-14 18:11
wjp456789
Rank: 5Rank: 5
来 自:四川成都
等 级:职业侠客
威 望:1
帖 子:345
专家分:330
注 册:2012-6-25
收藏
得分:0 
结果还是不正确。
本年应休没有计算正确。
相应的年休假剩余也是错误的

我是来向高手学习的!
2012-11-14 18:38
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:5 
以下是引用wjp456789在2012-11-14 18:38:15的发言:

结果还是不正确。
本年应休没有计算正确。
相应的年休假剩余也是错误的
程序代码:
SELECT 工号,姓名,部门名称,工作时间,进厂时间,岗位名称,;
     INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1) as 工作年限,;
     IIF(INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)>=1 AND INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)<10,5.00,;
     IIF(INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)>=10 AND INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)<20,10.00,;
     IIF(INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)>=20,15.00,0))) as 年休假天数,;
    上年未休,一月,二月,三月,四月,五月,六月,七月,八月,九月,十月,十一月,十二月,;
    roun(VAL(allt(上年未休)),1)+int(IIF(INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)>=1 AND INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)<10,5.00,;
     IIF(INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)>=10 AND INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)<20,10.00,;
     IIF(INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)>=20,15.00,0)))) as 本年应休,;
    VAL(一月)+VAL(二月)+VAL(三月)+VAL(四月)+VAL(五月)+VAL(六月)+VAL(七月)+VAL(八月)+VAL(九月)+VAL(十月)+VAL(十一月)+VAL(十二月) as 合计,;
    roun(VAL(上年未休),1)+roun(IIF(INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)>=1 AND INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)<10,5.00,;
     IIF(INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)>=10 AND INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)<20,10.00,;
     IIF(INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1)>=20,15.00,0))),1)-roun(VAL(一月)+VAL(二月)+VAL(三月)+VAL(四月)+VAL(五月)+VAL(六月)+VAL(七月)+VAL(八月)+VAL(九月)+VAL(十月)+VAL(十一月)+VAL(十二月),1) as 年休假剩余 FROM 年休假汇总表 INTO CURSOR lsb
BROWSE
图片附件: 游客没有浏览图片的权限,请 登录注册


是这样吧
收到的鲜花
2012-11-14 19:07
wjp456789
Rank: 5Rank: 5
来 自:四川成都
等 级:职业侠客
威 望:1
帖 子:345
专家分:330
注 册:2012-6-25
收藏
得分:0 
嗯。对了。。。
看起很长
其实我想用repl 语句更新需要统计的字段。不过没有成功。。。。

我是来向高手学习的!
2012-11-14 19:13
快速回复:还是统计相关问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020862 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved