以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]求助Boolean的转换无效。 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=192730) |
-- 作者:myzy -- 发布时间:2024/7/17 9:32:00 -- [求助]求助Boolean的转换无效。 If e.DataCol.Name = "交单1" Then If e.newvalue = True Then e.DataRow("派工已做1") = 1 e.DataRow("交单") = "已交单" e.DataRow("本次耗时")= e.DataRow("小时")*e.DataRow("人数") \'e.DataRow("数量") Else e.DataRow("派工已做1") = 0 e.DataRow("交单") = 0 \'Nothing e.DataRow("本次耗时")= 0 End If End If If e.DataCol.Name = "交单" If e.DataRow(e.DataCol.Name) = "已交单" e.DataRow("派工已做1") = 1 e.DataRow("交单1") = True e.DataRow("姓名") = e.DataRow("工号") e.DataRow("派工数量") = 1 Else e.DataRow("派工已做1") = 0 e.DataRow("交单1") =False e.DataRow("姓名") = Nothing End If End If 错误所在事件:表,派工_Table1,DataColChanged 详细错误信息: 调用的目标发生了异常。 从字符串“已交单”到类型“Boolean”的转换无效。 输入字符串的格式不正确。 |
-- 作者:有点蓝 -- 发布时间:2024/7/17 9:36:00 -- 打开表结构看看,上面这些列,哪些是逻辑列? |
-- 作者:cd_tdh -- 发布时间:2024/7/17 10:35:00 -- 你交单是逻辑列, If e.DataCol.Name = "交单1" Then If e.newvalue = True Then e.DataRow("派工已做1") = 1 e.DataRow("交单") = "已交单" e.DataRow("本次耗时")= e.DataRow("小时")*e.DataRow("人数") \'e.DataRow("数量") e.DataRow("交单") = "已交单"肯定就不对啊。
|
-- 作者:myzy -- 发布时间:2024/7/17 10:36:00 -- “交单1”是逻辑列 “交单”是字符列
[此贴子已经被作者于2024/7/17 10:37:21编辑过]
|
-- 作者:cd_tdh -- 发布时间:2024/7/17 10:37:00 -- “交单”是逻辑列还是字符列? |
-- 作者:有点蓝 -- 发布时间:2024/7/17 10:38:00 -- 肯定还要其它也是逻辑列,比如"交单"。检查表结构 |
-- 作者:cd_tdh -- 发布时间:2024/7/17 10:39:00 -- e.DataRow("交单") = 0 \'Nothing,改为e.DataRow("交单") = Nothing 另外还要判断为空的情况
[此贴子已经被作者于2024/7/17 10:39:09编辑过]
|
-- 作者:myzy -- 发布时间:2024/7/17 10:44:00 -- 先感谢。但还是不行的。 加单:是字符型 [此贴子已经被作者于2024/7/17 15:15:50编辑过]
|
-- 作者:有点蓝 -- 发布时间:2024/7/17 10:44:00 -- 请上传实例测试 |
-- 作者:myzy -- 发布时间:2024/7/17 10:45:00 -- 检查了,就只是“交单1”才是逻辑列 |