View Full Version : مشكل در نوشتن يك شرط if
hentjanson
یک شنبه 30 تیر 1387, 22:03 عصر
سلام به همه اساتيد
يك سوال در اين مورد برام پيش اومده كه در روند پياده سازي اون مشكل دارم .
سوال من :
اگه يك فيلد به اسم number داشته باشيم حالا وقتي داخل اين فيلد عددي نيست label 1 مقدار 0 رو نشون بده و اگر عددي داخل اون هست اون اخرين عدد رو +1 كنه و در label1 نشون بده ؟
با تشكر از همه اساتيد كه در اين بحث شركت ميكنند
Hsimple11
یک شنبه 30 تیر 1387, 22:10 عصر
دوست عزیز مگر در پست قبل خود همین سوال را نپرسیده بودید؟
hentjanson
یک شنبه 30 تیر 1387, 22:20 عصر
:خجالت: حواسم نبود ببخشيد ميگم حالا كه پرسيدم ميشه كمكم كنيد
Hsimple11
یک شنبه 30 تیر 1387, 22:23 عصر
کل رکوردهای فیلد اگر خالی باشند لیبل 0 نشان دهد یا فقط رکورد جاری؟
Hsimple11
یک شنبه 30 تیر 1387, 22:28 عصر
بعد اون آخرین عدد رو +1 کنه یعنی چی؟
If MyTable.FieldByname('MyField').IsNull Then
Label1.Caption := '0'
Else Begin
MyTable.Last;
MyTable.FieldByName('MyField').AsString :='+1'
End;
اینجوری منظورتونه؟
hentjanson
یک شنبه 30 تیر 1387, 22:32 عصر
اره اينكه اگه فيلد خالي بود به كاربر با اين ليبل بگم بانك فيلد number موجودي نداره و اگه عددي در اين ثبت شده اخرين ركورد ثبت شده را +1 كنه .
hentjanson
یک شنبه 30 تیر 1387, 23:19 عصر
سلام دوست من از كد شما استفاده كردم ولي وقتي برنامه براي دفعه دوم اجرا ميشه با اين خطا مواجه ميشم .
adotable1.dataset not in edit or insert mode
برنامه خودم رو هم ضميمه ميكنم براي مشاهده و نحوه پياده سازي
SYNDROME
دوشنبه 31 تیر 1387, 06:42 صبح
قبل از اینکه مقداری را داخل MyTable بریزی آن را Edit و سپس Post کن.
موفق باشید
Hsimple11
دوشنبه 31 تیر 1387, 11:04 صبح
سلام دوست من از كد شما استفاده كردم ولي وقتي برنامه براي دفعه دوم اجرا ميشه با اين خطا مواجه ميشم .
adotable1.dataset not in edit or insert mode
برنامه خودم رو هم ضميمه ميكنم براي مشاهده و نحوه پياده سازي
دوست گرمی من دیگه Edit رو ننوشتم خودتان باید متوجه می شدید.
موفق باشید.
Amir_Safideh
دوشنبه 31 تیر 1387, 12:07 عصر
سلام به همه اساتيد
يك سوال در اين مورد برام پيش اومده كه در روند پياده سازي اون مشكل دارم .
سوال من :
اگه يك فيلد به اسم number داشته باشيم حالا وقتي داخل اين فيلد عددي نيست label 1 مقدار 0 رو نشون بده و اگر عددي داخل اون هست اون اخرين عدد رو +1 كنه و در label1 نشون بده ؟
منظورتون چیه از اینکه "اون آخرین عدد رو بعلاوه یک کنه ؟" منظورتون از آخرین عدد همون آخرین رکورد جدوله ؟ اگر آره جواب سوال شما اینه :
If MyTable.FieldByname('MyField').IsNull Then
Label1.Caption := '0'
Else
Begin
MyTable.Last;
Label1.Caption := MyTable.FieldByName('MyField').AsFloat + 1;
End;
اگر هم منظورت همون رکورد جاری هست در اون صورت شما کدی رو که جدول رو به رکورد آخر میبره از کد بالا حذف کن .
--------------
موفق باشید .
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.