以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]datamap的用法 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=144236) |
-- 作者:chnfo -- 发布时间:2019/12/14 16:50:00 -- [求助]datamap的用法 抱歉,用手机写的,无法换行,各位大神将就看 表A中的Kind列(数据类型=数值)使用了数据字典,类型定义为标准,在数据字典中定义了比如三个值 1------办公用品 2------设备 3------书 现在希望用代码定义第4个值 Dim dmp As DataMap = Tables("表A").Cols("Kind").DataMap dmp.add(dmp.count + 1,"专用工具") 在命令窗口中执行了这个代码以后,去Kind列下拉,确实出现了专用工具的选项。 但再去点Kind列,查看列属性的数据字典定义,并没有4----专用工具。 如何让定义一直生效呢? [此贴子已经被作者于2019/12/14 16:58:25编辑过]
|
-- 作者:有点蓝 -- 发布时间:2019/12/14 17:22:00 -- 这个没有办法的。如果要一直有必须在列属性里设置。一般代码设置的只能在运行时有效,关闭项目后也就没有了 |
-- 作者:chnfo -- 发布时间:2019/12/14 17:36:00 -- 这样使用字典,有些场景颇不方便呀,得多加表,唉 |
-- 作者:chnfo -- 发布时间:2019/12/16 16:35:00 -- 在全局代码中设定了 Public DMA As new DataMap 在表A的V列,设置了一个字符串 1:北京;2:上海;3:广州;4:上海 自定了一个函数NewDM dim x as new datamap dim dr as datarow = args(0) dim cl as string = args(1) for each x as string in dr(cl).split(";") x.add(cint(x.split(":")(0)),x.split(":")(1)) next return x 在命令窗口执行: DMA.clear dma = function("NewDM",datatables("A").datarows(0),"V") 然后运行 tables("A").cols("XXX").datamap = dma 很奇怪的是:可以在表A中下拉XXX列,然后选中北京,显示的是1,而不是“北京” |
-- 作者:有点蓝 -- 发布时间:2019/12/16 16:54:00 -- 函数NewDM dim x2 as new datamap dim dr as datarow = args(0) dim cl as string = args(1) for each x as string in dr(cl).split(";") x2.add(cint(x.split(":")(0)),x.split(":")(1)) next return x2
|
-- 作者:chnfo -- 发布时间:2019/12/16 16:58:00 -- 我的代码跟你的完全一样啊,没看出来有啥子区别哟。前面是用手机敲的,所以看起来有点乱。不知道为什么每次手机输入的都不能换行 在全局代码中设定了 Public DMA As new DataMap 在表A的V列,设置了一个字符串 1:北京;2:上海;3:广州;4:上海 自定了一个函数NewDM dim x as new datamap dim dr as datarow = args(0) dim cl as string = args(1) for each y as string in dr(cl).split(";") x.add(cint(y.split(":")(0)),y.split(":")(1)) next return x 在命令窗口执行: DMA.clear dma = function("NewDM",datatables("A").datarows(0),"V") 然后运行 tables("A").cols("XXX").datamap = dma 很奇怪的是:可以在表A中下拉XXX列,然后选中北京,显示的是1,而不是“北京”
[此贴子已经被作者于2019/12/16 17:04:54编辑过]
|
-- 作者:有点蓝 -- 发布时间:2019/12/16 17:01:00 -- 肯定不一样啊,请认真核对 |
-- 作者:chnfo -- 发布时间:2019/12/16 17:06:00 -- 不好意思,小错误,变量x重复,但是结果还是跟之前一样的 下拉仍然只显示1,而不是北京
[此贴子已经被作者于2019/12/16 17:06:01编辑过]
|
-- 作者:有点蓝 -- 发布时间:2019/12/16 17:08:00 -- XXX列必须是整数列。 |
-- 作者:chnfo -- 发布时间:2019/12/16 17:26:00 -- 我设的微整,也应当没问题呀 |