| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2058 人关注过本帖
标题:还是统计相关问题
只看楼主 加入收藏
Kerberos
Rank: 5Rank: 5
来 自:江苏扬州
等 级:职业侠客
帖 子:227
专家分:355
注 册:2012-9-11
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:41 
还是统计相关问题
年休假汇总表.rar (7.66 KB)

数据表中“工作年限”“年休假天数”“本年应休”“合计”“年休假剩余”是需要计算的,计算方法如下:
1、工作年限=当年年份-工作时间(年份)-1
2、员工工作年限已满1年不满10年的,年休假5天;已满10年不满20年的,年休假10天;已满20年的,年休假15天。
   注意:年休假天数要根据月份算,举个例子吧:假设某人2000年8月入职工作,在2001年的10月统计年休假天数,那么他的年休假天数为5+5*(2/12)
3、本年应休天数=年休假天数+上年未休天数
4、合计=一月至十二月休假天数的和
5、年休假剩余=本年应休-合计
拜托各位大神了。。。。
搜索更多相关主题的帖子: 工作 计算方法 数据表 
2012-11-14 11:17
wjp456789
Rank: 5Rank: 5
来 自:四川成都
等 级:职业侠客
威 望:1
帖 子:345
专家分:330
注 册:2012-6-25
收藏
得分:0 
工作年限:
SELECT 工号,姓名,INT(YEAR(DATE())-VAL(SUBSTR(工作时间,1,4))-1) as 工作年限 FROM 年休假汇总表
其他的你把条件加进去吧

我是来向高手学习的!
2012-11-14 12:06
bccn201203
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:680
专家分:1140
注 册:2012-3-14
收藏
得分:2 
1、工作年限=当年年份-工作时间(年份)-1

假如张三是2011年10月份参加工作的,到2012年11月30日,如果按照楼主的公式计算,张三工作年限为[0],因此,楼主的公式是没有科学性,看样子,楼主比半夜鸡叫的土财主还要狠。
2012-11-14 13:24
ilikeflash
Rank: 3Rank: 3
等 级:论坛游侠
威 望:3
帖 子:148
专家分:186
注 册:2011-4-6
收藏
得分:0 
用当前年份减参加工作年份不就成。或者直接用当前年份减工作时间:YEAR(DATE())-5

[ 本帖最后由 ilikeflash 于 2012-11-14 13:33 编辑 ]
2012-11-14 13:31
bccn201203
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:680
专家分:1140
注 册:2012-3-14
收藏
得分:0 
2、员工工作年限已满1年不满10年的,年休假5天;已满10年不满20年的,年休假10天;已满20年的,年休假15天。
   注意:年休假天数要根据月份算,举个例子吧:假设某人2000年8月入职工作,在2001年的10月统计年休假天数,那么他的年休假天数为5+5*(2/12)
按照楼主的公式1:工作年限=当年年份-工作时间(年份)-1
上述示例是不成立的,也就是说该职工是没有年休假的。
工作年限和退休年龄的计算方法是一样的,必须考虑到该人参加工作的年月日,与当前的年月日。
5*(2/12)
按照上面的公式,休假天数不足一天的如何处理。
2012-11-14 13:31
bccn201203
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:680
专家分:1140
注 册:2012-3-14
收藏
得分:0 
以下是引用ilikeflash在2012-11-14 13:31:14的发言:

用当前年份减参加工作年份不就成
2011.11.02-2012.11.01 这段时间如何计算,能算一年吗
2012-11-14 13:34
wjp456789
Rank: 5Rank: 5
来 自:四川成都
等 级:职业侠客
威 望:1
帖 子:345
专家分:330
注 册:2012-6-25
收藏
得分:0 
楼主的计算方法的确是有问题。

我是来向高手学习的!
2012-11-14 13:46
Kerberos
Rank: 5Rank: 5
来 自:江苏扬州
等 级:职业侠客
帖 子:227
专家分:355
注 册:2012-9-11
收藏
得分:0 
以下是引用bccn201203在2012-11-14 13:24:41的发言:


假如张三是2011年10月份参加工作的,到2012年11月30日,如果按照楼主的公式计算,张三工作年限为[0],因此,楼主的公式是没有科学性,看样子,楼主比半夜鸡叫的土财主还要狠。
不好意思,我贴出来的计算方法的确有问题,现在我更正一下,工作年限=当年的年月(含年份月份)-工作时间(含年份月份)-1

想学好VFP,想做VFP高手,想帮助更多的人解决VFP问题!
2012-11-14 15:04
Kerberos
Rank: 5Rank: 5
来 自:江苏扬州
等 级:职业侠客
帖 子:227
专家分:355
注 册:2012-9-11
收藏
得分:0 
以下是引用bccn201203在2012-11-14 13:31:27的发言:

按照楼主的公式1:工作年限=当年年份-工作时间(年份)-1
上述示例是不成立的,也就是说该职工是没有年休假的。
工作年限和退休年龄的计算方法是一样的,必须考虑到该人参加工作的年月日,与当前的年月日。
按照上面的公式,休假天数不足一天的如何处理。
这个精确到月份就行,不用考虑天数

想学好VFP,想做VFP高手,想帮助更多的人解决VFP问题!
2012-11-14 15:09
wjp456789
Rank: 5Rank: 5
来 自:四川成都
等 级:职业侠客
威 望:1
帖 子:345
专家分:330
注 册:2012-6-25
收藏
得分:2 
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

这是你最开始的算法。中部有些条件没写对,比如年休假天数。
还有部分没实现有的功能,算出来的数据不对。你自己琢磨一下。我也没弄出来
先把求解思路发给你。
收到的鲜花
  • tlliqi2012-11-14 17:57 送鲜花  10朵   附言:非常棒

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



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

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