CnPack Forum » CVSTrac 相关问题 » cvstrac报表:统计一段时间各人员的工作量(代码行)


2008-7-10 17:40 dalang
cvstrac报表:统计一段时间各人员的工作量(代码行)

cvstrac 中统计一段时间各人员的工作量(代码行)[table][tr][td=8,1]DateStart: 2008-07-10                                 DateEnd: 2008-07-10              执行[/td][/tr][tr][/tr][tr][td]用户[/td][td]提交次数[/td][td]涉及文件数[/td][td]新增文件数[/td][td]删除文件数[/td][td]修改文件次数[/td][td]插入行数[/td][td]删除行数[/td][/tr][tr][td]wangp[/td][td]1[/td][td]1[/td][td]0[/td][td]0[/td][td]1[/td][td]181[/td][td]200[/td][/tr][tr][td]yangdong[/td][td]1[/td][td]4[/td][td]0[/td][td]0[/td][td]4[/td][td]47[/td][td]31[/td][/tr][/table]
sql脚本如下
select m.muser     as '用户',
min(n.ncn)         as '提交次数',
count(m.mfilename) as '涉及文件数',
sum(m.addf)        as '新增文件数',
sum(m.delf)        as '删除文件数',
sum(m.modf)        as '修改文件次数',
sum(m.mnins)       as '插入行数',
sum(m.mndel)       as '删除行数'
from
(
      select a.user      as muser,
             b.filename  as mfilename,
             sum(b.nins) as mnins,
             sum(b.ndel) as mndel,
             sum(case chngtype when 1 then 1 else 0 end) as addf,
             sum(case chngtype when 2 then 1 else 0 end) as delf,
             sum(case chngtype when 0 then 1 else 0 end) as modf
      from chng a,filechng b
         where a.cn= b.cn
         and  a.date >=julianday(aux('DateStart',date('now')))*86400 -julianday('1970-01-01')*86400
         and  a.date <=julianday(aux('DateEnd'  ,date('now')))*86400 -julianday('1970-01-01')*86400 +86400
      group by a.user,b.filename
) as m,
(
      select user as nuser,
             count(cn) as ncn
      from chng  c
      where date >=julianday(aux('DateStart',date('now')))*86400-julianday('1970-01-01')*86400
        and date <=julianday(aux('DateEnd'  ,date('now')))*86400-julianday('1970-01-01')*86400 +86400
       group by c.user
) as n
where m.muser =n.nuser
group by m.muser
order by m.muser

[[i] 本帖最后由 dalang 于 2008-7-10 17:44 编辑 [/i]]

2008-7-10 21:14 zjy
加精鼓励!


2008-7-11 19:28 Passion
不错哇。厉害。

2008-7-13 12:06 zjy
我加到cnpack的cvstrac喽!

今年啸啸好辛苦啊!

2009-7-13 21:49 雪儿
哈哈,这个看起来真的很不错

管理员:
   您好!
这个看起真的很不错,目前我的界面是可以了,但是出来的数据都是当天的的数据,怎么样才能够象你上面说的按照输入的开始日期和结束日期来统计各人员的工作量呢?

[[i] 本帖最后由 雪儿 于 2009-7-19 22:28 编辑 [/i]]

2009-7-20 08:36 雪儿
用报表统计工作量,sql语句是否要设置时间变量

lz:
  您好!
RT!
能不能把sql语句贴出来,呵呵,感激不尽啊

[[i] 本帖最后由 雪儿 于 2009-7-20 09:34 编辑 [/i]]

2009-7-20 09:34 zjy
这个SQL语句中的 aux('DateStart',date('now')) 就是一个定义变量的函数,DateStart 是变量名,会在执行结果页面显示,date('now') 是默认值,在这里用 date 函数来取今天的日期。

2009-7-20 10:56 雪儿
谢谢lz
还有个问题,
我要在加一列开发人员"修改代码行数",这个要怎么补充,请指点,谢谢

[[i] 本帖最后由 雪儿 于 2009-7-20 16:44 编辑 [/i]]

2009-7-20 19:11 雪儿
请教:能在加一列开发人员"修改代码行数"这个字段吗?在chng ,filechng这2张表里ms没看到这样对应的
可以补充进去吗?可以的话要怎么修改,请高手指点,因为ld们想要看这个开发人员修改代码行数,万分感激

2009-7-20 21:31 zjy
确实没有修改行数这一列

对cvs来说,修改表现为删除旧行、增加新行,所以只有新增和删除两列。近似计算的话,新增行数也可以认为是修改行数。

2009-7-20 21:38 雪儿
好的,明白了,谢谢lz

[[i] 本帖最后由 雪儿 于 2009-7-20 21:48 编辑 [/i]]

2009-7-21 09:47 雪儿
cvstrac没有统计新增文件的代码行功能吗?

我昨天把cvstrac和statcvs统计出来的结果对比下
发现cvstrac的数据少了好多,才发现开发人员新增文件,都没统计代码行数,是cvstarc本身没有这个功能吗
还是说我设置的问题呢?

2010-7-8 14:14 ths0516
你的问题解决了吗?关键统计代码行数不能作为一个人或者项目的工作量,只能仅仅说他在干活,还是考虑功能点吧

页: [1]


Powered by Discuz! Archiver 5.0.0  © 2001-2006 Comsenz Inc.