Foxtable(狐表)用户栏目专家坐堂 → 日期判断的重置列


  共有3752人关注过本帖树形打印复制链接

主题:日期判断的重置列

帅哥哟,离线,有人找我吗?
jingledyang
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:55 积分:479 威望:0 精华:0 注册:2019/4/13 17:35:00
日期判断的重置列  发帖心情 Post By:2019/6/3 23:16:00 [显示全部帖子]

我想控制列重置,跟据日期来控制数据更新,代码怎么弄出来呢?如图


图片点击可在新窗口打开查看此主题相关图片如下:考勤日记.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:入职信息.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2019/6/4 21:22:18编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
jingledyang
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:55 积分:479 威望:0 精华:0 注册:2019/4/13 17:35:00
  发帖心情 Post By:2019/6/4 21:08:00 [显示全部帖子]

If  e.DataCol.Name = "注册码" Then
    Dim nms()As String = {"姓名","公司名称","职务","计时日薪","双休日薪","工作地点"}
    If  e.NewValue Is Nothing Then
        For Each nm As String In nms
            e.DataRow(nm)= Nothing
        Next
    Else
        Dim dr As DataRow
        dr = DataTables("入职信息").Find("[注册码]= '" & e.NewValue & "'")
        dr = DataTables("入职信息").Find("[注册码]= '" & e.NewValue & "'","入职日期 Desc")
        If  dr IsNot Nothing
            For Each nm As String In nms
                e.DataRow(nm)= dr(nm)
            Next
        End If
    End If
End If

烦请老师指点


 回到顶部
帅哥哟,离线,有人找我吗?
jingledyang
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:55 积分:479 威望:0 精华:0 注册:2019/4/13 17:35:00
  发帖心情 Post By:2019/6/4 22:59:00 [显示全部帖子]

我想在考勤日记表中的注册码列按下“重置列”后,要求同一个人,在不同的公司上班,按入职日期来判断,刷新数据。我知道没必要这么做,但是无意按了“重置列”,以前工作的数据变了。所以防止错误发生,只能修改代码。不知道弄了!

 


 回到顶部
帅哥哟,离线,有人找我吗?
jingledyang
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:55 积分:479 威望:0 精华:0 注册:2019/4/13 17:35:00
  发帖心情 Post By:2019/6/5 21:51:00 [显示全部帖子]

老师,我打个比方吧,一个人在公司上班,2019年1月是员工,工资是4000元/月,但是2019年3月20日提升为管理,工资为8000元/月,如果每天记录考勤,没有什么问题,但是在“考勤日记”表中的主键“注册码”列,点了“重置列”后,所有工资都会变成2019年3月20日升职工资(8000元/月)了,我想根据“入职信息”表中的“入职日期”作判断,决定“考勤日记”表的记录。

 回到顶部
帅哥哟,离线,有人找我吗?
jingledyang
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:55 积分:479 威望:0 精华:0 注册:2019/4/13 17:35:00
  发帖心情 Post By:2019/6/6 21:13:00 [显示全部帖子]

If  e.DataCol.Name = "注册码" Then
    Dim nms()As String = {"姓名","公司名称","职务","计时日薪","双休日薪","工作地点"}
    If  e.NewValue Is Nothing Then
        For Each nm As String In nms
            e.DataRow(nm)= Nothing
        Next
    Else
        Dim dr As DataRow
        dr = DataTables("入职信息").Find("[注册码]= '" & e.NewValue & "'")
        dr = DataTables("入职信息").Find("[注册码]= '" & e.NewValue & "' and 入职日期 <= #" & e.DataRow("工作日期") & "#","入职日期 Desc")
       
        If  dr IsNot Nothing
            For Each nm As String In nms
                e.DataRow(nm)= dr(nm)
            Next
        End If
    End If
End If

谢谢老师了,调试OK了!


 回到顶部