PDA

View Full Version : سوال: سوالاتی در باره اکسس



tanha50
شنبه 24 فروردین 1392, 16:02 عصر
دوستان سلام
من تازه کار با اکسس رو شروع کردم .ودرباره پایگاه داده ای که ساخته ام چند سوال دارم .در فرم 5 تکست باکس دارم که همه از نوع number هستند و نتیجه محاسبات در تکست باکس پنجم نمایش داده میشه ولی
1- نتیجه محاسبات در فیلد مربوطه در جدول ثبت نمیشه
2- لازم است برای محتویات تکست باکس پنجم سقفی مشخص کنم مثلا حداکثر عدد 200 در تکست باکس پنجم نمایش داده بشه ودر صورت نیاز در محاسبات بعدی همین عدد 200 اعمال بشه
از راهنمائی تون سپاسگزارم نمونه کارم رو در پایین قرار دادم

Abbas Amiri
شنبه 24 فروردین 1392, 21:00 عصر
سلام
از طریق کدنویسی امکان پذیره . فقط بایستی برای نامگذاری فیلدها و جداول از حروف لاتین استفاده کنید
در رویداد AfterUpdate کنترلهای Sal, Mah, Hafteh, Rooz کد زیر را قرار دهید . همچنین در رویداد Form_Current
اگر اسامی فیلدها را درجداول مثل اسامی فوق تغییر دادید ، باید اسامی تکست باکس هارا هم به همان نامها تغییر دهید


Score = Nz(Sal) * 12 + Nz(Mah) + Nz(Hafteh) * 0.25 + Nz(Rooz) * 0.04

tanha50
یک شنبه 25 فروردین 1392, 06:32 صبح
آقای امیری عزیز سلام
دستور جنابعالی را دقیقاً انجام دادم ولی باز نتیجه در جدول ثبت نمیشه

Abbas Amiri
یک شنبه 25 فروردین 1392, 17:55 عصر
آقای امیری عزیز سلام
دستور جنابعالی را دقیقاً انجام دادم ولی باز نتیجه در جدول ثبت نمیشه

نمونه شما با همان دستور فوق

jamshidbig
یک شنبه 25 فروردین 1392, 19:44 عصر
نمونه شما با همان دستور فوق

من 8 تا جدول دارم مي خواهم در ركورد اول با فرم هر جدول يك به يك اطلاعات درج بشه
ركرود اول مال نفر اول باشه
ارتباط بين جدول ها يك به يك است چه جوري تنظيم كنم

tanha50
جمعه 30 فروردین 1392, 22:19 عصر
جناب آقای امیری ضمن عرض سلام واحترام از لطف شما بسیار سپاسگزارم
در مورد سوال دوم آیا راهی برای این کار هست یا نه ؟ (سقفی برای نمایش عدد در فیلد قرار دهم )
در ضمن من یک کد نوشتم که در اکسس 2003 بدون هیچ مشکلی اجرا می شه ولی در اکسس 2010 عمل نمی کنه . علتش چیه ؟اگه لازم شد بفرمائید کد رو بفرستم

Abbas Amiri
جمعه 30 فروردین 1392, 22:39 عصر
جناب آقای امیری ضمن عرض سلام واحترام از لطف شما بسیار سپاسگزارم
در مورد سوال دوم آیا راهی برای این کار هست یا نه ؟ (سقفی برای نمایش عدد در فیلد قرار دهم )
در ضمن من یک کد نوشتم که در اکسس 2003 بدون هیچ مشکلی اجرا می شه ولی در اکسس 2010 عمل نمی کنه . علتش چیه ؟

تابع زیر را جایگزین کنید


Public Function CalculateScore()
Me.Score = Nz(Sal) * 12 + Nz([Mah]) + Nz([Hafteh]) * 0.25 + Nz([Rooz]) * 0.04
If Me.Score > 200 Then Me.Score = 200
End Function