麻烦各位老师,我在一个表里想要增加一行,点增加行时,就显示如下图片提示,而后就退出,请各位老师帮忙。
此主题相关图片如下:qq截图20170207163025.png
表属性DataColChanged事件中有如下代码:
'在表中输入商品编码,在商品资料找出对应此商品的其他项自动填入表中
If e.DataCol.Name = "商品编码" Then '当商品编码输入时
'在产品表找出该产品
Dim dr As DataRow
dr = DataTables("商品信息").Find("商品编码 = '" & e.DataRow("商品编码") & "'" )
'在商品资料表中找到对应商品时,自动填入.
If dr IsNot Nothing '如果找到, 则设置各列内容
e.DataRow("商品名称")= dr("商品名称")
e.DataRow("商品规格")= dr("商品规格")
e.DataRow("生产企业")= dr("生产企业")
e.DataRow("单位")= dr("标准单位")
End If
End If
'在表中输入供应商编码时,在供应商资料表中找出对应的供应商并自动填入表中,其他解释同上.
If e.DataCol.Name = "供应商编码" Then '发生变化的是产品编号吗?
'在产品表找出该产品
Dim dr As DataRow
dr = DataTables("供应商信息").Find("供应商编码 = '" & e.DataRow("供应商编码") & "'" )
If dr IsNot Nothing '如果找到, 则设置各列内容
e.DataRow("供应商名称")= dr("供应商名称")
End If
End If
'在表中输入供应商名称时,找出相应供应商编码并自动填入表中
If e.DataCol.Name = "供应商名称" Then '发生变化的是产品编号吗?
'在产品表找出该产品
Dim dr As DataRow
dr = DataTables("供应商信息").Find("供应商名称= '" & e.DataRow("供应商名称") & "'" )
If dr IsNot Nothing '如果找到, 则设置各列内容
e.DataRow("供应商编码")= dr("供应商编码")
End If
End If
'在表中输入客户编码时,在客户资料表中找出对应的客户并自动填入表中,其他解释同上.
If e.DataCol.Name = "客户编码" Then '发生变化的是产品编号吗?
'在产品表找出该产品
Dim dr As DataRow
dr = DataTables("客户信息").Find("客户编码 = '" & e.DataRow("客户编码") & "'" )
If dr IsNot Nothing '如果找到, 则设置各列内容
e.DataRow("客户名称")= dr("客户名称")
End If
End If
'在表中输入客户名称时,找出相应客户编码并自动填入表中
If e.DataCol.Name = "客户名称" Then '发生变化的是产品编号吗?
'在产品表找出该产品
Dim dr As DataRow
dr = DataTables("客户信息").Find("客户名称= '" & e.DataRow("客户名称") & "'" )
If dr IsNot Nothing '如果找到, 则设置各列内容
e.DataRow("客户编码")= dr("客户编码")
End If
End If
表属性CurrentChanged事件中有如下代码:
'以下代码是设置模拟关联表用代码
'1.批发表1
If Forms("关联表").Opened() '一定要判断用于模拟关联表的窗口是否已经打开
Dim cls() As String = {"商品名称","供应商名称","客户编码","进价"} ' 假设checkbox控件名称和标题一样
Dim t As Table = Tables("关联表_Table批发表1")
With Tables("返利合同")
If .Current Is Nothing Then
t.Filter = "False"
Else
Dim filter As String = "1=1"
For Each c As String In cls
If Forms("关联表").Controls(c).Checked And t.Cols.Contains(c) And .Cols.Contains(c) Then
filter &= " and " & c & "='" & .Current(c) & "'"
End If
Next
If filter = "1=1" Then filter = "False"
t.Filter = filter
End If
End With
End If
'2.入库表1
If Forms("关联表").Opened() '一定要判断用于模拟关联表的窗口是否已经打开
Dim cls() As String = {"商品名称","供应商名称","客户编码","进价"} ' 假设checkbox控件名称和标题一样
Dim t1 As Table = Tables("关联表_Table入库表1")
With Tables("返利合同")
If .Current Is Nothing Then
t1.Filter = "False"
Else
Dim filter As String = "1=1"
For Each c As String In cls
If Forms("关联表").Controls(c).Checked And t1.Cols.Contains(c) And .Cols.Contains(c) Then
filter &= " and " & c & "='" & .Current(c) & "'"
End If
Next
If filter = "1=1" Then filter = "False"
t1.Filter = filter
End If
End With
End If
'3.批发表2
If Forms("关联表").Opened() '一定要判断用于模拟关联表的窗口是否已经打开
Dim cls() As String = {"商品名称","供应商名称","客户编码","进价"} ' 假设checkbox控件名称和标题一样
Dim t1 As Table = Tables("关联表_Table批发表2")
With Tables("返利合同")
If .Current Is Nothing Then
t1.Filter = "False"
Else
Dim filter As String = "1=1"
For Each c As String In cls
If Forms("关联表").Controls(c).Checked And t1.Cols.Contains(c) And .Cols.Contains(c) Then
filter &= " and " & c & "='" & .Current(c) & "'"
End If
Next
If filter = "1=1" Then filter = "False"
t1.Filter = filter
End If
End With
End If
'4.入库表2
If Forms("关联表").Opened() '一定要判断用于模拟关联表的窗口是否已经打开
Dim cls() As String = {"商品名称","供应商名称","客户编码","进价"} ' 假设checkbox控件名称和标题一样
Dim t1 As Table = Tables("关联表_Table入库表2")
With Tables("返利合同")
If .Current Is Nothing Then
t1.Filter = "False"
Else
Dim filter As String = "1=1"
For Each c As String In cls
If Forms("关联表").Controls(c).Checked And t1.Cols.Contains(c) And .Cols.Contains(c) Then
filter &= " and " & c & "='" & .Current(c) & "'"
End If
Next
If filter = "1=1" Then filter = "False"
t1.Filter = filter
End If
End With
End If