标题:考勤表统计
取消只看楼主
杂七杂八
Rank: 1
等 级:新手上路
帖 子:217
专家分:7
注 册:2018-2-20
结帖率:96%
已结贴  问题点数:20 回复次数:6 
考勤表统计
有一张考勤表,记录数在3000~5000左右,其中每月的日期用J1~J31表示,每天的出勤状态用简称填写如病、事、旷表示,现统计每月的具体出勤天数(数值型)
附表,用VFP6.0
考勤表1.rar (433 Bytes)

求解.谢谢!
搜索更多相关主题的帖子: VFP6.0 天数 统计 考勤 表示 
2019-12-12 13:20
杂七杂八
Rank: 1
等 级:新手上路
帖 子:217
专家分:7
注 册:2018-2-20
得分:0 
回复 2楼 厨师王德榜
我已试过了,好用.非常谢谢!厨师王德榜
我想在考勤表增加一个字段为单位部门名称,如分公司1,分公司2 来统计出各分公司当月出勤状态人数如病假几人,事假几人
部门         病假人数     事假人数     ***
分公司1         X            X          X
分公司2         X            X          X
能行吗?
2019-12-12 16:58
杂七杂八
Rank: 1
等 级:新手上路
帖 子:217
专家分:7
注 册:2018-2-20
得分:0 
回复 4楼 hu9jj
我写一句
SELE BM,COUN(病假)AS 病假人数,COUN(事假)AS 事假人数 FROM 考勤表1 GROU BY BM   INTO TABL LST_TABL
结果显示 病假人数和事假人数二列的统计人数是一样的,这显然是错误的。
2019-12-12 21:07
杂七杂八
Rank: 1
等 级:新手上路
帖 子:217
专家分:7
注 册:2018-2-20
得分:0 
CLOSE DATABASES
USE 考勤表1
BLANK FIELDS 病假,事假,旷工,出差,年休 ALL

LOCAL bj ,sj ,kg,hj,cc,nx as Integer   && 病假/事假/旷工/婚假/出差/年休
LOCAL ii as Integer  && 1-31天
LOCAL fieldname ,fieldVal as String
STORE 0 TO bj ,sj ,kg,hj,cc,nx
SELECT 考勤表1  && 假定前面已经use 了这张表
GO TOP
SCAN
    FOR ii =1 TO 31
        fieldname = "J" + LTRIM(STR(ii))
        fieldVal = &fieldname
        DO CASE
            CASE fieldVal = '病'
                bj = bj + 1
            CASE fieldVal = '事'
                sj = sj + 1
            CASE fieldVal = '旷'
                kg = kg + 1
            CASE fieldVal = '婚'
                hj = hj + 1
            CASE fieldVal = '差'                                            
                cc = cc + 1
            CASE fieldVal = '年'            
                nx = nx + 1
        ENDCASE
    ENDFOR
    REPLACE 病假 WITH bj ,事假 WITH sj , 旷工 WITH kg ,婚假 WITH hj ,出差 WITH cc , 年休 WITH nx , ;
        合计 WITH  bj +sj +kg +hj +cc + nx
    STORE 0 TO bj ,sj ,kg,hj,cc,nx
ENDSCAN
MESSAGEBOX('完毕.',64,'考勤统计')
BROWSE

SELECT BM,COUN(病假) AS 病假人数,COUN(事假) AS 事假人数,COUN(旷工) AS 旷工人数 FROM 考勤表1 GROUP BY BM INTO TABLE LS_TABL
USE LS_TABL
BROW
考勤表1.rar (508 Bytes)
LS_TABL.rar (199 Bytes)


[此贴子已经被作者于2019-12-12 21:40编辑过]

2019-12-12 21:34
杂七杂八
Rank: 1
等 级:新手上路
帖 子:217
专家分:7
注 册:2018-2-20
得分:0 
SELE BM,COUN(病假)AS 病假人数,COUN(事假)AS 事假人数 FROM 考勤表1 GROU BY BM   INTO TABL LST_TABL
结果显示 病假人数和事假人数二列的统计人数是一样的
求助高手!!!
2019-12-13 04:36
杂七杂八
Rank: 1
等 级:新手上路
帖 子:217
专家分:7
注 册:2018-2-20
得分:0 
回复 8楼 schtg
谢谢!!!
我试用了,管用。这是VFP9。0的代码吧。
2019-12-13 23:08
杂七杂八
Rank: 1
等 级:新手上路
帖 子:217
专家分:7
注 册:2018-2-20
得分:0 
回复 9楼 sdta
在算出勤率时算1个人。在统计出现病、事、旷各类假期次数时算3人。
2019-12-13 23:10



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-498346-1-1.html




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

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