以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 统计未打卡次数 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=89068) |
-- 作者:zhangning -- 发布时间:2016/8/15 11:34:00 -- 统计未打卡次数 有 两个列“签到时间”和“签退时间”, 如这两列任意一个空值,就算未打卡一次, 请问老师如何写代码,谢谢!
|
-- 作者:Hyphen -- 发布时间:2016/8/15 11:42:00 -- 具体问题代码或者例子说明 |
-- 作者:zhangning -- 发布时间:2016/8/15 12:46:00 -- Dim Count1 As Integer Dim Count2 As Integer If e.DataCol.Name = "签到时间" Then If e.NewValue Is Nothing Then count1 = 1 Else Count1 = nothing End If End If If e.DataCol.Name = "签退时间" Then If e.NewValue Is Nothing Then count2 = 1 Else Count2 = nothing End If End If e.DataRow("未打卡回") = count1 + count2 老师帮看看以上代码,错在哪儿 |
-- 作者:Hyphen -- 发布时间:2016/8/15 15:02:00 -- Select Case e.DataCol.Name Case "签到时间","签退时间" Dim count As Integer If e.DataRow.IsNull("签到时间") = False Then count += 1 If e.DataRow.IsNull("签退时间") = False Then count += 1 e.DataRow("未打卡回") =count End Select
|
-- 作者:大红袍 -- 发布时间:2016/8/15 15:40:00 -- If e.DataCol.Name = "签到时间" OrElse e.DataCol.Name = "签退时间" Then Dim count As Integer = 0 If e.DataRow.isNull("签到时间") Then count += 1 End If If e.DataRow.isNull("签退时间") Then count += 1 End If e.DataRow("未打卡回") = count End If |
-- 作者:zhangning -- 发布时间:2016/8/15 17:20:00 -- 以下代码: if e.DataRow("未打卡理由认可") = true then e.DataRow("未打卡回") = 0 else If e.DataCol.Name = "签到时间" OrElse e.DataCol.Name = "签退时间" Then Dim count As Integer = 0 If e.DataRow.isNull("签到时间") Then count += 1 End If If e.DataRow.isNull("签退时间") Then count += 1 End If e.DataRow("未打卡回") = count End If end if 测试结果,感觉逻辑列不起作用,麻烦老师帮看看,谢谢! |
-- 作者:大红袍 -- 发布时间:2016/8/15 17:24:00 -- If e.DataCol.Name = "签到时间" OrElse e.DataCol.Name = "签退时间" OrElse e.DataCol.Name = "未打卡理由认可" Then If e.DataRow("未打卡理由认可") = True Then e.DataRow("未打卡回") = 0 Else Dim count As Integer = 0 If e.DataRow.isNull("签到时间") Then count += 1 End If If e.DataRow.isNull("签退时间") Then count += 1 End If e.DataRow("未打卡回") = count End If End If |