ورود

View Full Version : ویرایش اطلاعات مورد جستجو در فرم دیگر



parisa.s
دوشنبه 08 شهریور 1389, 14:03 عصر
سلام
من میخوام وقتی کاربر میخواد روی رکورد مسافر خاصی ویرایش انجان بده ابتدا برحسب کد مسافر اطلاعات مسافر رو در یک فرم دیگه ببینه و بتونه این ویرایش ها رو ثبت کنه
من جستجو رو انجام میدم پیدا هم میکنه داخل فرم ویرایش هم نشون میده
ولی در فرم ویرایش وقتی ثبت ویرایش رو میزنم ERror میده که نمیتونه فیلدهای ایم فرم رو update کنه
این کد مربوط به جستجومه

If txtcode.Text = "" Then
b = MsgBox("etelat baraye jostejo kafi nist")
Else
Adodc1.RecordSource = "select * from moshtari where kodmoshtari like '" & txtcode.Text & "%'"
Adodc1.Refresh

If Adodc1.Recordset.EOF = False Then
Label2.Visible = False
Label2.Caption = Str(Adodc1.Recordset.RecordCount) + " mored peida shod"
a = MsgBox(Label2.Caption)
frmafzmosafer.Adodc1.Recordset.Fields!kodmoshtari = Adodc1.Recordset.Fields!kodmoshtari
frmafzmosafer.Adodc1.Recordset.Fields!Name = Adodc1.Recordset.Fields!Name
frmafzmosafer.Adodc1.Recordset.Fields!family = Adodc1.Recordset.Fields!family
frmafzmosafer.Adodc1.Recordset.Fields!namepedar = Adodc1.Recordset.Fields!namepedar
frmafzmosafer.Adodc1.Recordset.Fields!kodmeli = Adodc1.Recordset.Fields!kodmeli
frmafzmosafer.Adodc1.Recordset.Fields!shomareshena sname = Adodc1.Recordset.Fields!shomareshenasname
frmafzmosafer.Adodc1.Recordset.Fields!tel = Adodc1.Recordset.Fields!tel
frmafzmosafer.Adodc1.Recordset.Fields!adres = Adodc1.Recordset.Fields!adres
frmafzmosafer.Adodc1.Recordset.Fields!tariktavalod = Adodc1.Recordset.Fields!tariktavalod
frmafzmosafer.Adodc1.Recordset.Fields!meliat = Adodc1.Recordset.Fields!meliat
frmafzmosafer.Adodc1.Recordset.Fields!tedadhamrah = Adodc1.Recordset.Fields!tedadhamrah
frmafzmosafer.Adodc1.Recordset.Fields!mahaletavalo d = Adodc1.Recordset.Fields!mahaletavalod
frmafzmosafer.Adodc1.Recordset.Fields!tarikhevorod = Adodc1.Recordset.Fields!tarikhevorod
frmafzmosafer.Adodc1.Recordset.Fields!shomareotagh = Adodc1.Recordset.Fields!shomareotagh

frmafzmosafer.Show

Else
a = MsgBox("peyda nashod")
End If
End If
واینم کد مربوط به دکمه ثبت ویرایشم
Adodc1.Recordset.Update
خیلی گشتم ولی پیزی پیدا نکردم کمکم کنین.مرسی
بچه ها خواهش می کنم زودتر جوابمو بدین
پروژه ی پایان ترممه:ناراحت::ناراحت::افسرد ::گریه:

M.T.P
دوشنبه 08 شهریور 1389, 15:33 عصر
سلام
قبل از دستور ویرایش رکورد در فرم ویرایش باید اول جدول رو به شماره مسافر فیلتر کنید تا رکوردست 1 آیتم بیشتر واسش نمونه بعد رکورد رو ویرایش کنید.

parisa.s
دوشنبه 08 شهریور 1389, 17:02 عصر
سلام
قبل از دستور ویرایش رکورد در فرم ویرایش باید اول جدول رو به شماره مسافر فیلتر کنید تا رکوردست 1 آیتم بیشتر واسش نمونه بعد رکورد رو ویرایش کنید.

مرسی که میخ.این کمکم کنین
من هم Adodc1.Recordset.Filter = "kodmoshtari ='" & txtcode.Text & "'"
و هم frmafzmosafer.Adodc1.Recordset.Filter = "kodmoshtari ='" & txtcode.Text & "'"
را امتحان کردم یعنی هم ado مربوط به فرم جستجو و هم فرم ویرایشم رو فیلتر کردم ولی باز هم این error را میده
اینم erooresh
run time error' -2147217887(80040e21)':
cannot update 'kodmoshtari';field not updatable

خواهش می کنم زود جواب بدین
مرسی از همه مخصوصن شما

M.T.P
دوشنبه 08 شهریور 1389, 17:28 عصر
جدول رو چطوری باز میکنید؟
ReadWrite باید باشه/

parisa.s
دوشنبه 08 شهریور 1389, 17:53 عصر
جدول رو چطوری باز میکنید؟
ReadWrite باید باشه/

ارتباط شی ado را از طریق پنجره ی propertice انجام دادم نه تو کد نویسی
نمیدونم کجا باید read write کنم?

M.T.P
دوشنبه 08 شهریور 1389, 18:11 عصر
شما وقتی build رو واسه تعریف ConnectionString میزنید ،، پنجره Advanced رو از پنجره Propertis بررسی کنید ، اونجا نحوه دسترسی به بانک مشخص میشه.

راه دیگه اینکه قبل از باز کردن adodc در Form_Load متود Adodc1.Mode رو تنظیم کنید.

parisa.s
دوشنبه 08 شهریور 1389, 18:34 عصر
شما وقتی build رو واسه تعریف ConnectionString میزنید ،، پنجره Advanced رو از پنجره Propertis بررسی کنید ، اونجا نحوه دسترسی به بانک مشخص میشه.

راه دیگه اینکه قبل از باز کردن adodc در Form_Load متود Adodc1.Mode رو تنظیم کنید.

این دستور رو قبل از اینکه بیاد داخب فرم جستجو یعنی بعر از پیدا کردن و هم هنگام Update نوشتم ولی همون Error را میده:افسرده:
frmafzmosafer.Adodc1.Mode = adModeReadWrite

M.T.P
دوشنبه 08 شهریور 1389, 18:52 عصر
دوست عزیز شما فیلدی رو میخواید Update کنید که AutoNumber هست. فیلدهای AutoNumber آپدیت نمیشن.

M.T.P
دوشنبه 08 شهریور 1389, 19:05 عصر
توصیه من اینه که برنامه بصورت خودکار و غیر تکراری کدمشتری بده و هیچ وقت کاربر نتونه تغییرش بده چون ممکنه کدمشتری ها تکراری شن و موقع فیلتر کردن به مشکل بربخورید.
از 1000 شروع کنید به کدمشتری دادن ، هربار که میخواین یه مشتری جدید رو تعریف کنید کد آخرین مشتری رو بخونید بعلاوه یک کنید و به مشتری جدید اختصاص بدید.

parisa.s
دوشنبه 08 شهریور 1389, 19:06 عصر
دوست عزیز شما فیلدی رو میخواید Update کنید که AutoNumber هست. فیلدهای AutoNumber آپدیت نمیشن.


درسته
حق با شما بود
وقتی Auto number را عدد کردم درست شد.
خیلیییییییییییییی ازتون ممنونم
:لبخندساده: