PDA

View Full Version : سوال: ارتباط جدول مواد اولیه و مواد تولیدی باهم



u.2u.4u
سه شنبه 18 آبان 1389, 08:42 صبح
سلام به همه دوستان. فرض کنید یک جدول داریم که مواد اولیه به همراه قیمتشون در آن هست مثلا آرد، شکر، روغن و .... یه جدول دیگه هم داریم که مواد تولید شده در آن هست مثلا کیک، بیسگوییت و .... . می خواهیم برای فیلدهای مواد اولیه این جدول از جدول اول استفاده کنیم و بعد هم قیمت تمام شده را به دست بیاوریم. و البته اگر قیمت مواد اولیه تغییر پیدا کرد، این قیمت تمام شده هم خود به خود تغییر کنه.
اولش فکر می کردم راحته ولی بعدش دیدم کار خیلی پیچیده ایه. چون ما چند تا فیلد تو یه رکورد داریم که همشون می خوان از یک جدول مقدار بگیرند. پیشنهاد شما استفاده از چه روشیه؟
فکر نمی کنید این کار را با استفاده از کوئری نویسی و کد نویسی ساده تر بشه انجام داد(نسبت به ارتباط دادن جداول از طریق اکسس)؟ خلاصه اینکه بهترین و حرفه ای ترین و اصولی ترین روشی که پیشنهاد می کنید چیه؟
اگه میشه هر یک از دوستانی که لطف کردن و پاسخ دادند، دوباره سر بزنند تا سوالات تکمیلی را هم پاسخ بدهند:خجالت::چشمک:
متشکر

zzzzzza
سه شنبه 18 آبان 1389, 10:00 صبح
با سلام لطف كنيد تا همين جا كه توضيح داديد برنامه تان را آپ كنيد تا روي آن اصلاحات انجام بشه

u.2u.4u
سه شنبه 18 آبان 1389, 16:29 عصر
این فایل دیتا بیس هست. توضیح اینکه در جدول ملات ها می خواهیم از مواد اولیه جدول مصالح به همون ترتیبی که توضیح دادم استفاده کنیم.

Zero Defect
سه شنبه 18 آبان 1389, 22:14 عصر
سلام

زیاد قصد وارد شدن به حل کردن مشکلتون به واسطه ارائه نمونه رو ندارم

فعلا این کارها رو انجام بدید تا وقتی که کار جلوتر رفت , انشا ا... در اصلاح نمونه به شما کمک بشه :

توضیح : قاعدتا در این مقطع اصلا کل سئوال شما هیچ ارتباطی با برنامه نویسی نداره و باید شما اول خود مساله رو توی یک انجمن مهندسی صنایع مطرح می فرمودید

1 - در محاسبه قیمت تمام شده شما مجاز نیستید که قیمت اقلام رو عطف به ماسبق کنید ( که اگر میکنید , اشتباه , ولی منجر به ساده سازی برنامه میشه )

2 - اقلام مصرفی رو در قالب ستون در داخل جداول نیارید ( کاری که در حال حاضر کردید ) اونها رو به شکل ردیفی در داخل یک جدول بیارید , بعد از تکمیل برنامه متوجه میشید که چرا این روش کاملا اشتباهه

3 - شما نیاز به پیاده سازی BOM در داخل فابل خودتون دارید

( تعداد جداولتون خیلی بیشتر از دو تایی هستش که در نمونه شما وجود داره - فقط خود BOM حداقل 3 جدول نیاز داره )

موفق باشید

u.2u.4u
چهارشنبه 19 آبان 1389, 09:01 صبح
1 - در محاسبه قیمت تمام شده شما مجاز نیستید که قیمت اقلام رو عطف به ماسبق کنید ( که اگر میکنید , اشتباه , ولی منجر به ساده سازی برنامه میشه )

خیلی متشکرم. ولی کامل متوجه نشدم. اگه منظورتون از «عطف بما سبق» این است که قیمت قدیمی نباید در جدول تولیدات باشد، مشکل من دقیقا همین مسئله است. اینکه چه جوری این جداول را به هم ربط بدهم که جدول مواد تولیدی از جدول مصالح مقدار بگیرد. و در صورت تغییر این مقدار در جدول مصالح، قیمت مواد تولیدی هم تغییر کند.


توضیح : قاعدتا در این مقطع اصلا کل سئوال شما هیچ ارتباطی با برنامه نویسی نداره و باید شما اول خود مساله رو توی یک انجمن مهندسی صنایع مطرح می فرمودید

- البته این دیتابیس از لحاظ صنعتی و حسابداری چندان پیچیدگی نداره. یعنی یک محاسبه ساده است که قیمت نهایی ماده مصرفی را از طریق مواد اولیه محاسبه می کنه.


