Foxtable(狐表)用户栏目专家坐堂 → 请教老师考勤数据处理


  共有2401人关注过本帖平板打印复制链接

主题:请教老师考勤数据处理

帅哥,在线噢!
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107863 积分:548678 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/2 21:10:00 [只看该作者]

Dim dtb As New DataTableBuilder("统计")
dtb.AddDef("编号", Gettype(String), 16)
dtb.AddDef("打卡时间", Gettype(Date))
For Each r As Row In Tables("班次").Rows
    dtb.AddDef(r("打卡时段"), Gettype(Date))
Next
dtb.Build()
MainTable= Tables("统计")
For Each r As Row In Tables("班次").Rows
    DataTables("统计").DataCols(r("打卡时段")).SetDateTimeFormat(DateTimeFormatEnum.Time)
Next
Dim ds As List(Of String) = DataTables("考勤表").SQLGetValues("编号+','+format(打卡时间,'yyyy-MM-dd')")
For Each s As String In ds
    Dim s1() As String = s.Split(",")
    Dim r1 As Row = Tables("统计").AddNew
    r1("编号") = s1(0)
    Dim d As Date = cdate(s1(1))
    r1("打卡时间") = s1(1)
    For Each dr As DataRow In DataTables("考勤表").Select("编号='" & s1(0) & "' And 打卡时间 >= #" & d & "# And 打卡时间<#" & d.AddDays(1) & "#")
        Dim d2 As Date = cdate(Format(dr("打卡时间"),"1900-01-01 HH:mm:ss"))
        Dim dr2 As DataRow = DataTables("班次").Find("起始时间 <= #" & d2 & "# And 结束时间 >=#" & d2 & "#")
        If dr2 IsNot Nothing Then
            r1(dr2("打卡时段")) = d2
        End If
    Next
Next
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:考勤.zip


 回到顶部