以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  请教,如何用表达式实现  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=136382)

--  作者:xblxbl
--  发布时间:2019/6/12 11:55:00
--  请教,如何用表达式实现

订单表中用表达式将价格表中的产品对应不同区域的价格自动填入相应的“出厂单价”、“运费单价”、“服务费单价”、“总价”。

初次接触foxtable,请各位大虾指教

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:订单管理.table

[此贴子已经被作者于2019/6/12 11:56:46编辑过]

--  作者:有点甜
--  发布时间:2019/6/12 12:30:00
--  

datacolchanged事件,写代码

 

Select Case e.DataCol.Name
    Case "产品名称","产品型号","销售区域"
        Dim dr As DataRow = e.DataRow
       If dr.IsNull("产品名称") OrElse dr.IsNull("产品型号") OrElse dr.IsNull("销售区域") Then
            dr("出厂单价") = Nothing
            dr("运费单价") = Nothing
            dr("服务费单价") = Nothing
        Else
            Dim filter As String
            filter = "产品名称 = \'" & dr("产品名称") & "\' And 产品型号 = \'" & dr("产品型号") & "\'"
            Dim fdr = DataTables("价格").Find(filter)
            If fdr IsNot Nothing Then
                If fdr.DataTable.DataCols.Contains(e.DataRow("销售区域") & "_出厂单价" ) Then
                    dr("出厂单价") = fdr(e.DataRow("销售区域") & "_出厂单价")
                    dr("运费单价") = fdr(e.DataRow("销售区域") & "_运费单价")
                    dr("服务费单价") = fdr(e.DataRow("销售区域") & "_服务费单价")
                End If
            End If
        End If
End Select

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:订单管理.table


--  作者:xblxbl
--  发布时间:2019/6/12 15:46:00
--  
谢谢赐教!先学习,有什么问题再请教。
--  作者:xblxbl
--  发布时间:2019/6/13 8:58:00
--  
还得请教一下,为什么自动填入的数据不能保存下来,刚输入的时候有数据,退出后重新打开就没有了。
--  作者:有点甜
--  发布时间:2019/6/13 9:24:00
--  
以下是引用xblxbl在2019/6/13 8:58:00的发言:
还得请教一下,为什么自动填入的数据不能保存下来,刚输入的时候有数据,退出后重新打开就没有了。

 

不要用表达式列

 

http://www.foxtable.com/webhelp/scr/1380.htm

 


--  作者:xblxbl
--  发布时间:2019/6/13 9:42:00
--  
问题已解决,谢谢!!!