以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  从字符串“岗位类别='计时'”到类型“Long”的转换无效。  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=94380)

--  作者:misamisali
--  发布时间:2016/12/22 11:55:00
--  从字符串“岗位类别='计时'”到类型“Long”的转换无效。
 For Each I As DataRow In DataTables("员工信息表").Select("岗位类别=\'计时\'" And "前月末在职 = 1")
       Dim DR As Row = Tables("计时工资制作表").AddNew
            DR("姓名") = I("姓名").Trim() \'部门前不能存在空值

图片点击可在新窗口打开查看此主题相关图片如下:代码错误.png
图片点击可在新窗口打开查看


--  作者:有点色
--  发布时间:2016/12/22 12:12:00
--  

 

 For Each I As DataRow In DataTables("员工信息表").Select("岗位类别=\'计时\' And 前月末在职 = 1")

 


--  作者:misamisali
--  发布时间:2016/12/22 13:54:00
--  
For Each I As DataRow In DataTables("员工信息表").Select("岗位类别=\'计时\' And (前月末在职 = 1 OrElse 当月入职= 1) ")  
这个是表达在哪里错误了:语法错误:“OrElse”运算符后缺少操作数。
效果是实现:  选择 计时岗位, 并且 月末在在职=1 或者 当月入职 =1

--  作者:有点色
--  发布时间:2016/12/22 14:07:00
--  
For Each I As DataRow In DataTables("员工信息表").Select("岗位类别=\'计时\' And (前月末在职 = 1 or 当月入职= 1) ")  

--  作者:misamisali
--  发布时间:2016/12/22 15:29:00
--  
如果我想先遍历 然后嵌套一个if,先执行 所有计时员工,在选择月末在职=1 
不行的
  For Each i As DataRow In DataTables("员工信息表").Select("岗位类别=\'计时\'")      
  If i("前月末在职") = 1 OrElse i("当月入职") = 1 Then

--  作者:有点色
--  发布时间:2016/12/22 15:45:00
--  
 代码没问题,报什么错?贴出完整代码。