ورود

View Full Version : سوال: اخذ درس



ilreza2050
جمعه 09 تیر 1391, 10:50 صبح
سلام به همگی
من یه فرم بصورت زیر دارم (به این صورت هست که تو Editیه کد درس رو میزنه و یه درس رو توChecklistBoxانتخاب میکنه وبعد دکمه اخذ رو که بزنه درس داخل دیتابیس ذخیره میشه):
88920
حالا چندتا سوال دارم :
1. تکراری اخذ نکنه (یعنی وقتی Editوchecklistboxرو انتخاب کرد واگه تودیتابیس درس موردنظر وجود داشت یه پیغام بده که درس قبلا انتخاب شده)
2. میخوام وقتی کد درس رو توTEditمیزنه به تنهایی درس انتخاب شه بشه ویا اگه فقط تیک یکی از درسای درون checklistboxرو زد بازم درس انتخاب شه(یعنی جداجدا بشه درس رو انتخاب کرد ،هم باTedit وهم با ChecklistBox)
3. اگه تیک هیچکودوم از درسا تو checklistBox زده نشده بود یه پیغام چاپ کنه و بگه درسی انتخاب نشده
ممنون میشم اگه جواب هر کودوم از سوالارو دادید بگید مربوط به کودوم سواله مثلا جواب 1یا2یا3....
ممنون از همه مهندسای مهربون

shedayat
جمعه 09 تیر 1391, 13:41 عصر
سلام.
1- به چند روش شما می تونی این کار رو انجام بدی:
روش اول اینکه بعد از انتخاب هر درس از لیست و اضافه شدن به دیتابیس درس مورد نظر از لیست حذف بشه یا غیر فعال بشه.
روش دوم اینکه قبل ذخیره شدن درس توی دیتابیس شما بیای دیتابیس خودت رو جستجو بکنی و اگه درسی با همچین کدی ثبت شده یه پیغام بده و ...

2- برای این کار شما بعد از وارد کردن کد درس می ری تو دیتابیس اصلی که درسا توش ثبت شده یه جستجو می زنی و درس مورد نظر رو اضافه می کنی (یا اگه بتونی از CheckList کد درسا رو بگیری و تو اون جستجو بکنی که هنوز بهتر)

3- برای این کار هم می تونی با یه حلقه For ببینی که تیک دار هستن یا نه!.

SayeyeZohor
جمعه 09 تیر 1391, 13:50 عصر
مثال :
StudentID = شماره دانشجويي
CourseCode = شماره درس


1. تکراری اخذ نکنه (یعنی وقتی Editوchecklistboxرو انتخاب کرد واگه تودیتابیس درس موردنظر وجود داشت یه پیغام بده که درس قبلا انتخاب شده)
خيلي سادست شما با يك كوئري مي توني مشخص كني كه اين درس براي اين شخص "كه تو عكستون كدي ازش نمي بينم" گرفته شده يا خير با يك Select ساده
IF Select Count(*) FROM DBName Where (StudentID = 1000) AND (CourseCode = 100) > 0
يعني اين كد درس براي اين شخص ثبت شده


2. میخوام وقتی کد درس رو تو TEditمیزنه به تنهایی درس انتخاب شه بشه ویا اگه فقط تیک یکی از درسای درون checklistboxرو زد بازم درس انتخاب شه(یعنی جداجدا بشه درس رو انتخاب کرد ،هم باTedit وهم با ChecklistBox)
خب تو رويداد OnEnter روي Edit خودت و با يك حلقه For اون درس هايي كه تيك زده شده اند رو پيدا مي كني و فانكشن مربوط به ثبت درس خودت رو صدا مي زني


3. اگه تیک هیچکودوم از درسا تو checklistBox زده نشده بود یه پیغام چاپ کنه و بگه درسی انتخاب نشده
اينم shedayat جان توضيح دادن
تلاش كن خوب مي شه
به نظر من مي توني User Friendly تر درستش كني

hamid-nic
جمعه 09 تیر 1391, 19:10 عصر
دوست عزیز انجام چنین اعمالی با TSql سمت سرور و استفاده از stored procedure به راحتی قابل پیاده سازی است .

ilreza2050
شنبه 10 تیر 1391, 17:16 عصر
آقا sayeye zohorو آقا shedayat اگه ممکنه جواباتونو ملموستر کنید و چیزایی هم که گفتید کدشو هم بگید لطفا
الان وقتی درس رو میگیرم آیتم توchecklistbox غیرفعال میشه ،این درست ولی وقتی درسو حذف میکنم دیگه فعال نیست ونمیشه انتخابش کرد
لطفا جوابارو باسورس کد بگید وبنویسید
ممنون

SayeyeZohor
یک شنبه 11 تیر 1391, 06:50 صبح
با اين راهنمايي ها مي توني خودتم بنويسي اما بهتره شما سورس كدتو با بكاپ ديتابيست بگذاري تا چكش كنيم و تو تكميلش راهنماييت كنيم
هيچ كدوم علم غيب نداريم و نمي تونيم سورس كد بنويسيم:متفکر: