以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 时间提醒错误 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=128249) |
||||
-- 作者:宁老师SQE -- 发布时间:2018/12/2 10:42:00 -- 时间提醒错误 此主题相关图片如下:360截图16530713426273.png Select Case e.DataCol.Name Case "截止日期","延期天数" If e.DataRow.IsNull("截止时间") Then e.DataRow("最终时间") = Nothing Else e.DataRow("最终时间") = e.DataRow("截止时间").AddDays(e.DataRow("延期天数")) End If End Select 写这个代码,如果延期天数是空值的话为什么不好使,怎么改写呢 Dim dta As Date = Date.Today.AddDays(10) Dim dra As DataRow = DataTables("新产品开发阶段表").Find("最终时间 <= #" & dta & "#" And "[通知检验] Is False ") If dra IsNot Nothing Then MessageBox.Show("有新开发产品即将到期!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) Tables("新产品开发阶段表").Filter = "最终时间 <= #" & dta & "#" MainTable = Tables("新产品开发阶段表") End If |
||||
-- 作者:宁老师SQE -- 发布时间:2018/12/2 16:15:00 --
If e.col.Name =
"最终时间"
Then e.Style = "到期" 如果表提醒日期已经处理完了 不想在出现表的样式 这样写可以吗 应该在表的DrawCell事件代码改写代码吗
|
||||
-- 作者:有点甜 -- 发布时间:2018/12/2 21:31:00 -- 1、为空值,也会执行代码,请认真测试;
2、
Dim dra As DataRow = DataTables("新产品开发阶段表").Find("最终时间 <= #" & dta & "#" And "[通知检验] Is False ")
改成
Dim dra As DataRow = DataTables("新产品开发阶段表").Find("最终时间 <= #" & dta & "# And [通知检验] Is False ")
3、代码改成
If e.Col.Name = "最终时间" Then
|
||||
-- 作者:宁老师SQE -- 发布时间:2018/12/3 10:06:00 -- 此主题相关图片如下:360截图16651231100107108.png |
||||
-- 作者:宁老师SQE -- 发布时间:2018/12/3 10:08:00 -- 此主题相关图片如下:360截图164912215410180.png 按照老师给的代码写 也没有看见输出样式 而且延期天数是空值的话只有在此列重置后才能执行代码 能不能直接就计算呢 还望老师指教 |
||||
-- 作者:有点甜 -- 发布时间:2018/12/3 10:11:00 -- 改成
If e.Row("最终时间") < Date.Today.AddDays(10) AndAlso e.Row("开发关闭") = false Then
你输入【截止日期】后,就会自动计算的,不可能存在你这种问题,实例发上来测试 |
||||
-- 作者:宁老师SQE -- 发布时间:2018/12/3 11:33:00 --
做别的提醒好使 在这个表就不好使了
|
||||
-- 作者:有点甜 -- 发布时间:2018/12/3 13:13:00 -- 你没有添加样式
http://www.foxtable.com/webhelp/scr/0656.htm
|
||||
-- 作者:宁老师SQE -- 发布时间:2018/12/3 16:56:00 --
|
||||
-- 作者:有点甜 -- 发布时间:2018/12/3 16:59:00 -- Select Case e.DataCol.Name Case "截止时间","延期天数" If e.DataRow.IsNull("截止时间") Then e.DataRow("最终时间") = Nothing Else e.DataRow("最终时间") = e.DataRow("截止时间").AddDays(e.DataRow("延期天数")) End If End Select |