ورود

View Full Version : طراحی برنامه جهت شرکت تولیدی (نمونه ضمیمه میباشد ) حتماٌ بخوانید



Ali_Fallah
یک شنبه 10 مهر 1384, 19:59 عصر
یک شرکت تولیدی با محصولا ت متفاوت و مشتریان مختلف داریم. محصولاتی مانند مس ، طلا ، نیکل ، روی ، فولاد
لذا این شرکت روزانه ممکن است فقط یک یا دو نوع محصول تولید نموده و این محصولات را بفروش رسانده یا اینکه در انبار محصولات انبار کند.
در رابطه با موضوع فوق تعدادی Table از قرار زیر طراحی کردم.
1-Table به عنوان تاریخ که دارای یک فیلد بوده وکلید میباشد(Table اصلی ) وبقیه به این Table ارتباط یک به چند دارند.
2-Table به عنوان تولید که شامل تاریخ (جهت ارتباط با Table اصلی) ، نام محصول تولید شده ، میزان تولید
3-Table به عنوان فروش که شامل تاریخ (جهت ارتباط با Table اصلی) ، نام محصول ، خریدار ، میزان فروش (تناژ)
فرض کنید این شرکت در یک تاریخ معین مثل 06/07/84 یک نوع محصول بنام نیکل تولید کرده و 3 نوع محصول که در انبار داشته به مشتریان خود فروخته است .
مشتری a محصول نیکل بمقدار 10 تن --- مشتری b محصول فولاد بمقدار 15 تن – مشتری c نقره 8 تن

من یک کوئری ایجاد کرده فیلدهای Table های تولید وفروش و Table اصلی را در آنجا آورده ام
ولی چون رکوردها برای فروش بیشتر از تولید میباشد لذا به همان مقدار نیز برای تولید رکورد ایجاد کرده ومقدار دهی مینماید.
البته اینجانب تمام انواع کوئری ها را امتحان کرده ام حتی از نوع union ولی جواب خوبی نگرفتم.
میخواهم کوئری ایجاد کرده واز آن کوئری گزارش ایجاد نمایم که در یک صفحه شامل موارد زیر باشد:
1-موجودی محصولات بهمراه نام محصول و میزان موجودی از ابتداء تا تاریخ مورد نظر به غیر از محصول فروخته شده
2-محصول تولید شده بهمراه نام محصول ومیزان تولیدی ( فقط برای همان تاریخ یعنی یکروز )
3-محصول فروخته شده بهمراه نام محصول ومیزان بفروش رسیده و نام خریدار ( فقط برای همان تاریخ یعنی یکروز )

گزارشات براساس تاریخ باشد یعنی هر تاریخی که وارد کردیم از ابتدای شروع بکار شرکت تا تاریخ مورد نظر را گزارش دهد طبق موارد ذکر شده بالا
گزارش بصورت محدوده بین دو تاریخ نیز باشد یعنی ممکن است شرکت از سال 80 شروع بکار کرده باشد ولی ما بخواهیم از سال 83 تا 84 را گزارش کنیم. تاریخ را نیز بتوانیم از طریق فرم یا کوئری وارد کرده سپس گزارش نمایش داده شود.
گزارش جا خالی نداشته باشد و پشت سر هم باشد ( در یک صفحه ) یعنی یکی در میان نباشد منظور نحوه نمایش رکودها درصفحه گزارش می باشد.

موارد 2 و 3 فقط مربوط به یکروز باشد
یعنی فرض کنید امروز 3/6/84 میباشد مورد 2 و3 مربوط به همین تاریخ ولی مورد 1 از ابتداء شروع بکار شرکت تا امروز( میزان فروش منهای میزان تولید)

ضمناً نمونه برنامه نیز در صورتیکه سوالم واضح نباشدضمیمه کرده ام با تشکر lafot

Heydari865
یک شنبه 10 مهر 1384, 22:43 عصر
دوست عزیز مشکل از Query نیست بلکه مشکل از طراحی جداول و روابط آنهاست
تمامی جداول شما به یک تاریخ وابسته است ( جدول date )، در حالی که برای محصولات تولیدی
(جدول Ttolid ) باید یک جدول Master خاص خودش داشته باشی و به همین ترتیب برای جدول Ttahvil.
لزومی ندارد که این دو جدول به یک جدول Date وابسته باشند و همچنین اصلاً نیازی به رابطه این دو جدول با جدول Tdatamasol نیست.
پس از رفع این اشکالات بقیه موارد به خودی خود حل می شود

sarami
یک شنبه 10 مهر 1384, 23:27 عصر
ببین عزیز سئوال شما خیلی کلی است ولی برای راهنمائی خدممت عرض کنم که شما باید برای ورود و خروج یک table که کار کاردکس رو برای شما انجام میده داشته باشین از اونجا که بنده تو زمینه مشابهی کار کردم و روشهای مختلفی رو تست کردم توصیه میکنم که یک فیلد ورود محصول داشته و یک فیلد خروج که تاریخ و بقیه رو نیز تو همون table ذخیره میکنین و از تفاضل جمع ورود بر جمع خروج موجودی انبار محصول رو بدست میارین نمی دونم شرکتی که توش هستین حاضره برا این کار هزینه ای پرداخت کنه یا نه ولی اگه مایل بودین از اونجا که تولید شما هم بصورت بچ(batch) و کارگاهیست نه خط تولید نرم افزاری که ما به مدت 3 سال روش کار کردیم توانایی مدیریت موجودی مواد و محصول را داراست کدینگ . درخت محصول .انبار که شامل صدور حواله ورود و خروج وتامین مواد و ارزیابی پیمانکارو........ خیلی امکانات دیگه است که اگه مایل بودی میتونی باهام از طریق پیام خصوصی و تلفن ارتباط داشته باشیم

Ali_Fallah
دوشنبه 11 مهر 1384, 20:29 عصر
دوست عزیزم آقای صارمی سلام
عرض کنم که من این برنامه را برای جای خاصی نمیخواهم ضمنآ شرکتی که در آنجا مشغولم آنها از دیتا بیس در sql و دلفی استفاده مینمایند. هر چند خودم حدس زدم بدلیل پیچیده بودن سوال(از نظر خودم) و عنوان آن این شبهه را ایجاد نماید.حال اگر کمی در این زمینه کمکم نمائید بسیار سپاسگزارم
-------
به دوست خوبم آقای حیدری 865 نیز عرض سلام وادب دارم عرض کنم با چند نفر از دوستانم که صحبت کردم آنها هم دقیقاً مطلب شما را بیان کردند که اصلا وجود تیبلی بنام date معنایی نداشته که تمامی تیبلهای دیگه به آن ارتباط داشته باشند. به هرحال این برنامه خیلی وقت منو گرفت . هرچند خودم اکسس را تقریباً بلد هستم! ولی نمیدانم چرا دراین مورد درجا زدم؟
از لطف شما ممنونم دوستدارشما lafot ----- منتظر هستم !!

Ali_Fallah
پنج شنبه 14 مهر 1384, 19:30 عصر
یک نفر نیست از روی کرم به من یاری دهد پرسش فوق دیده و یه جوابی بدهد
مرحمت بنموده و از روی صفا درس اکسس دهد و یه ثوابی ببرد.