以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]考勤问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=133036)

--  作者:xunxun0903
--  发布时间:2019/4/4 13:56:00
--  [求助]考勤问题


图片点击可在新窗口打开查看此主题相关图片如下:源始数据.png
图片点击可在新窗口打开查看 (图1)


图片点击可在新窗口打开查看此主题相关图片如下:要求.png
图片点击可在新窗口打开查看 (图2)

说明:

1,删除原始数据中重复打卡记录(一天只取上午最早的一次 下午最晚的一次)。

2,将结果通过报表生成图2 的要求,或填充到新的foxtable表中。

 

请求帮助 或 有比这个更合理的方法。谢谢~!


--  作者:有点甜
--  发布时间:2019/4/4 17:05:00
--  

原始数据尽量不要删除;你额外生成一个统计表即可。

 

比如分组统计,按照姓名、id、日,然后统计最早时间和最晚时间,即可。

 

http://www.foxtable.com/webhelp/scr/1626.htm

 

如果自己不会做,上传具体实例测试。


--  作者:xunxun0903
--  发布时间:2019/4/8 9:10:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:考勤.table

上传了 谢谢~
--  作者:有点甜
--  发布时间:2019/4/8 9:43:00
--  

参考代码

 

Dim g As New sqlGroupTableBuilder("统计表1", "表C")
g.Groups.AddDef("编号")
g.Groups.Addexp("打卡时间", "format(打卡时间, \'yyyy-MM-dd\')")
g.Totals.Adddef("打卡时间", AggregateEnum.max, "最晚")
g.Totals.Adddef("打卡时间", AggregateEnum.min, "最早")
g.Build()
MainTable = Tables("统计表1")


--  作者:xunxun0903
--  发布时间:2019/4/30 15:41:00
--  

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:考勤 (1).table

统计的最早 和 最晚 二列 怎么才能显示时间 ?


--  作者:有点甜
--  发布时间:2019/4/30 15:58:00
--  
Dim g As New sqlGroupTableBuilder("统计表1", "表C")
g.Groups.AddDef("编号")
g.Groups.Addexp("打卡时间", "format(打卡时间, \'yyyy-MM-dd\')")
g.Totals.Adddef("打卡时间", AggregateEnum.max, "最晚")
g.Totals.Adddef("打卡时间", AggregateEnum.min, "最早")
g.Build()
MainTable = Tables("统计表1")
DataTables("统计表1").DataCols("最晚").SetDateTimeFormat(DateTimeFormatEnum.DateLongTime)
DataTables("统计表1").DataCols("最早").SetDateTimeFormat(DateTimeFormatEnum.DateLongTime)

--  作者:xunxun0903
--  发布时间:2019/4/30 16:32:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:tim图片20190430163020.png
图片点击可在新窗口打开查看
使用的 外部数据源 以上的考勤基础表是查询表 出现如图的错误!
--  作者:有点甜
--  发布时间:2019/4/30 16:35:00
--  

 

sqlserver数据库,请改成

 

g.Groups.Addexp("打卡时间", "convert(varchar(10), 打卡时间, 120)")

 


 

[此贴子已经被作者于2019/4/30 16:38:00编辑过]

--  作者:xunxun0903
--  发布时间:2019/4/30 16:42:00
--  


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

 

Dim g As New sqlGroupTableBuilder("统计表1", "考勤基础")
///这行咋显示不出来!g.C 数据源是有的 论坛发不出来!
g.Groups.AddDef("所属中心")
g.Groups.Addexp("CHECKTIME", "convert(varchar(10),CHECKTIME,120)")
g.Totals.Adddef("CHECKTIME", AggregateEnum.max, "最晚")
g.Totals.Adddef("CHECKTIME", AggregateEnum.min, "最早")
g.Build()
MainTable = Tables("统计表1")
DataTables("统计表1").DataCols("最晚").SetDateTimeFormat(DateTimeFormatEnum.DateLongTime)
DataTables("统计表1").DataCols("最早").SetDateTimeFormat(DateTimeFormatEnum.DateLongTime)

[此贴子已经被作者于2019/4/30 16:44:09编辑过]

--  作者:有点甜
--  发布时间:2019/4/30 16:47:00
--  
你的数据库,没有 【考勤基础】 这个表。