PDA

View Full Version : خطا در ویرایش بعد از درج رکورد در اکسس با استفاده از دیتاست



rezaei manesh
چهارشنبه 28 فروردین 1387, 11:20 صبح
سلام
من در یک پروژه که بانک اکسس داره اطلات رو در داخل یک جدول در فرم دیتا ست می ریزم و اعمال اضافه و حذف و ویرایش رو روی اون انجام می دم .
اما وقتی که یک رکورد اضافه می کنم و بعد می خوام یک رکورد دیگر رو ویرایش کنم خطا می ده رکورد مورد نظر پیدا میشه ویرایش می شه اما وقتی می خوام بانک رو آپدت کنم خطا می ده و مجبورم قبل اپدیت یک بار دیگر fill کنم اداپتور رو تا درست بشه و این خیلی بده جالب اینجاست که من از همین روش در برنامه های که بانک اس کیو ال دارن دارم استفاده می کنم و هیچ مشکلی هم نیست
این کد پر کردن جدول در دیتا ست


myform.dset1.ShopTableAdapter.Fill(.DsetDataEntery .Tables(strTableNameDset))

و این کد مربوط به اضافه و ویرایش


Dim NewRw As Boolean
Dim Drow As DataRow
If enmMode = Mode.Add Then
Drow = myform.dset1.Tables(Me.strTableNameDset).NewRow
NewRw = True
Else
Dim Key(0) As Object
Key(0) = DecId
Drow = myform.dset1.Tables(Me.strTableNameDset).Rows.Find (Key)
If Not Drow Is Nothing Then
Drow.BeginEdit()
NewRw = False
Else
Return 0
End If
End If
Drow("Desc") = ISNullOrNothing(Me.StrDesc, "").Trim
'...
If Not NewRw Then
Drow.EndEdit()
Else
myform.dset1.Tables(Me.strTableNameDset).Rows.Add( Drow)
End If
adp.Update(myform.dset1.Tables(Me.strTableNameDset )) 'ERROR Here
myform.dset1.Tables(Me.strTableNameDset).AcceptCha nges()

خطای هم که میده میگه 0 رکورد آپدیت شده و از حرفا

reza6384
چهارشنبه 28 فروردین 1387, 16:34 عصر
سلام. به نظر من وقتی برنامتون Error میده ، یه Try و Catch بذارین و Ex.Message رو توی یه Textbox بریزین و بعد متن Textbox رو توی سایت www.Microsoft.Com (http://www.Microsoft.Com) جستجو کنید، اینجوری خیلی زودتر به نتیجه می رسید. اینجا بیشتر Solution برای ساخت ارائه میشه تا برای Debug. البته این نظر شخصی منه، اگر چند روز از پستتون گذشت و پستی اضافه نشد اینکارو انجام بدین.