以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 引用列如何设置下拉选项? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=159933) |
||||
-- 作者:happyft -- 发布时间:2021/1/14 11:56:00 -- 引用列如何设置下拉选项? 打开窗口的afterLoad代码: Tables(e.Form.name & "_主表").Cols("科目名称").ComboList = "A|B|C" 或者 Tables(e.Form.name & "_主表").Cols("科目名称").ComboList = "..." 上面的"科目名称"列是从其他数据表left join显示出来的引用列,不是主表的数据列,此时用上面的两行代码都不起作用 引用列或者表达式列都不能那样设置吗? 谢谢! |
||||
-- 作者:有点蓝 -- 发布时间:2021/1/14 13:32:00 -- 可以的。如果之后重新fill或者设置datasource,需要重新调用上面的代码 |
||||
-- 作者:HappyFt -- 发布时间:2021/1/14 14:02:00 -- 表是这样fill的 Tables(“收款单_主表”).Fill("Select a.*,(select top 1 科目名称 from bugetAcc x0 where a.科目代码 = x0.科目代码) As 科目名称 from 收款单a where
a.[_Identify] = 0",Mydata,False) 在后面用了 Tables("收款单_主表").Cols("科目名称").ComboList = "..." 打开窗口后却出现不了那个带三个点的小按钮呢?
|
||||
-- 作者:有点蓝 -- 发布时间:2021/1/14 14:06:00 -- 生成的表格是锁定的吧 Tables("收款单_主表").AllowEdit = True Tables("收款单_主表").Cols("科目名称").ComboList = "..."
|
||||
-- 作者:HappyFt -- 发布时间:2021/1/14 14:11:00 -- 不是,表中还有其他列都可以修改的,相同的代码,只要是换成任何一列数据列,就完全正常,但这样引用进来的列就不行 |
||||
-- 作者:有点蓝 -- 发布时间:2021/1/14 14:15:00 -- 我测试没有问题,请上传实例说明 |
||||
-- 作者:HappyFt -- 发布时间:2021/1/15 16:17:00 --
那个压缩文件是sql数据库脚本文件(数据库登录名:ABC,密码:888) |
||||
-- 作者:有点蓝 -- 发布时间:2021/1/15 16:43:00 -- 这种列是不能编辑的,所以无法录入和点击按钮。改为查询表即可 tbl.Fill("Select a.*,(select top 1 科目名称 from 科目 x0 where a.科目代码 = x0.科目代码) As 科目名称 from 收款单 a where a.[_Identify] = 0","test",True)
[此贴子已经被作者于2021/1/15 16:42:46编辑过]
|
||||
-- 作者:HappyFt -- 发布时间:2021/1/15 17:00:00 -- 不能用查询表,因为这个窗口是用于录入数据的,实际表中有科目代码列,但因为不直观,所以fill时根据科目代码提取科目名称来作为显示用(隐藏了科目代码列), 主要是不想再让科目代码列显示出来,不然就可以直接用科目代码来出现弹窗选择
|