Foxtable(狐表)用户栏目专家坐堂 → 引用列如何设置下拉选项?


  共有75人关注过本帖树形打印复制链接

主题:引用列如何设置下拉选项?

帅哥哟,离线,有人找我吗?
happyft
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1634 积分:13445 威望:0 精华:0 注册:2014/7/29 19:09:00
引用列如何设置下拉选项?  发帖心情 Post By:2021/1/14 11:56:00 [只看该作者]

打开窗口的afterLoad代码:
Tables(e.Form.name & "_主表").Cols("科目名称").ComboList = "A|B|C"
或者
Tables(e.Form.name & "_主表").Cols("科目名称").ComboList = "..."

上面的"科目名称"列是从其他数据表left join显示出来的引用列,不是主表的数据列,此时用上面的两行代码都不起作用
引用列或者表达式列都不能那样设置吗?

谢谢!




 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:63085 积分:319804 威望:0 精华:8 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/1/14 13:32:00 [只看该作者]

可以的。如果之后重新fill或者设置datasource,需要重新调用上面的代码

 回到顶部
帅哥哟,离线,有人找我吗?
HappyFt
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1634 积分:13445 威望:0 精华:0 注册:2014/7/29 19:09:00
  发帖心情 Post By: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 = "..."

打开窗口后却出现不了那个带三个点的小按钮呢?

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:63085 积分:319804 威望:0 精华:8 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/1/14 14:06:00 [只看该作者]

生成的表格是锁定的吧

Tables("收款单_主表").AllowEdit = True
Tables("收款单_主表").Cols("科目名称").ComboList = "..."

 回到顶部
帅哥哟,离线,有人找我吗?
HappyFt
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1634 积分:13445 威望:0 精华:0 注册:2014/7/29 19:09:00
  发帖心情 Post By:2021/1/14 14:11:00 [只看该作者]

不是,表中还有其他列都可以修改的,相同的代码,只要是换成任何一列数据列,就完全正常,但这样引用进来的列就不行

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:63085 积分:319804 威望:0 精华:8 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/1/14 14:15:00 [只看该作者]

我测试没有问题,请上传实例说明

 回到顶部
帅哥哟,离线,有人找我吗?
HappyFt
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1634 积分:13445 威望:0 精华:0 注册:2014/7/29 19:09:00
  发帖心情 Post By:2021/1/15 16:17:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:test.foxdb

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:test.rar


那个压缩文件是sql数据库脚本文件(数据库登录名:ABC,密码:888)


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



 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:63085 积分:319804 威望:0 精华:8 注册:2015/6/24 9:21:00
  发帖心情 Post By: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
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1634 积分:13445 威望:0 精华:0 注册:2014/7/29 19:09:00
  发帖心情 Post By:2021/1/15 17:00:00 [只看该作者]

不能用查询表,因为这个窗口是用于录入数据的,实际表中有科目代码列,但因为不直观,所以fill时根据科目代码提取科目名称来作为显示用(隐藏了科目代码列),
主要是不想再让科目代码列显示出来,不然就可以直接用科目代码来出现弹窗选择

 回到顶部