PDA

View Full Version : موجودی کالا



جان شارپ
دوشنبه 04 شهریور 1392, 19:10 عصر
سلام من یک فاکتور دارم که دارای فیلدهای مشخصات کالا و موجودی و تاریخ هستش
میخام یه دستوری بنویسم که وقتی یه تاریخی میدم موجودی انبار رو تا همون تاریخ نشونم بده

مثلاً از تاریخ 1/1/92 تا تاریخ 1/5/92 من یه کالای رو فروختم
حالا میخام بدونم که تا تاریخ 1/4/92 چقدر موجودی دارم
میشه راهنماییم کنید. ممنونتون میشم
سپاس

silver2000
سه شنبه 05 شهریور 1392, 10:41 صبح
اگه مشکلتون توی جستجوی زمان هاست با دستور زیر میشه اینکارو انجام داد
Select Mojudi From Anbar Where Date between DateTime1 And DateTime2

مهدی هادیان2
سه شنبه 05 شهریور 1392, 12:54 عصر
بسم الله الرحمن الرحیم
با سلام

من یک فاکتور دارم که دارای فیلدهای مشخصات کالا و موجودی و تاریخ هستش
فیلد موجودی رو تا اون جایی که براتون امکان داره سعی کنید فیلدی براش در نظر نگیرید؛ چون فیلد مشتق هست و از فیلدهای دیگه بدست میاد.
امکان داره تو آپدیت کردن هاش به مسئله برخورد کنید.
موفق باشید.

محمد سلیم آبادی
پنج شنبه 07 شهریور 1392, 00:40 صبح
سلام من یک فاکتور دارم که دارای فیلدهای مشخصات کالا و موجودی و تاریخ هستش
میخام یه دستوری بنویسم که وقتی یه تاریخی میدم موجودی انبار رو تا همون تاریخ نشونم بده

مثلاً از تاریخ 1/1/92 تا تاریخ 1/5/92 من یه کالای رو فروختم
حالا میخام بدونم که تا تاریخ 1/4/92 چقدر موجودی دارم
میشه راهنماییم کنید. ممنونتون میشم
سپاس

باید دید چگونه جداول را طراحی کردین و چه داده هایی را ذخیره کردین. بعد از آن باید فهمید قواعد و اصول کاریتون چگونه بوده.

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

مثلا جدولی دارید به نام سفارشات (Orders) میخواهید برای مشتری X از کالای Y به اندازه 100 واحد کالا ثبت کنید. ابتدا باید توسط جدول محصولات (Products) بررسی کنید که آیا به این تعداد از کالای Y در انبار وجود دارد یا خیر. و در کنار آن اعتبار فعلی مشتری را نیز بررسی کنید که آیا به اندازه آن محصولات اعتبار مالی دارد یا خیر.
در صورت Okay بودن دو مورد قبل همزمان با ثبت سفارش در جدول Orders باید اعتبار مشتری (در جدول Customers) کاهش یافته و در کنار آن تعداد موجودی کالای Y از جدول Products نیز کاهش پیدا کند.
این به هنگام سازی ها باید داخل یک تراکنش صورت بگیره تا یکپارچگی داده ها و جامعیت داده ها حفظ بشه.
اینطور نشه که از کالای Y به تعداد 100 واحد فروش بره اما موجودی آن 100 واحد کاهش پیدا نکنه.

مهدی هادیان2
پنج شنبه 07 شهریور 1392, 10:05 صبح
بسم الله الرحمن الرحیم
با سلام

راه درست اینه که بعد از ثبت هر سفارشی (فروش یا خرید) تعداد موجودی هر کالا را که در جدول کالاها قرار داره بروز بشه.
به نظر شما بایستی فیلد موجودی در جدول کالاها آورده شود؟
با سپاس فراوان

محمد سلیم آبادی
پنج شنبه 07 شهریور 1392, 13:50 عصر
بله چطور مگه؟

مهدی هادیان2
سه شنبه 12 شهریور 1392, 12:05 عصر
بسم الله الرحمن الرحیم

بله چطور مگه؟
با سلام
موجودی کالا جزء recalculable attribute به حساب میشود و خصوصیات قابل محاسبه مجدد نیازی نیست ذخیره شوند؛ این طور نیست؟
با سپاس

بهزاد علی محمدزاده
سه شنبه 12 شهریور 1392, 12:28 عصر
موجودی کالا جزء recalculable attribute به حساب میشود و خصوصیات قابل محاسبه مجدد نیازی نیست ذخیره شوند؛ این طور نیست؟

سلام . یعنی ما کالا رو اینجوری درج می کنیم ؟ : ( کالا شماره یک , 2 عدد ) و ( کالا شماره یک , 3 عدد ) و ( کالای شماره یک , 4 عدد ) !!! اونوفت محاسبه می کنیم که 2 + 3 + 4 = 9 !!!

فیلد محاسباتی یعنی همین . در حالی که ما تو این مثال یه رکورد داریم برای ( نام کالا , تعداد ) ... ( کالای شماره یک , 2 عدد ) ... و هر بار که کالای جدیدی اضافه بشه اون فیلد به روز رسانی خواهد شد . ( کالای شماره یک , 5 عدد ) و ... پس این فیلد محاسباتی نیست و باید ذخیره شود .

اون چیزی که مد نظر شماست شاید موجودی کل انبار باشه که با محاسبه بدست می آید .

مهدی هادیان2
سه شنبه 12 شهریور 1392, 14:47 عصر
بسم الله الرحمن الرحیم

یعنی ما کالا رو اینجوری درج می کنیم ؟ : ( کالا شماره یک , 2 عدد ) و ( کالا شماره یک , 3 عدد ) و ( کالای شماره یک , 4 عدد ) !!! اونوفت محاسبه می کنیم که 2 + 3 + 4 = 9 !!!

فیلد محاسباتی یعنی همین . در حالی که ما تو این مثال یه رکورد داریم برای ( نام کالا , تعداد ) ... ( کالای شماره یک , 2 عدد ) ... و هر بار که کالای جدیدی اضافه بشه اون فیلد به روز رسانی خواهد شد . ( کالای شماره یک , 5 عدد ) و ... پس این فیلد محاسباتی نیست و باید ذخیره شود .
با سلام
موجودی اولیه انبار رو بایستی به عنوان فیلدی ذخیره شود؛ در این بحثی نیست؛ ولیکن دوستان فیلد موجودی فعلی مد نظرشون هست که مثلا با فروختن از یک کالا و رسید و ... به صورت زیر محاسبه خواهد شد:
موجودی= موجودی اولیه + رسید - فاکتور و ...

محمد سلیم آبادی
سه شنبه 12 شهریور 1392, 16:05 عصر
موجودی کالا جزء recalculable attribute به حساب میشود و خصوصیات قابل محاسبه مجدد نیازی نیست ذخیره شوند؛ این طور نیست؟
از هر دو طریق ممکنه. یعنی هم میشه بصورت فیزیکی موجودی فعلی را در جدول ذخیره داشته باشیم هم می تونیم بر اساس جدول سفارشات آن را در هر بار که نیاز بود مجددا محاسبه کنیم.
در هر دو حالت باید موجودی اولیه از هر کالا را داشته باشیم تا بتونیم محاسبات داشته باشیم.
مزیتی که در روشی ذخیره بصورت فیزیکی وجود داره اینه که هر بار که نیاز به موجودی کالاها داریم نیاز نیست مجددا یک Query تجمعی بنویسیم.
و همانطور که اشاره شد ایرادی به روشی که معرفی کردم وارد نیست چون در صورت انجام صحیح عملیات (اجرا شدن بصورت اتومیک) مشکلی پیش نخواهد آمد.

خورشید *ستاره
چهارشنبه 13 شهریور 1392, 00:33 صبح
سلام من یک فاکتور دارم که دارای فیلدهای مشخصات کالا و موجودی و تاریخ هستش
میخام یه دستوری بنویسم که وقتی یه تاریخی میدم موجودی انبار رو تا همون تاریخ نشونم بده

مثلاً از تاریخ 1/1/92 تا تاریخ 1/5/92 من یه کالای رو فروختم
حالا میخام بدونم که تا تاریخ 1/4/92 چقدر موجودی دارم
میشه راهنماییم کنید. ممنونتون میشم
سپاس



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