以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]跨表数据引用问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=120628) |
-- 作者:dongji2 -- 发布时间:2018/6/20 21:10:00 -- [求助]跨表数据引用问题 我做了个模具换装管理的东西,有两个关键的数据表,一个是模具在机表,一个是模具换装记录表,当换装时,通过扫描二维码输入安装设备,安装人员,安装时间条形码后,换装记录表自动增加一行,录入上述数据,同时模具在机表引用上面的数据,当某一台设备换模具后,它自动更新当前设备上的模具编号,安装时间,安装人员信息。表截图见附件。 我在换装记录表里采用了datacolchanged事件,代码如下: Select Case e.DataCol.Name Case "模具编号","安装设备" Dim dr As DataRow = e.DataRow If dr.IsNull("模具编号") OrElse dr.IsNull("安装设备") Then dr("换型时间") = Nothing Else dr("换型时间") = Date.now() dr("序号") = e.DataTable.Compute("Max(序号)") + 1 End If End Select If e.DataCol.Name = "安装设备" Then If e.newvalue = "turbulator1" Then Dim r As DataRow = DataTables("模具在机表").DataRows(0) r("安装人员") = e.DataRow("换型人员") r("安装时间") = e.DataRow("换型时间") r("安装人员") = e.DataRow("换型人员") ElseIf e.newvalue = "turbulator2" Then Dim r As DataRow = DataTables("模具在机表").DataRows(1) r("在机模具") = e.DataRow("模具编号") r("安装时间") = e.DataRow("换型时间") r("安装人员") = e.DataRow("换型人员") ElseIf e.newvalue = "turbulator3" Then Dim r As DataRow = DataTables("模具在机表").DataRows(2) r("在机模具") = e.DataRow("模具编号") r("安装时间") = e.DataRow("换型时间") r("安装人员") = e.DataRow("换型人员") ElseIf e.newvalue = "turbulator4" Then Dim r As DataRow = DataTables("模具在机表").DataRows(3) r("在机模具") = e.DataRow("模具编号") r("安装时间") = e.DataRow("换型时间") r("安装人员") = e.DataRow("换型人员") ElseIf e.newvalue = "turbulator5" Then Dim r As DataRow = DataTables("模具在机表").DataRows(4) r("在机模具") = e.DataRow("模具编号") r("安装时间") = e.DataRow("换型时间") r("安装人员") = e.DataRow("换型人员") ElseIf e.newvalue = "turbulator6" Then Dim r As DataRow = DataTables("模具在机表").DataRows(5) r("在机模具") = e.DataRow("模具编号") r("安装时间") = e.DataRow("换型时间") r("安装人员") = e.DataRow("换型人员") ElseIf e.newvalue = "turbulator7" Then Dim r As DataRow = DataTables("模具在机表").DataRows(6) r("在机模具") = e.DataRow("模具编号") r("安装时间") = e.DataRow("换型时间") r("安装人员") = e.DataRow("换型人员") ElseIf e.newvalue = "turbulator8" Then Dim r As DataRow = DataTables("模具在机表").DataRows(7) r("在机模具") = e.DataRow("模具编号") r("安装时间") = e.DataRow("换型时间") r("安装人员") = e.DataRow("换型人员") ElseIf e.newvalue = "turbulator9" Then Dim r As DataRow = DataTables("模具在机表").DataRows(8) r("在机模具") = e.DataRow("模具编号") r("安装时间") = e.DataRow("换型时间") r("安装人员") = e.DataRow("换型人员") Else Dim r As DataRow = DataTables("模具在机表").DataRows(9) r("在机模具") = e.DataRow("模具编号") r("安装时间") = e.DataRow("换型时间") r("安装人员") = e.DataRow("换型人员") End If End If 我的问题是,模具在机表里的安装人员列大多时候是空白的,数据引用不过来,但偶尔是可以的,请教高手赐教!!! |
-- 作者:有点甜 -- 发布时间:2018/6/20 21:14:00 -- 跨表引用,参考
http://www.foxtable.com/webhelp/scr/1451.htm
http://www.foxtable.com/webhelp/scr/1453.htm
|