以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助] 过滤条件的设置  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=57915)

--  作者:netfox168
--  发布时间:2014/10/8 10:17:00
--  [求助] 过滤条件的设置
在表的 “列属性 > 列表项目 > 过滤条件” 设置表达式,如:
[订单号] = \'PO-0001\' 

这样可以达到目的。但如果后面的字符是变化的,比如是当前表的当前行的某个字段的值,有可能是 \'PO-0001\',也有可能是 \'PO-0002\' ... 等,应如何设置表达式?

--  作者:有点甜
--  发布时间:2014/10/8 10:20:00
--  

 参考例子 http://www.foxtable.com/help/topics/1459.htm

 


--  作者:netfox168
--  发布时间:2014/10/8 10:58:00
--  
其实这个问题的来源是:
1. 有个订单表,PO-0001 有产品 A、B、C / PO-0002 有产品 D、E、F
2. 订单执行明细表,
  2.1 当 “订单” 列选 PO-0001 时,在 “产品” 列就列出 ABC 三种候选产品。
  2.2 当 “订单” 列选 PO-0002 时,则出现 DEF 候选。

我在订单执行明细表 PrepareEdit 编写代码:

If e.Col.Name = "产品名称" Then
    e.Col.ComboList = DataTables("订单表").GetComboListString("产品名称") 
End If

有没有办法在第2行加入筛选  订单号 = tables("订单执行明细表").Current("订单号") ? 

--  作者:Bin
--  发布时间:2014/10/8 11:07:00
--  
e.Col.ComboList = DataTables("订单表").GetComboListString("产品名称","单号 = \'" & tables("订单执行明细表").Current("订单号") & "\'") 
--  作者:netfox168
--  发布时间:2014/10/8 11:26:00
--  
谢谢!这就是想要的,我有这个概念,但 foxtable 的语法真的不怎么好记,单就那堆引号就把我搞晕了,呵呵!