Foxtable(狐表)用户栏目专家坐堂 → 字符长度判断


  共有5711人关注过本帖树形打印复制链接

主题:字符长度判断

帅哥哟,离线,有人找我吗?
wukangppbb
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:357 积分:2568 威望:0 精华:0 注册:2020/7/24 10:30:00
字符长度判断  发帖心情 Post By: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
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:71 积分:479 威望:0 精华:0 注册:2021/12/11 14:20:00
  发帖心情 Post By:2022/8/9 13:24:00 [只看该作者]

e.DataRow("科目层级").Length

 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106674 积分:542559 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/8/9 13:39:00 [只看该作者]

If e.DataRow("科目代码").Length = 4 Then '输入内容的长度达到4

 回到顶部
帅哥哟,离线,有人找我吗?
wukangppbb
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:357 积分:2568 威望:0 精华:0 注册:2020/7/24 10:30:00
回复:(有点蓝)If e.DataRow("科目代码").Length = ...  发帖心情 Post By:2022/8/9 17:06:00 [只看该作者]

老师,我这里有个判断,我用下面的逻辑是可以的。

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
图片点击可在新窗口打开查看



但是如果表变成这样,这个判断就有问题了,应该怎么写的?
就是要把末级对应的科目 准确的 填充到 “末级科目名称” 列
图片点击可在新窗口打开查看




 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106674 积分:542559 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By: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

 回到顶部