使用带数据控制的 AddNew 更新 RecordSet
Update RecordSet using AddNew with data control
我有一个网格,它从绑定到网格的 'Data' 控件获取数据源。我想将另一个记录集中的数据添加到这个记录集中。
到目前为止我得到的是:
If rs.BOF = False Then
rs.MoveFirst
End If
Do Until rs.EOF
With Dta_Lines.Recordset
.AddNew
!Quantity_Ordered = rs.Fields(2)
!Stock_Code = CStr(rs.Fields(1))
End With
rs.MoveNext
Loop
Dta_Lines.RecordSet.Update
Dta_Lines.RecordSet.Refresh
但是,这并没有正确填充网格。新行保持空白,然后在调用 Refresh
方法后被删除。
如何更改此设置以便网格添加新行并填充 Stock_Code
和 Quantity_Ordered
值?
我的 VB6 知识非常有限,但是,您是否尝试过将 .Update
调用放在 With
块中?
我认为在它的当前结构中,它将添加一个新行但不保存它,因为每个循环都会覆盖先前添加的行,因为更改没有被提交。
Do Until rs.EOF
With Dta_Lines.Recordset
.AddNew
!Quantity_Ordered = rs.Fields(2)
!Stock_Code = CStr(rs.Fields(1))
.Update
End With
rs.MoveNext
Loop
细微的变化,但我认为它应该可以解决问题。
我有一个网格,它从绑定到网格的 'Data' 控件获取数据源。我想将另一个记录集中的数据添加到这个记录集中。
到目前为止我得到的是:
If rs.BOF = False Then
rs.MoveFirst
End If
Do Until rs.EOF
With Dta_Lines.Recordset
.AddNew
!Quantity_Ordered = rs.Fields(2)
!Stock_Code = CStr(rs.Fields(1))
End With
rs.MoveNext
Loop
Dta_Lines.RecordSet.Update
Dta_Lines.RecordSet.Refresh
但是,这并没有正确填充网格。新行保持空白,然后在调用 Refresh
方法后被删除。
如何更改此设置以便网格添加新行并填充 Stock_Code
和 Quantity_Ordered
值?
我的 VB6 知识非常有限,但是,您是否尝试过将 .Update
调用放在 With
块中?
我认为在它的当前结构中,它将添加一个新行但不保存它,因为每个循环都会覆盖先前添加的行,因为更改没有被提交。
Do Until rs.EOF
With Dta_Lines.Recordset
.AddNew
!Quantity_Ordered = rs.Fields(2)
!Stock_Code = CStr(rs.Fields(1))
.Update
End With
rs.MoveNext
Loop
细微的变化,但我认为它应该可以解决问题。