以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 字符长度判断 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=179127) |
-- 作者:wukangppbb -- 发布时间:2022/8/9 12:43:00 -- 字符长度判断 这个怎么修改? Select e.DataCol.Name Case "科目代码" If e.DataRow.IsNull("科目代码") Then e.DataRow("科目层级") = Nothing Else If e.DataRow.Text.Length = 4 Then \'输入内容的长度达到4 e.DataRow("科目层级") = "一级科目" End If End If End Select |
-- 作者:SbFox -- 发布时间:2022/8/9 13:24:00 -- e.DataRow("科目层级").Length |
-- 作者:有点蓝 -- 发布时间:2022/8/9 13:39:00 -- If e.DataRow("科目代码").Length = 4 Then \'输入内容的长度达到4 |
-- 作者:wukangppbb -- 发布时间:2022/8/9 17:06:00 -- 回复:(有点蓝)If e.DataRow("科目代码").Length = ... 老师,我这里有个判断,我用下面的逻辑是可以的。 Select e.DataCol.Name Case "是否末级科目","一级科目" If e.DataRow("是否末级科目")= "末级" And e.DataRow.IsNull("一级科目")=False Then e.DataRow("末级科目名称") = e.DataRow("一级科目") Else If e.DataRow("是否末级科目")= "末级" And e.DataRow.IsNull("二级科目")=False Then e.DataRow("末级科目名称") = e.DataRow("二级科目") Else If e.DataRow("是否末级科目")= "末级" And e.DataRow.IsNull("三级科目")=False Then e.DataRow("末级科目名称") = e.DataRow("三级科目") Else If e.DataRow("是否末级科目")= "末级" And e.DataRow.IsNull("四级科目")=False Then e.DataRow("末级科目名称") = e.DataRow("四级科目") Else If e.DataRow("是否末级科目")= "末级" And e.DataRow.IsNull("五级科目")=False Then e.DataRow("末级科目名称") = e.DataRow("五级科目") End If End Select 但是如果表变成这样,这个判断就有问题了,应该怎么写的? 就是要把末级对应的科目 准确的 填充到 “末级科目名称” 列 |
-- 作者:有点蓝 -- 发布时间:2022/8/9 17:30:00 -- 反过来从五级开始判断 Select e.DataCol.Name Case "是否末级科目","一级科目" If e.DataRow("是否末级科目")= "末级" if e.DataRow.IsNull("五级科目")=False Then e.DataRow("末级科目名称") = e.DataRow("五级科目") ElseIf e.DataRow.IsNull("四级科目")=False Then e.DataRow("末级科目名称") = e.DataRow("四级科目") Elseif ......... …… End If End If End Select |