以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  从字符串“夜班结束”到类型“Integer”的转换无效。  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=56623)

--  作者:jiangxun
--  发布时间:2014/9/10 4:08:00
--  从字符串“夜班结束”到类型“Integer”的转换无效。

“从字符串“夜班结束”到类型“Integer”的转换无效。”这个我查不出来,请帮助

代码如下:

 

 

    If (t_now.now > t_daystart) And (t_now.now<t_nightoff) Then
        cmd.CommandText = "Select * From {考勤_夜班记录} Where [姓名] = \'" & User.Name & "\' and [日期] = \'" & t.addDays(-1) & "\'"
        dt = cmd.ExecuteReader
        If dt.DataRows.Count > 0 And dt.DataRows("夜班结束") IsNot Nothing Then
            e.Form.Controls("Label4").text = "您已下夜班打卡"
            e.Form.controls("Button_night").enabledd = False
            e.Form.controls("Button_nightoff").enabledd = False
        Else
            If dt.DataRows.count > 0 And dt.DataRows("夜班结束") Is Nothing Then
                e.Form.controls("Button_day").enabledd = False
                e.Form.controls("Button_dayoff").enabledd = False
                e.Form.controls("Button_night").enabledd = False
                e.Form.controls("Button_nightoff").enabledd = True
            Else
                e.Form.controls("Button_night").enabledd = False
                e.Form.controls("Button_nightoff").enabledd = False
               
            End If
        End If
       
    End If


--  作者:新福星
--  发布时间:2014/9/10 5:09:00
--  
  If dt.DataRows.Count > 0 And dt.DataRows("夜班结束") IsNot Nothing Then中的  “dt.DataRows("夜班结束")”错了,正确应该 dt.DataRows(记录序列号),应该是Integer
--  作者:有点甜
--  发布时间:2014/9/10 9:11:00
--  
  dt.DataRows("夜班结束") 你的语法显然是不对的,你直接说你要做到什么效果吧。
--  作者:jiangxun
--  发布时间:2014/9/10 20:38:00
--  

我想判断夜班结束的打卡是否进行了,如果进行了就提示已完成打卡,如果没进行就将当时的时间作为打卡记录,然后提示夜班下班打卡完成


--  作者:有点甜
--  发布时间:2014/9/10 20:45:00
--  

 查到的,有可能是多行,你取第几行?

 

 If dt.DataRows.Count > 0 And dt.DataRows(0)("夜班结束") IsNot Nothing Then


--  作者:jiangxun
--  发布时间:2014/9/10 21:17:00
--  
这样的话提示:索引超出了数组界限。我的数据库里什么都还没输入
--  作者:有点甜
--  发布时间:2014/9/10 21:19:00
--  
If dt.DataRows.Count > 0 AndAlso dt.DataRows(0)("夜班结束") IsNot Nothing Then
--  作者:有点甜
--  发布时间:2014/9/10 21:19:00
--  
If dt.DataRows.Count > 0 AndAlso dt.DataRows(0).IsNull("夜班结束") = False Then
--  作者:jiangxun
--  发布时间:2014/9/10 21:32:00
--  
还是超出数组界限,没有值就不可能有(0)吧
--  作者:有点甜
--  发布时间:2014/9/10 21:37:00
--  
 看7楼、8楼,前面的count判断了