以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  请教:表达式代码错误  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=63659)

--  作者:feiyu988
--  发布时间:2015/1/25 22:01:00
--  请教:表达式代码错误

以下表达式代码在绝缘节点列为空值时显示“未将对象引用设置到对象的实例”错误,请教怎么修改

 

For i As Integer = 0 To Tables("软横跨悬挂节点").Rows.Count-1

    If i = 0 Then

        Dim r As Row = Tables("软横跨悬挂节点").rows(i)

        Dim JYLX As DataRow = DataTables("绝缘节点").Find("[节点类型] = \'" & r("绝缘节点") & "\'")

        Dim JYZL As Decimal = IIF(r("绝缘节点") Is Nothing ,JYLX("单横总重"),0)

        r("负载计算值") = JYZL       

    End If

Next

 


--  作者:有点甜
--  发布时间:2015/1/25 22:07:00
--  
For i As Integer = 0 To Tables("软横跨悬挂节点").Rows.Count-1
   
    If i = 0 Then
       
        Dim r As Row = Tables("软横跨悬挂节点").rows(i)
        Dim JYZL As Decimal = 0
        If r.IsNull("绝缘节点") = False
            Dim JYLX As DataRow = DataTables("绝缘节点").Find("[节点类型] = \'" & r("绝缘节点") & "\'")
           
            If JYLX IsNot Nothing Then
                JYZL = JYLX("单横总重")
            End If
        End If
        r("负载计算值") = JYZL
       
    End If
   
Next

--  作者:feiyu988
--  发布时间:2015/1/25 22:11:00
--  
不能将JYZL直接赋值为0吗
--  作者:有点甜
--  发布时间:2015/1/25 22:13:00
--  
2楼这样写才规范,先判断是否为空,免得花时间查表。
[此贴子已经被作者于2015-1-25 22:12:57编辑过]

--  作者:feiyu988
--  发布时间:2015/1/25 22:14:00
--  

明白了,谢谢