'查询后通过临时表生成数据字典
Dim q As new QueryBuilder
q.TableName = "部门查询"
q.ConnectionName = Mydata
q.Se lectString = "SE LECT 部门编码,部门名称,负责人 From {dept}"
q.Build
Dim dmp As New TableDataMap
dmp.DataTable = "部门查询" '指定数据来源表
dmp.ValueCol = "部门编码" '指定取值列
dmp.DisplayCol = "部门名称" '指定显示列
'指定下拉列表时显示哪些列的数据
dmp.ListCols = "部门编码,部门名称,负责人"
dmp.Sort = "部门编码" '指定排序方式
Tables(e.Form.name & "_主表").Cols("部门编码").DataMap = dmp.CreateDataMap() '生成并设置DataMap
通过上面的代码可以生成数据字典实现后台数据与前面显示的不一样,而且源表名称更改显示也会自动修改,这个功能很好
但是这个datamap只能出现一个简单的下拉录入窗口,
我的录入窗口是通过目录树勾选节点生成的
此主题相关图片如下:目录树勾选.jpg

后台的实际数据是011002.02,021023.08这样多个的节点组合值,而前台显示的是要可以识别的中文名称
这样要如何?实查询表中有五个字段,分别是部门编码,部门名称,角色编号,角色名称,组合值
生成目录树根据后台实际值显示为需要的中文名称我都可以实现,只是要如何实现前台显示值与后台不同这个功能?
谢谢!