以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  关于继承  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=141046)

--  作者:ygg8310
--  发布时间:2019/9/20 10:37:00
--  关于继承

如果订单表有多列数据来自于产品表,一样可以采用类似的设计实现跨表更新
例如,假定产品表和订单表通过产品编号联系起来(不一定建立了关联),订单表输入产品编号后,品名、型号、规格、单价四列内容从产品表自动继承输入。
为实现此目的,首先订单表
的DataColChanged事件代码应设置为:

If e.DataCol.Name = "产品编号" Then
    If e.NewValue Is Nothing Then
        e.
DataRow("品名") = Nothing
        e.
DataRow("型号") = Nothing
        e.
DataRow("规格") = Nothing
        e.
DataRow("单价") = Nothing
    Else
       
Dim dr As DataRow
        dr =
DataTables("产品").Find("[产品编号] = \'" & e.NewValue & "\'")
        If
dr IsNot Nothing

            e.
DataRow("品名") = dr("品名")
            e.
DataRow("型号") = dr("型号")
            e.
DataRow("规格") = dr("规格")
            e.
DataRow("单价") = dr("单价")
        End
If
   
End If
End
If


--  作者:ygg8310
--  发布时间:2019/9/20 10:39:00
--  
是这样的,在产品表中有个时间列,在不同的时间可能价格会有所不同,现在希望的事继承的价格是最新的价格,这个怎么写?
--  作者:Grandraw
--  发布时间:2019/9/20 10:54:00
--  
 dr = DataTables("产品").Find("[产品编号] = \'" & e.NewValue & "\'", "date desc")
--  作者:有点蓝
--  发布时间:2019/9/20 10:55:00
--  
比如:

dr = DataTables("产品").Find("[产品编号] = \'" & e.NewValue & "\'","时间 desc")