以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  关于数据字典不能实时更新的问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=48712)

--  作者:cwf200177
--  发布时间:2014/4/3 15:19:00
--  关于数据字典不能实时更新的问题

我设置了两张表:1.部门信息(包括”部门“ 列) 2.员工信息包括“员工”、“部门”列,两张表用部门字段建立关联。增加员工时,所属部门通过数据字典产生下拉列表。

 

问题是:当我新增了一个部门如“销售部”后,再新增员工时,在下拉列表中无法看到“销售部”,需要重新加载表后才能看到。

 

请问,怎样可以实时的更新数据字典?


--  作者:Bin
--  发布时间:2014/4/3 15:21:00
--  
参考帮助http://www.foxtable.com/help/topics/2653.htm
--  作者:cwf200177
--  发布时间:2014/4/4 11:10:00
--  

开发一套资产管理系统,设计了2张表,一张是部门名称,包括“部门名称”字段,一张是员工信息,包括“员工姓名”、“所属部门”2个字段。通过部门关联。员工所属部门列通过数据字典引用部门名称表中的部门名称字段,按照帮助的方法还是不能实现数据字典的实时更新,必须反复交替点击两张数据表后才能更新。当在窗口中编辑部门信息是,则完全无法更新数据字典

 

设计了一个窗口,对部门信息、员工信息实现编辑,按照帮助的方法在maintablechanged事件中编辑代码如下:

 

If MainTable.Name = "员工信息" Then
    Dim dmp As New TableDataMap
    dmp.DataTable = "部门名称" \'指定数据来源表
    dmp.ValueCol = "部门名称" \'指定取值列
    dmp.DisplayCol = "部门名称" \'指定显示列
    \'指定下拉列表时显示哪些列的数据
    dmp.ListCols = "部门名称"
    dmp.Sort = "部门名称" \'指定排序方式
    Tables("员工信息").Cols("所属部门").DataMap = dmp.CreateDataMap() \'生成并设置DataMap
End

这段代码是否有问题,应该怎么改?


--  作者:Bin
--  发布时间:2014/4/4 11:12:00
--  
呵呵,因为你要点击切换表才会触发maintablechanged事件触发代码.

根据你自身的需求,代码放到对应的地方去,就会生效.

也可以弄一个刷新按钮,代码放进去,点击刷新.