VB中DataGrid中编辑问题 急急急!!!---先谢谢了

xiwei2006 2008-02-25 12:55:59
我是想在DataGrid编辑,修改的数据直接保存到数据库中,代码如下:

Private Function mfnLoadData() As Boolean
On Error GoTo ErrorHandle
Dim rst As ADODB.Recordset
Dim mstrSQl As String

'''通过Grid显示VwkPF037B数据
mstrSQl = "Select TType,Whse,Loc,Per_30Prov,Per_60Prov,Per_90Prov,"
mstrSQl = mstrSQl & " Per_180Prov , Per_360Prov, Over_Per_360Prov"
mstrSQl = mstrSQl & " From VwkPF037B"
Set rst = New ADODB.Recordset
rst.Open mstrSQl, gCnn_Conn, adOpenDynamic, adLockOptimistic
Set Grid.DataSource = rst

With Grid
.Refresh
.Columns(0).Width = 500
.Columns(1).Width = 1000
.Columns(2).Width = 1000
.Columns(3).Width = 900
.Columns(4).Width = 900
.Columns(5).Width = 900
.Columns(6).Width = 900
.Columns(7).Width = 900
.Columns(8).Width = 1100

.Columns(0).Caption = "TYPE"
.Columns(1).Caption = "WHSE"
.Columns(2).Caption = "LOC"
.Columns(3).Caption = "30Prov%"
.Columns(4).Caption = "60Prov%"
.Columns(5).Caption = "90Prov%"
.Columns(6).Caption = "180Prov%"
.Columns(7).Caption = "360Prov%"
.Columns(8).Caption = "> 360Prov%"

.Width = 8200
End With

mfnLoadData = True
Exit Function
ErrorHandle:
MsgBox Err.Number & "," & Err.Description & "----mfnLoadData", _
vbOKOnly + vbCritical, "PF037"
mfnLoadData = False
End Function

Private Sub Grid_Error(ByVal DataError As Integer, Response As Integer)
Response = 0
End Sub

当我修改4-5条记录中值的时候,,有2个问题出现:
1、鼠标不可以选择在往下选择其它行的值了,只能停留在最后修改的这行的上。
2、退出窗体出现“Row Cannot be located for updating.same values may have been changed since it was last read.”
望高手们指点一二,非常感谢。
...全文
86 点赞 收藏 2
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
xiwei2006 2008-02-25
非常谢谢,可以了。
回复
shockcqyc 2008-02-25
"无法为更新定位行.一些值可能在最后一次读取后已经改变."
有几个检查方法:
1、检查表有没有设主键,设一个主键试试
2、检查默认值,删掉默认值试试
3、每次操作都先rst.close;再rst.open
回复
相关推荐
发帖
VB基础类
创建于2007-09-28

7489

社区成员

VB 基础类
申请成为版主
帖子事件
创建了帖子
2008-02-25 12:55
社区公告
暂无公告