把代码改成如下。maintable不针对关联表的。
If MainTable.Name = "产品出运明细" Then '如果选择的主表是订单表
Dim dmp As New TableDataMap
dmp.DataTable = "产品字典" '指定数据来源表
dmp.ValueCol = "产品序号" '指定取值列
dmp.DisplayCol = "产品序号" '指定显示列
'指定下拉列表时显示哪些列的数据
dmp.ListCols = "产品序号,产品中文名,海关编码HS,产品英文名,规格型号,单位,外包装"
dmp.Sort = "产品序号" '指定排序方式
Tables("产品出运明细").Cols("产品序号").DataMap = dmp.CreateDataMap() '生成并设置DataMap
Dim dmp1 As New TableDataMap
dmp1.DataTable = "产品字典" '指定数据来源表
dmp1.ValueCol = "产品序号" '指定取值列
dmp1.DisplayCol = "产品序号" '指定显示列
'指定下拉列表时显示哪些列的数据
dmp1.ListCols = "产品序号,产品中文名,海关编码HS,产品英文名,规格型号,单位,外包装"
dmp1.Sort = "产品序号" '指定排序方式
Tables("报关主表.产品出运明细").Cols("产品序号").DataMap = dmp1.CreateDataMap() '生成并设置DataMap
End If