PDA

View Full Version : سوال: راهنمایی در مورد بهینه سازی رابطه در جداول!!!؟؟



a_j0321
سه شنبه 27 مهر 1389, 12:58 عصر
باسلام

تصویر relation مربوط به چند جدول ضمیمه گردیده، آیا روشی برای بهینه سازی و حذف سیکل از پایگاه داده وجود دارد؟

توضیح:
1- هر Groups برای گروهبندی Products.
2- هر Order شامل چندین OrderDetail که هر یک شامل متناسب با یک یا چند Products.
**3- جدول Discount برای ذخیره کردن کد تخفیف است:
هر کد تخفیف می تواند محدود به یک یا چند Product و (یا) یک یا چند Group و (یا) برای کلیه محصولات و (یا) کلیه گروه ها (در این حالت NULL) باشد.
هر کد تخفیف به یک (یا چند) جنس از فاکتور (OrderDetail) و یا به یک یا چند فاکتور (Order) می تواند تعلق گیرد.

با تشکر

حمیدرضاصادقیان
سه شنبه 27 مهر 1389, 13:54 عصر
سلام.لطفا تصویر مربوطه را به همراه لیست فیلدها upload بفرمائید.

a_j0321
سه شنبه 27 مهر 1389, 15:11 عصر
تصویر upload گردید،
با تشکر

حمیدرضاصادقیان
شنبه 01 آبان 1389, 15:43 عصر
لطف کنید لیست فیلدهارو هم قرار بدید. چون اینجوری نمیشه متوجه شد چندتا فیلد باهم رابطه دارند و ایا میشه یک جدول بشه یا باید تفکیک بشه و...

a_j0321
یک شنبه 02 آبان 1389, 09:20 صبح
با تشکر

عکس جدید با جزئیات ...

حمیدرضاصادقیان
یک شنبه 02 آبان 1389, 09:56 صبح
سلام.اگر نمیخواستید تخفیف هارو به این شکل ذخیره کنید میتونستید یک فیلد در جدول order detail بذارید و برای هر کالا تخفیفشو ثبت کنید.در غیر اینصورت الان طراحی شما مناسبه و مشکلی نداره.

a_j0321
یک شنبه 02 آبان 1389, 16:07 عصر
سلام و با تشکر.
آره میشد ولی یه مورد هست، اگه به تصویر دقت کنید می بینید 2 تا سیکل بوجود آمده، در صورتیکه کلاً وجود سیکل مناسب نیست و این چه موقعی دچار مشکل میکنه؟ وقتی که می خواید به طور مثال در برنامه تون از چند لایگی استفاده کنید و در لایه دیتا اکسس یک Data logic Component داشته باشید که رابط ها رو هم به طور کامل داشته باشه و اگر این لایه به طور مثال از Linq to SQL استفاده کنه زمانی که نیاز به Serialize برای انتقال به لایه بالاتر وجود دارد به خاطر وجود این سیکل دچار خطا می شه و کلاً آبجکت Serialize نمیشه!!!؟

برای جلوگیری از این مشکل 2 راه وحود داره یکیش حذف سیکل است دوم استفاده از Custom object Component به جای LINQ2SQl.
از اونجا که حذف سیکل راحت تر انجام میشه ترجیح اول همینه ولی تا الان که چیزی به ذهن خودم نرسیده ، احتمالاً باید از همون راه حل دوم استفاده کنم.

با تشکر

حمیدرضاصادقیان
دوشنبه 03 آبان 1389, 09:59 صبح
سلام.در حالت تخفیف ممکنه ما برای یک جنس تخفیف اعمال کنیم ولی در فاکتوری که به مشتری میدیم تخفیفی لحاظ نکنیم؟
یا امکانش هست وقتی برای یک گروه تخفیف درنظر میگیریم ، هنگامی که از اجناس اون گروه جنسی می فروشیم تخفیف در نظر گرفته نشود.؟
بعد اگر مقدار تخفیف کل گروه یک عدد باشه و مقدار تخفیف کالاهای زیر مجموعه اون گروه یک عدد دیگه، شما چطوری تخفیف اون کالا رو لحاظ می کنید؟

a_j0321
یک شنبه 09 آبان 1389, 14:54 عصر
عذر می خوام از اینکه دیر جواب دادم.

خیر در فاکتور هم تخفیف لحاظ می شود.

بله ممکنه برای گروهی تخفیف در نظر بگیریم ولی در فاکتور وارد نشه (کد تخفیف بر روی جنس یا گروه به این معنی که این کد مخصوص گروه و یا کالای دیگر نیست).

تخفیف وقتی در نظر گرفته می شه که کد تخفیف در فاکتور وارد بشه (حالا می تونه روی کالا باشه یا روی جمع کل فاکتور)

با تشکر