以文本方式查看主题

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

--  作者:shenhq
--  发布时间:2014/5/30 11:18:00
--  [求助]
想启用输入助手,在列表中设置数据过渡,出现这么个错误,怎么回事呢?
图片点击可在新窗口打开查看此主题相关图片如下:捕获.png
图片点击可在新窗口打开查看

--  作者:Bin
--  发布时间:2014/5/30 11:19:00
--  
不能这样引用子表,只能统计子表.

因为子表数据有多条,你这样系统无法知道你要引用谁

--  作者:shenhq
--  发布时间:2014/5/30 11:39:00
--  
以下是引用Bin在2014-5-30 11:19:00的发言:
不能这样引用子表,只能统计子表.

因为子表数据有多条,你这样系统无法知道你要引用谁

有三个表:

装修项目 ,装修标准,装修明细

关联:装修项目-》装修标准 ,(通过项目编号关联)

关联:装修标准-》装修明细    , (通过项目编号关联)

我想要做到:

 

在“装修明细”的”装修名称" 列输入数据时,启用列表,列表来源为“装修标准”表,但需要设置过滤,即仅列出-当前行所属“装修项目”的”装修标准"

该怎么设置过滤呢?


--  作者:Bin
--  发布时间:2014/5/30 11:42:00
--  
代码侍候 http://www.foxtable.com/help/topics/1435.htm
--  作者:shenhq
--  发布时间:2014/5/30 12:20:00
--  
以下是引用Bin在2014-5-30 11:42:00的发言:
代码侍候 http://www.foxtable.com/help/topics/1435.htm

在表属性的PrepareEdit事件中放上以下代码,清除列属性的列表相关设置。

可是出不来combolist。(注:字段名叫“装附名称”,显示名叫“装修附属物名称”)

 

If e.IsFocusCell  Then \'如果是焦点所在单元格
    If e.Col.Name = "装附名称" Then \'如果正在编辑的是"装附名称"
        \'从装修标准表提取物料名称作为列表项目
        e.Col.Combolist = DataTables("装修标准").GetComboListString("物料名称", "[物料编号] = \'" & e.Row("项目编号") & "\'")
    End If
 End If


--  作者:shenhq
--  发布时间:2014/5/30 12:27:00
--  
以下是引用Bin在2014-5-30 11:42:00的发言:
代码侍候 http://www.foxtable.com/help/topics/1435.htm

是代码写错了,应该是 e.Col.Combolist = DataTables("装修标准").GetComboListString("物料名称", "[项目编号] = \'" & e.Row("项目编号") & "\'")


--  作者:shenhq
--  发布时间:2014/5/30 13:13:00
--  
以下是引用Bin在2014-5-30 11:42:00的发言:
代码侍候 http://www.foxtable.com/help/topics/1435.htm

又产生问题了:

下拉列表解决了,可是选择输入“物料名称”后怎么同时获取 相应 "物料名称" 的 “单价”呢?

注:"物料名称"有重复,"物料编号"不重复,原来使用目录树接收相应列的,用户说使用输入助手效率高,用目录树选择太累。

[此贴子已经被作者于2014-5-30 13:15:38编辑过]

--  作者:有点甜
--  发布时间:2014/5/30 14:11:00
--  
 回复7楼,如果不唯一,怎么可能取到唯一的单价?只有当行可以确认唯一才能取到唯一的单价。
--  作者:Bin
--  发布时间:2014/5/30 14:11:00
--  
参考帮助http://www.foxtable.com/help/topics/1451.htm