2 - اقلام مصرفی رو در قالب ستون در داخل جداول نیارید ( کاری که در حال حاضر کردید ) اونها رو به شکل ردیفی در داخل یک جدول بیارید , بعد از تکمیل برنامه متوجه میشید که چرا این روش کاملا اشتباهه

این را هم متوجه نشدم. چه جوری این کار را انجام بدهیم؟ یعنی یک جدول جداگانه درست کنیم که اقلام مصرفی داخل اون باشند و بعد اون جدول را به جدول مواد تولید ارتباط بدیم؟

منظور از BOM را هم نمی دونم چیه. البته باز هم بگم این یک جدول پیچیده و حرفه ای حسابداری نیست. یک کار ساده و مبتدی مخصوصا از لحاظ حسابداری و مهندسی صنایعه. خیلی از شما متشکرم.:لبخندساده::لبخندساد ه:

Zero Defect
چهارشنبه 19 آبان 1389, 18:50 عصر
سلام

به طور کامل همه چیز رو زیر سئوال بردید

شما قراره یه ماشین بسازید , درست نیست بگیم : چیزی نیست فقط میخوام یه چیز ساده باشه و چهار تا چرخ داشته باشه !

دوست من , این دیگه اسمش روروک میشه !

الی ایحال نمونه مورد نظر شما به ساده ترین حالتی که میتونستم طراحی کنم که به کار شما هم بیاد ارائه میشه چرا که شما فرمودید ظاهرا با برخی از مباحث آشنایی ندارید

خیلی از سئوالاتی هم که فرمودید , همونطوری که خدمتتون عرض کردم جایگاهش سایت برنامه نویس نیست


اگه منظورتون از «عطف بما سبق»

قیمت هر قلم جنس باید عطف به زمان استفاده خودش بشه , یعنی نه اینکه با تغییر قیمت هر قلم در داخل جدول کل قیمتها تغییر پیدا کنه


یعنی یک محاسبه ساده است که قیمت نهایی ماده مصرفی را از طریق مواد اولیه محاسبه می کنه.
شما میخواید قیمت نهایی محصول تولید شده رو از روی قیمت موارد اولیه مصرفی محاسبه کنید


این را هم متوجه نشدم. چه جوری این کار را انجام بدهیم؟ ....

توی مثال نشون داده شده


منظور از BOM را هم نمی دونم چیه

http://en.wikipedia.org/wiki/Bill_of_materials


یک کار ساده و مبتدی مخصوصا از لحاظ حسابداری و مهندسی صنایعه.

توجه شما رو به این داستان جلب میکنم چرا که شما چندین باره فرمودید : ساده

شیر بی یال ودم و اشکم
مولانا در مثنوی قصه ی مردی را می آورد که به نزد دلاکی رفت تا نقش شیر را بر بازوی او خالکوبی کند اما تا دلاک نیشتر برتن او زد فریاد او برآمد که «کجای شیر را خالکوبی می کنی ؟» دلاک پاسخ داد : «یال شیر را» و مرد ناله کرد:«نمی شود شیر ما یال نداشته باشد ؟!»
دلاک پذیرفت که شیر بی یالی را نقش کند اما همین داستان با دم و شکم شیر نیز تکرار شد و دلاک بی طاقت شد و زبان به اعتراض گشود :


شیر بی یال و دم و اشکم که دید ؟ این چنین شیری خدا کی آفرید ؟!


موفق باشید

u.2u.4u
پنج شنبه 20 آبان 1389, 07:50 صبح
شیر بی یال ودم و اشکم
مولانا در مثنوی قصه ی مردی را می آورد که به نزد دلاکی رفت تا نقش شیر را بر بازوی او خالکوبی کند اما تا دلاک نیشتر برتن او زد فریاد او برآمد که «کجای شیر را خالکوبی می کنی ؟» دلاک پاسخ داد : «یال شیر را» و مرد ناله کرد:«نمی شود شیر ما یال نداشته باشد ؟!»
دلاک پذیرفت که شیر بی یالی را نقش کند اما همین داستان با دم و شکم شیر نیز تکرار شد و دلاک بی طاقت شد و زبان به اعتراض گشود :


