先在DataRowAdding事件中定义了合同单号自动生成,然后在DataColChanged事件编写以下代码没有想要的效果:为何在当前表中新增行时,《报告管理_客服员》中没有新增行(见图1),而其它几个表《财务报表_会计》、《样品管理_物料员》、《检测记录_检测员》都能自动新增一行,但我再新增一行时,《报告管理_客服员》中即将上次新增的行也补充回来了(见图2)
Select Case e.DataCol.Name
Case "合同单号"
Dim dr As DataRow = DataTables("财务报表_会计").Find("合同单号 = '" & e.OldValue & "'") '定义dr为行,并在表"财务报表_会计"中找出"合同单号"为旧值的第一行
If dr Is Nothing Then '如果没找到(即dr值为False)
dr = DataTables("财务报表_会计").AddNew()'在表"财务报表_会计"中增加一行
dr("合同单号") = e.DataRow("合同单号")'该新增行"合同单号"列的值等于本表新增行"合同单号"列的数值
dr("业务员") = e.DataRow("业务员")'该新增行"业务员"列的值等于本表新增行"业务员"列的数值
dr("合同金额") = e.DataRow("合同金额")'该新增行"合同金额"列的值等于本表新增行"合同金额"列的数值
Else '如果找到
dr("合同单号") = e.DataRow("合同单号")'使该表的"合同单号"数值等于本表"合同单号"列的数值
End If
dr = DataTables("报告管理_客服员").Find("合同单号 = '" & e.OldValue & "'") '在表"报告管理_客服员"中找出"合同单号"为旧值的第一行
If dr Is Nothing Then '如果没找到(即dr值为False)
dr = DataTables("报告管理_客服员").AddNew()
dr("合同单号") = e.DataRow("合同单号")
dr("版式") = e.DataRow("版式")
Dim max As String
Dim idx As Integer
max = DataTables("报告管理_客服员").Compute("Max(编号)","[_Identify] <> " & e.DataRow("_Identify")) '取得最大编号
If max > "" Then '如果存在最大编号
idx = CInt(max) + 1 '获得最大编号后加1
Else
idx = 200 '否则顺序号(起始号)等于200
End If
dr("报告编号") = e.DataRow("场所") & e.DataRow("领域") & Format(idx,"00000")
dr("流水") = "--"
MessageBox.Show("已为'报告管理'表新增一行合同单号为" & e.DataRow("合同单号") & "的数据,默认'领域'为A,'式'为1,版式为'按合同',如需变更请改变'领域'或'式'的值", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information)
Else
dr("合同单号") = e.DataRow("合同单号")
End If
dr = DataTables("样品管理_物料员").Find("合同单号 = '" & e.OldValue & "'") '在表"样品管理_物料员"中找出"合同单号"为旧值的第一行
If dr Is Nothing Then
dr = DataTables("样品管理_物料员").AddNew()
dr("合同单号") = e.DataRow("合同单号")
dr("样品名称") = e.DataRow("样品名称")
Else
dr("合同单号") = e.DataRow("合同单号")
End If
dr = DataTables("检测记录_检测员").Find("合同单号 = '" & e.OldValue & "'") '在表"检测记录_检测员"中找出"合同单号"为旧值的第一行
If dr Is Nothing Then
dr = DataTables("检测记录_检测员").AddNew()
dr("合同单号") = e.DataRow("合同单号")
dr("样品名称") = e.DataRow("样品名称")
Else
dr("合同单号") = e.DataRow("合同单号")
End If
End Select

此主题相关图片如下:不会新增行_图1.jpg


此主题相关图片如下:不会新增行_图2.jpg
