Foxtable(狐表)用户栏目专家坐堂 → 老师你好,我想问一下这代码


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

主题:老师你好,我想问一下这代码

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


加好友 发短信
等级:超级版主 帖子:106092 积分:539565 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/9/24 16:54:00 [显示全部帖子]

打开项目的时候重置一下这个表"记录日期"列

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106092 积分:539565 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/9/24 17:22:00 [显示全部帖子]

什么东西超出范围?吃太多了,还是跳太高了?请贴出详细的错误信息

 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106092 积分:539565 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/9/24 17:32:00 [显示全部帖子]

提示datacolchanged事件代码有问题,可能是"处理时间"有异常值,超出了日期的可计算范围

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106092 积分:539565 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/9/24 17:39:00 [显示全部帖子]

自己加调试代码,看是重置到哪一行数据有问题:http://www.foxtable.com/webhelp/scr/1485.htm

 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106092 积分:539565 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/9/24 17:45:00 [显示全部帖子]

If e.DataCol.Name = "记录日期" Then
    dim v as integer = val(e.DataRow("处理时间"))
    If e.DataRow.IsNull("记录日期") = False andalso v > 1000 '不能大于1000天,自己改为合适的值
        If e.DataRow("记录日期")>  Date.Today.AddDays( * -1) Then
            e.DataRow("状态")="跟进中"
        Else
            e.DataRow("状态")="跟进中(已超时)"
        End If
    End If
End If

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106092 积分:539565 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/9/25 8:43:00 [显示全部帖子]

调试技巧:http://www.foxtable.com/webhelp/scr/1485.htm

If e.DataCol.Name = "记录日期" Then
msgbox(1)
    Dim v As long = val(e.DataRow("处理时间"))
msgbox(v)
    If e.DataRow.IsNull("记录日期") = False AndAlso v > 30 '不能大于1000天,自己改为合适的值
msgbox(e.DataRow("记录日期"))
        If e.DataRow("记录日期")>  Date.Today.AddDays(v * -1) Then
            e.DataRow("状态")="跟进中"
        Else
            e.DataRow("状态")="跟进中(已超时)"
        End If
    End If
End If

 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106092 积分:539565 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/9/25 9:53:00 [显示全部帖子]

If e.DataRow.IsNull("记录日期") = False AndAlso v > 30
改为
If e.DataRow.IsNull("记录日期") = False AndAlso v>0 andalso v <= 30

 回到顶部