شیر بی یال و دم و اشکم که دید ؟ این چنین شیری خدا کی آفرید ؟!
بابا دستتون درد نکنه خیلی فلسفی بود. این یکی را هم نوفهمیدم:لبخند::چشمک: حالا ما اومدیم یه مقدار تواضع به خرج بدیم شما باید اینطوری ضایعمون کنی؟
از این مسائل که بگذریم خیلی نمونه جالبی بود. همون چیزی بود که می خواستم. دستتون درد نکنه. یه سوال دیگه: دسترسی به این رکورد های مرتبط از طریق ابزارهای برنامه نویسی مثلا دلفی چه طوری است؟ مثلا ما می خواهیم بهای مواد اولیه ای را که یک محصول از آن استفاده کرده جمع بزنیم، چطوری به رکوردهای مرتبط با یک رکورد دست پیدا میکنیم؟ آیا باید کوئری نویسی کنیم یا روش ساده تری هم هست؟ (امیدوارم این یکی مربوط به سایت برنامه نویس باشه :متفکر:)

u.2u.4u
پنج شنبه 20 آبان 1389, 08:35 صبح
راستی یه چیز دیگه بگم: کار خودم را خوب توضیح ندادم. در واقع دیتابیس ما، یک دیتابیس فهرست بهاست. و چون استفاده از کلمه «فهرست بها» یه مقدار باعث ابهام های تخصصی می شه و من فکر نمی کردم دوستان متخصصی در این زمینه مثل شما دوست عزیز اینجا تشریف بیارند اون را به این شکل توضیح دادم. در واقع دقیقا هدف ما دقیقا همین هست که بهای روز هریک از اقلام بر اساس مواد اولیه قابل دسترسی باشد. پس از این لحاظ مشکلی وجود ندارد.

u.2u.4u
پنج شنبه 20 آبان 1389, 11:14 صبح
با استفاده از نمونه دیتابیس شما، دیتابیس خودم را اصلاح کردم. خیلی زحمت کشیدید که وقت گذاشتید و طراحیش کردید واقعا متشکرم. اما ظاهرا کوئری که طراحی کردید، قیمت قدیمی مواد اولیه را استفاده می کند و قیمت نهایی را بدست می آورد که همونطور که گفتم در اینکار مورد نیاز من نیست. جدول جدید ضمیمه کردم. حالا دو سوال خیلی مهم من این است که:
1- آیا روش دسترسی به داده ها از طریق ابزارهای برنامه نویسی در چنین جدولی ساده تر می شه؟ چه طوری؟ یا اینکه تنها کاری که ساده می شه این است که با تغییر جدول BOM تمام جداول خود به خود اصلاح می شوند.
2-اگر از این دیتابیس مثلا در دلفی استفاده می کنیم، از این مرحله به بعد(که هنوز کوئری را طراحی نکردیم) آیا در دلفی و با استفاده کوئری های داخل دلفی انجام بشه بهتره یا از درون اکسس؟

u.2u.4u
پنج شنبه 20 آبان 1389, 11:48 صبح
نکاتی را که تا اینجای کار از زحمات Zero Defect یاد گرفتم با اجازشون در یک تصویر که از دیتابیس گرفته شده با توضیحات کامل نمایش می دهم که سایر دوستانی که تاپیک را مشاهده می کنند هم بتونند به سادگی استفاده کنند

Zero Defect
پنج شنبه 20 آبان 1389, 19:20 عصر
سلام


اما ظاهرا کوئری که طراحی کردید، قیمت قدیمی مواد اولیه را استفاده می کند و قیمت نهایی را بدست می آورد که همونطور که گفتم در اینکار مورد نیاز من نیست.

بنده ایرادی توی طراحی اون فایل احساس نمیکنم , شما در داخل فایل قیمت تموم شده هر پارت تولیدی رو با توجه به قیمت زمان تولید اون محصول میتونید ببینید چرا که برنامه در هنگام درج ردیفها قیمت رو از جدول قیمتها گرفته و در داخل برنامه ذخیره میکنه

اگر شما حالتی غیر از این رو هم میخواید ( قیمت بر اساس آخرین قیمت موجود در داخل سیستم ) , این کار همین الان هم امکان پذیره , تعداد مصرف رو که در داخل برنامه ذخیره کردید ، آخرین قیمتها رو هم که دارید محاسبه به راحتی توی پرس و جو امکان پذیره .

.در خصوص سئوالاتتون که مربوط به Delphi بود , شما کل کارهاتون رو باید توی Delphi ( و یا هر محیط IDE دیگه ای ) انجام بدید , فقط باید از جدوال و فایل اکسس استفاده کنید اون هم تنها به منظور ذخیره سازی

خدا نگهدار

u.2u.4u
شنبه 22 آبان 1389, 07:21 صبح
سلام. آقا ما رومون نمیشه. ولی دوباره به یه مشکل برخوردم. ببینید من جدول مصالح ساختمانی را دارم. جدول ملات ها را هم (که از جدول مصالح برای محاسبه قیمت خودش استفاده می کنه)دارم. حالا می خوام یه جدول فعالیت های ساختمانی داشته باشم که بیاد و از هر دو اینها استفاده کنه: مثلا برای محاسبه قیمت یک دیوار ، هم از قیمت ملات و هم از قیمت آجر استفاده کنه، به نظر شما اینجا چه کار کنم؟ بهترین کار چیه؟
60142

