以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助] 取值  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=153516)

--  作者:susanhe
--  发布时间:2020/8/13 21:20:00
--  [求助] 取值
老师,如实例, 求出表A中列 :

--FPrioritized的数量,在表Pricelist中对应FNumber1的打钩数量
--FLastModifiedDate,取表Pricelist中对应FNumber1的最晚一个FLastModifiedDate
--FName,,取表Pricelist中对应FNumber1的最晚一个FLastModifiedDate中的FName
--FPrice,表Pricelist中对应FNumber1的最晚一个FLastModifiedDate中的FPrice

感谢老师。


--  作者:susanhe
--  发布时间:2020/8/13 21:21:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar


--  作者:有点蓝
--  发布时间:2020/8/13 21:24:00
--  
完整表结构发上来看看
--  作者:有点蓝
--  发布时间:2020/8/13 21:33:00
--  
参考:http://www.foxtable.com/webhelp/topics/1472.htm

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



--  作者:susanhe
--  发布时间:2020/8/21 19:44:00
--  
感谢老师,在实际应用中,这个表属性不怎么方便, 可以帮忙改成按钮代码来实现这功能。以提高工作中的方便性。谢谢了。
--  作者:有点蓝
--  发布时间:2020/8/22 9:07:00
--  
把代码复制到按钮里,把列名的判断去掉,e.datarow之的改为当前行如tables(xxx).current即可
--  作者:susanhe
--  发布时间:2020/8/22 9:42:00
--  

有点错误,请老师帮忙修改一下,谢谢。


For Each rr As Row In Tables("GroupPrice")
    Dim Filter As String = "[FNumber] = \'" & e.NewValue & "\'"
     rr("FPrioritized") = DataTables("Pricelist").Compute("count(FNumber)", Filter & " and FPrioritized= true")
    rr("Suppliers") = DataTables("Pricelist").Compute("count(FNumber)", Filter & "")
     rr("FLastModifiedDate") = DataTables("Pricelist").Compute("max(FLastModifiedDate)", Filter & " and FPrioritized= true")
   
    Dim dr As DataRow = DataTables("Pricelist").Find(Filter & " and FLastModifiedDate=#" & e.DataRow("FLastModifiedDate") & "# And FPrioritized = True")
    If dr IsNot Nothing Then
        rr("FPrice") = dr("FPrice")
        rr("FRemark") = dr("FRemark")
        rr("FQuoteTime") = dr("FQuoteTime")
        rr("FName1") = dr("FName")
      
    Else
        rr("FPrice") = Nothing
        rr("FRemark") = Nothing
        rr("FQuoteTime") = Nothing
        rr("FName1") = Nothing
       
    End If
End If

Next

--  作者:有点蓝
--  发布时间:2020/8/22 9:47:00
--  
建议还是多看看基础吧:http://www.foxtable.com/webhelp/topics/1592.htm。都是一些很基础的用法

For Each rr As Row In Tables("GroupPrice").rows

Dim dr As DataRow = DataTables("Pricelist").Find(Filter & " and FLastModifiedDate=#" & rr("FLastModifiedDate") & "# And FPrioritized = True")


--  作者:susanhe
--  发布时间:2020/8/22 10:09:00
--  
谢谢老师,我会慢慢学习,以下也不对了


Dim Filter As String = "[FNumber] = \'" & e.NewValue & "\'"



--  作者:有点蓝
--  发布时间:2020/8/22 10:16:00
--  
参考8楼find里面的条件用法