以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  datamap  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=136735)

--  作者:lxmoffice
--  发布时间:2019/6/20 10:22:00
--  datamap
老师,

您好!

我发现一个很奇怪的问题, 我在项目属性currenttablechanged里设置了表"生产安排"中列"零件ID"的下拉选项. 

如果我在代码中加入dmp.filter ="[入库日期] Is Null", 每次切换表后"零件ID"中有一部份行数据(之前选择)不显示出来, 

如果我删除代码中dmp.filter ="[入库日期] Is Null", 每次切换表后显示正常. (见附件)

请问这是什么原因, 如何解决.


If MainTable.Name = "生产安排" Then
    Dim dmp As New TableDataMap
    dmp.DataTable ="生产计划" \'指定数据来源表
    dmp.ValueCol = "零件ID" \'指定取值列
    dmp.DisplayCol = "零件ID" \'指定显示列
    dmp.ListCols = "零件ID,生产批次,模具编号,图纸编号,零件名称" \'指定下拉列表时显示哪些列的数据
    dmp.Sort = "零件ID DESC" \'指定排序方式
    dmp.filter ="[入库日期] Is Null"
   Tables("生产安排").Cols("零件ID").DataMap = dmp.CreateDataMap() \'生成并设置DataMap
End If


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




--  作者:有点甜
--  发布时间:2019/6/20 10:26:00
--  

 

数据字典,如果你生成的内容不存在,就会显示空白的。

 

 


--  作者:lxmoffice
--  发布时间:2019/6/20 10:31:00
--  
老师,

谢谢回复!

有什么办法解决吗? 列值之前是存在的, 因为datamap下拉太多, 所有需要把一部份(已入库)过滤掉以方便选择. 

--  作者:有点甜
--  发布时间:2019/6/20 10:32:00
--  
以下是引用lxmoffice在2019/6/20 10:31:00的发言:
老师,

谢谢回复!

有什么办法解决吗? 列值之前是存在的, 因为datamap下拉太多, 所有需要把一部份(已入库)过滤掉以方便选择. 

 

你选择以后,重新修改数据字典为全部数据即可。


--  作者:lxmoffice
--  发布时间:2019/6/20 10:50:00
--  
老师,

您好!

在哪里设置代码? 是在表的选择事件里吗?

--  作者:有点甜
--  发布时间:2019/6/20 10:56:00
--  
以下是引用lxmoffice在2019/6/20 10:50:00的发言:
老师,

您好!

在哪里设置代码? 是在表的选择事件里吗?

 

比如 afterEdit、datacolchanged 事件等,重新生成数据字典。