60145

Zero Defect
سه شنبه 25 آبان 1389, 19:00 عصر
سلام

در همون ابتدا خدمتتون عرض کردم که نحوه ساختارتون مشکل داره حالا به مشکل دیگه ای برخورد کردید

در همین ابتدا سنگهامون رو با هم وا بکنیم : شما برخی اصطلاحات رو ناخواسته دارید جابجا به کار میبرید که همین امر میتونه ایجاد مشکل کنه برای روش شدن و پیدا کردن زبانی مشترک به مثال متوسل میشیم

سیمان : یک کالا یا ماده اولیه هستش
ملات : یک محصول و یا کالای نیمه ساخته هستش ( ترکیبی از چند ماده اولیه ولیکن به عنوان یک محصول نهایی نبوده و نیازمند طی پروسه تکمیلی میباشد )
آجر : محصول نهایی

توضیح : با خود نامها کار ندارم بلکه با عناوینشون کار دارم , در یک پروسه فرضی دیگه ممکنه سیمان محصول نهایی باشه و الی آخر , تنها هدف مشخص نمودن وضعیت سه واژه : ماده اولیه , کالای نیمه ساخته و محصول نهایی هستش

در خصوص مشکل پیش اومده در خصوص ملات , شما دو حالت میتونید داشته باشید

1 - ملات رو به عنوان یک کالای نیمه ساخته در نظر بگیرید و قیمت اون رو به صورت مجزا و با توجه به BOM اون به دست بیارید
2 - ملات رو به عنوان یک ماده اولیه با قیمت تمام شده اولیه مشخصی در داخل سیستم درج کنید ( این قیمت اولیه رو محاسبه میکنید و همونطوری که دیگر اقلام مصرفی رو معرفی کردید اون رو هم معرفی میکنید )


موفق باشید

u.2u.4u
چهارشنبه 26 آبان 1389, 18:58 عصر
سلام. خیلی خوشحالم که برگشتید:گیج: آخه دیگه داشتم ناامید می شدم. ببینید در سیستم من آجر، سیمان و .... ماده اولیه، ملات ماده نیمه ساخته و آیتم هایی مثل دیوار، تخریب یک مساحت مشخص و هر عمل نهایی ساختمانی دیگر محصول نهایی هستند. خوب ممکنه یک دیوار هم از ملات که نیمه ساخته هست استفاده کنه هم مقداری سیمان اضافی هم برای ساختنش نیاز باشه. پس یه مقدار کار پیچ در پیچ شده. من با استفاده از راهنمایی هایی که شما قبلا کردید اومدم و یه جورایی ملات ها و مواد اولیه را با هم ادغام کردم در دیتابیسی که در اینجا قرار می دهم. با توجه به اینکه معمولا راههای حرفه ای بهتری از راه حل های سرهم بندانه ما هست :اشتباه: می خواستم اگه ممکنه شما هم یه بررسی بکنید که آیا این راه حل به اندازه کافی مناسب هست یا باید راه مناسب تری انتخاب کنم.
خیلی از کمک های پرحوصله شما متشکرم

Zero Defect
چهارشنبه 26 آبان 1389, 20:34 عصر
سلام


من با استفاده از راهنمایی هایی که شما قبلا کردید اومدم و یه جورایی ملات ها و مواد اولیه را با هم ادغام کردم در دیتابیسی که در اینجا قرار می دهم.

شما در انتخاب راه مختار هستید ولی هیچ کدوم از مواردی که اشاره کردم رو توی برنامتون نمیبینم و راه جل خودتون رو دارید پیش میرید
مثالی که براتون قرار دادم کارتون رو انجام میده فقط باید از این راهنمایی استفاده میکردید :

- ملات رو به عنوان یک ماده اولیه با قیمت تمام شده اولیه مشخصی در داخل سیستم درج کنید ( این قیمت اولیه رو محاسبه میکنید و همونطوری که دیگر اقلام مصرفی رو معرفی کردید اون رو هم معرفی میکنید )
در ادامه توی همون مثال ملات رو هم اضافه کردم تا متوجه منظورم بشید

راستش رو بخواید اصلا متوجه دیتا بیس آخریتون نشدم و متوجه نشدم که چه کار خواستید توش انجام بدید

روی همون مثال کار کنید زودتر به نتیجه میرسید

موفق باشید