以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助][讨论]有关表属性关联的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=64082)

--  作者:ab19850428
--  发布时间:2015/2/4 15:47:00
--  [求助][讨论]有关表属性关联的问题

我想做一个报价的程序,表属性事件数据项的代码问题,我先把所有规格跟相对应的价格都输入到参数的表格内,当镀锌阀成本计算表格的宽跟高有变动时会自动抽取镀锌阀成本参数表内对应规格的价格显示到阀体单价一栏内。如果只变动一个参数宽或者高,这个代码我会写,现在是两个参数宽跟高都要变化才能准确的显示相对应的价格(因为宽或者高参数是复式)。求各位大侠帮我看看这个该怎么写,谢谢!

 

 

If e.DataCol.Name = "宽" Then \'发生变化的是宽吗?
    \'在镀锌阀成本参数找出宽
    Dim dr As DataRow
    dr = DataTables("镀锌阀成本参数").Find("宽 = " & "\'" & e.DataRow("宽") & "\'" )
    If dr IsNot Nothing \'如果找到, 则设置各列内容
        e.DataRow("阀体单价")= dr("价格")
    Else
        \'否则清除阀体单价的内容
        e.DataRow("阀体单价") = Nothing
    End If
End If

这是单项宽变换时的代码,现在要宽高两个参数都变化,改怎么写呢!求高手帮忙,谢谢!


--  作者:Bin
--  发布时间:2015/2/4 15:52:00
--  
If e.DataCol.Name = "宽" orlese  e.DataCol.Name = "高" Then \'发生变化的是宽吗?
if e.datarow.isnull("宽")=false andalso e.datarow.isnull("高")=false then
    \'在镀锌阀成本参数找出宽
    Dim dr As DataRow 
    dr = DataTables("镀锌阀成本参数").Find("宽 = " & "\'" & e.DataRow("宽") & "\' and 高=\'" & e.DataRow("高") & "\'")
    If dr IsNot Nothing \'如果找到, 则设置各列内容
        e.DataRow("阀体单价")= dr("价格")
    Else
        \'否则清除阀体单价的内容
        e.DataRow("阀体单价") = Nothing
    End If
End If
end if

--  作者:ab19850428
--  发布时间:2015/2/4 16:02:00
--  

谢谢楼上版主的帮助,但是语法有错误,您能再帮我看一下吗?谢谢!

图片点击可在新窗口打开查看


--  作者:有点甜
--  发布时间:2015/2/4 16:04:00
--  
If e.DataCol.Name = "宽" OrElse  e.DataCol.Name = "高" Then \'发生变化的是宽吗?
    If e.DataRow.isnull("宽")=False AndAlso e.DataRow.isnull("高")=False Then
        \'在镀锌阀成本参数找出宽
        Dim dr As DataRow
        dr = DataTables("镀锌阀成本参数").Find("宽 = " & "\'" & e.DataRow("宽") & "\' and 高=\'" & e.DataRow("高") & "\'")
        If dr IsNot Nothing \'如果找到, 则设置各列内容
            e.DataRow("阀体单价")= dr("价格")
        Else
            \'否则清除阀体单价的内容
            e.DataRow("阀体单价") = Nothing
        End If
    End If
End If

--  作者:ab19850428
--  发布时间:2015/2/4 16:04:00
--  

错误显示:应为语句结束

错误代码是:If e.DataCol.Name = "宽" orlese  e.DataCol.Name = "高" Then \'发生变化的是宽吗?


--  作者:Bin
--  发布时间:2015/2/4 16:05:00
--  
If e.DataCol.Name = "宽" Orelse e.DataCol.Name = "高" Then 
--  作者:ab19850428
--  发布时间:2015/2/4 16:13:00
--  
谢谢版主!