Foxtable(狐表)用户栏目专家坐堂 → 帮狐爸找Bug。帮助中关于生日提醒的错误。


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

主题:帮狐爸找Bug。帮助中关于生日提醒的错误。

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


加好友 发短信
等级:五尾狐 帖子:1015 积分:6979 威望:0 精华:0 注册:2012/8/1 18:41:00
帮狐爸找Bug。帮助中关于生日提醒的错误。  发帖心情 Post By:2012/12/24 14:05:00 [显示全部帖子]

生日提醒的代码,有个bug。

就是当该用户的生日栏没有填写 为空值的时候。也会被认为是快要过生日了

 

我这里做了个例子 大家测试一下

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:生日提醒.foxdb


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


加好友 发短信
等级:五尾狐 帖子:1015 积分:6979 威望:0 精华:0 注册:2012/8/1 18:41:00
  发帖心情 Post By:2012/12/25 16:18:00 [显示全部帖子]

以下是引用muhua在2012-12-24 14:45:00的发言:

Dim ids As String
Dim n As Integer = 9 '未来天数,含今天,所以实际是未来7天
For Each dr As DataRow In DataTables("员工").DataRows
    Dim birthday As Date
    If dr("生日").Month = 1 AndAlso dr("生日").Day < 9 Then
        birthday = Cdate(Date.Today.AddYears(1).Year & "-" & dr("生日").Month & "-" & dr("生日").Day)
    Else
        birthday = Cdate(Date.Today.Year & "-" & dr("生日").Month & "-" & dr("生日").Day)
    End If
    Dim t As TimeSpan = birthday - Date.Today
    If t.Days >0 AndAlso t.Days  < 9 Then
        'If (dt1 >= Date.Today AndAlso dt1 < Date.Today.AddDays(n)) OrElse (dt2 >= Date.Today AndAlso dt2 < Date.Today.AddDays(n)) Then
        ids = ids & "," & dr("姓名")
    End If
Next
If ids > "" Then
    ids = ids.Trim(",")
    messagebox.show("未来"& n &"天内是" & ids & "的生日,给他们送去祝福吧.","生日提醒")
    'Tables("员工").filter = "[_Identify] In (" & ids &")"
End If

[此贴子已经被作者于2012-12-24 15:17:16编辑过]

muhua  你修改了哪里呀


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


加好友 发短信
等级:五尾狐 帖子:1015 积分:6979 威望:0 精华:0 注册:2012/8/1 18:41:00
  发帖心情 Post By:2012/12/25 16:28:00 [显示全部帖子]

原因在于 原来的代码 会认为 没有填写生日的人的生日是1月1日

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


加好友 发短信
等级:五尾狐 帖子:1015 积分:6979 威望:0 精华:0 注册:2012/8/1 18:41:00
  发帖心情 Post By:2013/3/19 14:48:00 [显示全部帖子]

以下是引用sunbrain在2012-12-31 10:11:00的发言:
If ids > "" Then
    ids = ids.Trim(",")
    messagebox.show("未来"& n &"天内是" & ids & "的生日,给他们送去祝福吧.","生日提醒")
    'Tables("员工").filter = "[_Identify] In (" & ids &")"
End If
加红色部分,筛选有问题吗?怎么筛选不出结果呢?
麻烦大家帮助看看
谢谢

帅选指令确实有错误,应该是 Tables("员工").filter = "[_Identify] In ('" & ids &"')"

 


 回到顶部