以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]商品的价格问题。  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=41826)

--  作者:wealthyy
--  发布时间:2013/10/28 15:56:00
--  [求助]商品的价格问题。
有两个表 一个销售单,一个销售明细表,两个表是关联表,销售单中有客户列,销售明细中有单价列、货品编号、货品名称,销售明细表中的单价列怎么自动填充同一个客户同一件商品上一次填入的价格?
--  作者:wealthyy
--  发布时间:2013/10/28 16:02:00
--  
狐爸, help me
--  作者:狐狸爸爸
--  发布时间:2013/10/28 16:04:00
--  

你可以用Find,找出最近一次的记录,然后取值,具体可以看看Find函数的说明:

http://www.foxtable.com/help/topics/0396.htm

 

代码大概如下,细节你可以调整一下:

 

Select Case e.DataCol.Name

    Case "客户","商品"

        if e.Datarow.Isnull("价格") Then \'如果还没有输入价格

           dim dr As DataRow = e.DataTable.Find("客户 = \'" & e.Datarow("客户") & “’ and 商品 = \'" & e.DataRow("商品") & ”‘ And [_Identify] <> “ & e.DataRow("_Identify"), "[_Identify] Desc")

           if dr isnot Nothing Then

               e.Datarow("价格") = dr("价格")

           End if

        end If

End Select

 

如果还是搞不定,就做个简单的例子发上来。


--  作者:wealthyy
--  发布时间:2013/10/29 16:46:00
--  
Select Case e.DataCol.Name
    Case "供应商名称","货品ID"
        Dim dr As DataRow
        dr = DataTable.Find("供应商名称 = \'" & e.DataRow.GetParentRow("供应商名称") & "\' And 货品ID = \'" & e.DataRow("货品ID") & "\'  Desc")
        e.DataRow("单价") = dr("单价")
    End If
End If
End Select



这代码 应该怎么改啊 ???

--  作者:Bin
--  发布时间:2013/10/29 16:59:00
--  
 DataTable.Find("供应商名称 = \'" & e.DataRow.GetParentRow("父表名称")("供应商名称") & "\' And 货品ID = \'" & e.DataRow("货品ID") & "\'  Desc")
--  作者:wealthyy
--  发布时间:2013/10/29 17:09:00
--  
还是 错的啊 


--  作者:Bin
--  发布时间:2013/10/29 17:10:00
--  
你上例子吧,不知道你具体情况.
--  作者:wealthyy
--  发布时间:2013/10/29 17:14:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:无标题.png
图片点击可在新窗口打开查看

--  作者:Bin
--  发布时间:2013/10/29 17:16:00
--  
请上例子.
--  作者:wealthyy
--  发布时间:2013/10/29 17:16:00
--  
上传到哪里去了