谢谢版主,我还想问的更细一点,我的实际工况是:
建立了一个模式窗口,把新增的数据都通过模式窗口中各项文本框和combobox框输入,然后复制对应的值去到数据表里各列,数据表在窗口中是禁止直接编辑的。例图如下:

此主题相关图片如下:1.jpg

在窗口按钮“新增”的click代码中,以“项目场地”为例,我的思路是通过跨表引用,先看输入或选取在combobox里的项目场地是否在“场地信息”数据表中已存在的,
case 1, 如果在,则在“项目信息”表中addnew,直接把“场地信息”里该行的关联编号赋值到“项目信息”表的新增行中
case 2, 如果是新的项目场地,在“场地信息”表里没有记录过的,则先在“场地信息”表里addnew,把该值赋值到此表中,通过代码自动生成独立的关联编号,然后再把此“场地信息”表里该新增行的关联编号赋值到“项目信息”表的addnew新行里。
问题来了,在预览操作时,出现case2的情况时,“场地信息”表能得到正确赋值与计算出关联编号,在“项目信息”表里也能新增行,但不能得到该新增项目场地的赋值,部分代码如下,请帮忙看一下问题出在哪?
Dim r As Row = Tables("项目信息").addnew
Dim dr1 As DataRow = DataTables("场地信息").Find("[场地名称] = '" & xmcd.value & "'") {说明,xmcd为项目场地combobox里的值}
If dr1 IsNot Nothing Then {说明:如果找到了同名的产品行,也就是dr不是Nothing}
r("项目场地编号") = dr1("场地关联编号")
Else
Dim dr1x As Row = Tables("场地信息").AddNew
dr1x("场地名称") = xmcd.value
r("项目场地编号") = dr1x("场地关联编号")
End If
说明:“场地信息”表与“项目信息”表在“场地名称”这一列本身是父子关联的,并通过列属性里的数据字典取值“场地关联编号”(整数型)这一列的值,显示“场地名称”(字符型)列的内容。
是不是问题出在列属性数据表字典里?该怎么解决呢?
谢谢!!