ورود

View Full Version : مشکل در حذف و جستجوی رکورد ها با شی دیتا



mozamel
دوشنبه 21 اردیبهشت 1388, 02:05 صبح
سلام
راستش من خیلی وقته از این سایت استفاده میکنم تا حالا پاسخ سوالاتم رو پیدا میکردم ولی اینبار هم مشکلم خیلی فوری هست هم این که هرچی گشتم چیزی پیدا نکردم (شایدم چون با استرس بوده!)
مشکل اینه که من این کد ها رو نوشتم تا به یه بانک اکسس وصل بشن و عملیات جستجو و حذف رو انجام بدن ! ولی متاسفانه تنها در صورتی جواب میگیرم که رکورد مورد نظر اولین رکورد بانک باشه ! در واقع کد وارد حلقه ها نمیشه


If Combo1.Text = "اطلاعات پرسنلی" And Text1.Text <> "" Then
MSF1.Clear
MSF1.TextMatrix(0, 0) = "شماره"
MSF1.TextMatrix(0, 1) = "نام و نام خانوادگی"
MSF1.TextMatrix(0, 2) = "سمت"
For i = 1 To Data2.Recordset.RecordCount
If Data2.Recordset.Fields(0).Value = Text1.Text Then
MSF1.TextMatrix(1, 0) = Data2.Recordset.Fields(0).Value
MSF1.TextMatrix(1, 1) = Data2.Recordset.Fields(1).Value
MSF1.TextMatrix(1, 2) = Data2.Recordset.Fields(2).Value
Data2.Recordset.MoveNext
Else
Data2.Recordset.MoveNext
End If
Next
MSF1.Visible = True
ElseIf Combo1.Text = "حضور غیاب" And Text1.Text <> "" Then
j = 0
MSF1.TextMatrix(0, 0) = "شماره"
MSF1.TextMatrix(0, 1) = "تاریخ"
MSF1.TextMatrix(0, 2) = "روز های شنبه"
For i = 1 To Data1.Recordset.RecordCount
j = j + 1
If Data1.Recordset.Fields(0).Value = Text1.Text Then
MSF1.TextMatrix(j, 0) = Data1.Recordset.Fields(0).Value
MSF1.TextMatrix(j, 1) = Data1.Recordset.Fields(1).Value
MSF1.TextMatrix(j, 2) = Data1.Recordset.Fields(2).Value
Data1.Recordset.MoveNext
Else
Data1.Recordset.MoveNext
End If
Next
MSF1.Visible = True
Else
MsgBox ("اطلاعات را تکمیل کنید ")
End If[/QUOTE]




Private Sub Command2_Click()
Data2.Recordset.Edit
Do
If Data2.Recordset.Fields(0).Value = Text1.Text Then
Data2.Recordset.Delete
Data2.Recordset.Close
Else
Data2.Recordset.MoveNext

End If

Loop While Data2.Recordset.EOF = False

End Sub


پیشاپیش از کمک هاتون ممنون

mozamel
دوشنبه 21 اردیبهشت 1388, 11:15 صبح
:-| کسی نظری نداره ؟

karimkpg
دوشنبه 21 اردیبهشت 1388, 17:10 عصر
این قطعه برنامه تا اولین فیلد مورد نظر جهت حذف رفته و آن را پاک میکند و سپس چون به رکورد بعدی رجوع نمی شود حلقه ی بی نهایت شکل می گیرد برای رفع این مشکل بعد از عمل حذف دستور Data2.Recordset.MoveNext را بنویس

mozamel
دوشنبه 21 اردیبهشت 1388, 18:17 عصر
ممنون مشکلم حل شد دست شما درد نکنه :چشمک: