View Full Version : طراحی داتا بیس
TEIMOOR
سه شنبه 04 مرداد 1384, 13:20 عصر
سلام دوستان عزیز
با طراحی این داتا بیس مشکل دارم اگه ممکنه شما کمک کنید
البته من تمام فیلدها رو در داخل یک تیبل گذاشتم برای اینکه بهتر ببینید
و روی اون فکر کنید البته به دیسکربشن فیلدها خیلی توجح بشه که خیلی مهمه
سری هم به داتا بیس بزنید تا از فیلدهای که باید بکار گرفته شود مطلع شوید
هر دو ماه یکبار مامور سازمان اب شماره ابسنج را نوشته جهت صدور قبض اب
حال باید ما یک ارشیوی از شماره های ابسنج که قبلا نوشته شده داشته باشیم که به انها مراجعه کنیم در مواقع لازم.
و مشترکین بین 1000 تا 1500 نفر هستند از شما عزیزان خواهشمندم که لطفا مرا
راهنمایی کنید در ساخت داتابیس.
البته تعرفه خاصی هم در نظر گرفته شده که تمام اشتراکها به سه بخش مسکونی غیر مسکونی و واحدهای تجاری تقسیم می شود
برحسب لیتر مکعب در دو ماه یعنی هر ماه 30 لیتر مکعب
مسکونی
از 1 تا 60 لیتر مکعب-------------------------------------------------ریال8000
از 61 تا 80 ریال1000
از 81 تا 100------------------------------------------------------------ریال 1200
از 101 تا 120 ریال 1400
از 121 تا 140 -------------------- ------------------------------------ریال 1600
از 141 لیتر مکعب به بالا ریال 2000
غیر مسکونی در دو ماه
از1 تا 20 ریال 1500
از 21 تا 40------------------------------------------------------ریال 2000
از 41 تا 60 ریال 2500
مصرفی مغازه های تجاری
هر ماه 1500 ریال فقط
بیشابیش از همکاری و راهنمایی شما متشکرم
maleki
چهارشنبه 05 مرداد 1384, 15:43 عصر
اشکالات جدول شما
1- هیچ وقت تو Access اسم فیلدهاتو فارسی نذار اگه میخوای اسم فیلدها فارسی باشه خاصیت Caption اون فیلد رو توش فارسی بنویس مثلا همین عنوانهایی که خودت گذاشتی مثلا نام فیلد اسم مشترک رو بنویس Name و واسه نمایش فارسیش تو خاصیت Caption بنویس نام
2-اگه مقداریک فیلد وابسته به فیلد دیگه باشه هیچوقت اون فیلد رو توی طراحی جدول نذار مثلا اگه فیلد m برابر باشه با فیلد a به اضافه فیلد b اون موقع شما نباید توی طراحی جدولت نمیتونی فیلدی بنام m تعریف کنی. پس باید چیکار کنیم ؟ خیلی ساده یه query درست میکنیم در design view اون یه فیلد جدید تعریف میکنیم به اینصورت b+a:m(اول m رو تایپ کن بعد بنویس a بعلاوه b) چون توی این انجمن کلمات انگلیسی بر عکس تایپ میشن.
توی access به فیلدهایی که مقدارشون وابسته به فیلدهای دیگه هستش میگن calculated field یا فیلد محاسباتی و مزیت اون اینه که نیازی به ذخیره داده های اضافی نیست.
بنظر میرسه شماره اشتراک نباید از نوع autonumber باشه .مگه شما نمیخوای واسه این مشترک در هر ماه اطلاعات وارد کنید پس number باید باشه.
پس بنظرم باید جدولت رو اصلاح کنی و یه query هم بهش اضافه کنی.
TEIMOOR
جمعه 07 مرداد 1384, 03:44 صبح
سلام
اگه میشه لطفا با این اطلاعاتی که من به شما دادم یه داتا بیس یا چند تا تیبل برام مثال بزنی تا از روی مثال شما بتونم داتا بیس رو بسازم البته لازم به ذکر است که بگم فقط هر دو ماه مامور سازمان فقط شماره ابسنج را وارد می کند و اطلاعات باقی دست نمی خورد البته در مورد شماره اشتراک مثلا شما مشترک جدید هستید و فقط برای یکبار به شما شماره اشتراک داده می شود و هیچگاهی هم قابل تغییر نیست
1 ایا برای فیلد تاریخ و فیلد مصرف کل و مصرف ماه قبل ایا یک تیبل جدا لازم است چون فقط هر دو ماه یکبار
فیلدهایی که در عکس با قرمز مشخص شده اضافه می شود می شود و اطلاعات قبلی هم باید در داتا بیس زخیره شود.......
2 در مورد اسم فیلد به فارسی هم از راهنمایی شما متشکرم البته این موضوع را می دانستم خواستم داتابیس را ابلود کنم 2 ساعت باهاش کلنجار رفتم نشد ولش کردم و یک تیبل درست کردم و برای درک بهتر شما با فارسی نوشتم و بصورت عکس گذاشتم....
3 و فیلدهاییی که با ابی مشخص شده اند هم باید لز داخل داتابیس حذف بشن
یه سوال ؟ در مورد محاسبه اب مصرفی و ضرب کردن در فرمول بالا اینو به چه صورت انجام بدم البته این تعرفه ممکن است که عوض بشه هر سال یا 6 ماه یکبار البته محاسبه اب مصرفی به این صورت استش که با یک عکس ضمیمه کردم به صورت بله کانی است.....
باز هم از راهنمایی های شما متشکرم و منتظر نظر شما....
maleki
شنبه 08 مرداد 1384, 16:50 عصر
نمیدونم چقدر توی Access با رابطه ها آشنا هستی (RelationShips) اما بایدبگم این دیتا بیس حتماً باید از رابطه ها توی اون استفاده کنی بصورت زیر:
چون اطلاعات فردی مشتریان ثابت هستش پس یه جدول بساز و توی اون فقط مشخصات مشترک و شماره کنتورشو وارد کن (البته میدونی که باید حتماً یه Primary key داشته باشی)
حالا جدول دومی درست کن و یه فیلد از نوع LookUp به اون اضافه کن که ارتباط ایجاد کنه به همون Primary Key تو جدول مشتریان. حالا بقیه فیلدهاتو بجز فیلد های آبی رنگ خودتو به این جدول اضافه کن .تا اینجا دوتا جدول داری که با هم ارتباط دارن .اما واسه فیلدهای آبی رنگ همونجوری که قبلا گفتم یه Query ایجاد کن و توش دوتا فیلد تعریف کن به همون اسمهای آبی رنگی که خودت مشخص کردی و فرمول محاسبشونو تایپ کن. Query رو ذخیره کن با یه اسم . حالا از Form Wizard توی Accessاستفاده کن و تمامی فیلدهای جدول مشتریان و جدول دوم رو به اون اضافه کن همچنین اون دوتا فیلد توی اون Query رو هم بهش اضافه کن. میبینی که Access یه فرم با یه subForm واست میسازه که دقیقاً همون چیزیه که میخوای.
ببین دوست من امیدوارم این راهنمائی های من کافی باشه چون من فرض کردم که Access رو خوب میدونی اما اینها همش بخشی از کاریه که میخوای انجام بدی حالا توی Report ها میخوای چیکار کنی؟آیا برنامه نویسی توی سطح فرم واسه Eventهارو میدونی .اصلاً پیش بینی مسائل آینده رو انجام دادی؟ منظورم اینه که برنامه نویسی یه بانک اطلاعاتی یه طرف و پیش بینی های اون یه طرفه . مثلا فرض کن شش ماه دیگه بگن ضرائب محاسبه عوض شدن حالا مثلاً اگه تو توی Queryخودت ضرائب رو تغییر بدی تمام محاسبات پیش از اون هم تغییر میکنند یعنی منظورم اینه اگه یه نفر قبض سه ماه پیشش رو بیاره واعتراض داشته باشه و تو بخوای تو برنامت بررسی کنی دیگه این اعداد فعلی مال اون قبض با اون چیزی که توی قبضه تفاوت داره نمیدونم منظورم رو گرفتی یانه ؟ پس سعی کاملا هوشیار عمل کنی تا واست مشکل ساز نشه. بازم سئوال داشتی بپرس .
TEIMOOR
سه شنبه 11 مرداد 1384, 14:54 عصر
سلام
دوست عزیز راستش رو بخواهی یه جورایی توش موندم
اگه امکان داره خواهشمندم که کمکم کنید
در مورد فیلد کویری هم به فورم اضافه نمیشه باید حتما یه تیبل جدا براش درست کنم
و................................................ .......................................؟؟؟؟؟
TEIMOOR
پنج شنبه 20 مرداد 1384, 16:13 عصر
سلام
خوب مثل اینکه تابیک خیلی خوبی نیست و کسی نمی خواد جواب مشکل ما رو بده یا کسی بلد نیست
یا شاید ما خیلی خیلی از قافله عقب هستیم که فکر کنم این درستره...................
ولش کن با یه تابیک جدید شاید مشکلم حل بشه.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.