الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

تخفيض الكميه المباعه بالمخزن

بدأه MAwadi في 16 مايو 2011 · 19 رد · 795 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم و رحمه الله و بركاته

اقوم بعمل برنامج مخزن و بحمد الله انتهيت من جزء كبير منه

سؤالي في تخفيض المخزن بالاصناف المباعه - و زيادتها بالمشتراه و المرتجع

مثال

لو عندنا صنف A تم شراءه و ادخاله المخزن عده مرات باسعار مختلقه

ِA بسعر 5 عدد الوحدات 10

A بسعر 6 عدد الوحدات 20

A بسعر 8 عدد الوحدات 30

لو قمنا ببيع 25 وحده من المفترض ان يكون رصيد المخزن كالاتي

ِA بسعر 5 عدد الوحدات الحاليه صفر

ِA بسعر 6 عدد الوحدات الحاليه 5

علي اعتبار اننا نستخدم الوارد اولا يصرف اولا

انا اريد مجرد الفكره و ليس الكود فلقد بحث و سلكت اكثر من طريق و لكن لم اصل بعد.

كيف اقوم باستدعاء الرصيد و اخفضه حتي يصل الي القيمه صفر و ابدا بتخفيض الكميه التاليه و هكذا

#2

السلام عليكم ورحمه الله وبركاته

اخي يمكنك هيكلت بياناتك على شكل طابور Queue وبذلك يمكنك تحقيق مبدأ ال FIFO First In First Out

1

.:: Wish to become better and better ::.

#3
MAwadi كتب:

لو عندنا صنف A تم شراءه و ادخاله المخزن عده مرات باسعار مختلقه

ِA بسعر 5 عدد الوحدات 10

A بسعر 6 عدد الوحدات 20

A بسعر 8 عدد الوحدات 30

\

الجدول الخاص بالمنتج A كيف قمت بتصميمة

هل لك ان ترينا تصميم الجدول ؟؟

MAwadi كتب:

لو قمنا ببيع 25 وحده من المفترض ان يكون رصيد المخزن كالاتي

ِA بسعر 5 عدد الوحدات الحاليه صفر

ِA بسعر 6 عدد الوحدات الحاليه 5

علي اعتبار اننا نستخدم الوارد اولا يصرف اولا

عملية البيع كيف تتم

اذكر لنا الخطوات اللازمة لكي تتم عملية البيع ..؟

#4

السلام عليكم و رحمه الله وبركاته

شكرا علي اهتمامكم و الاهتمام بمشاركتي و سؤالي

البرنامج هو لشركه و المخزون عباره عن المطبوعات الورقيه المستخدمه

يتم شراء المطبوعات او طبعها بالمطبعه و يتم ادخالها باذن توريد للمخزن و مسجل فيها قيمه و سعر الصنف الموجود بالفاتوره

يتم صرف (و ليس بيع بالطبع) كميات للادارات او للفروع للاستخدام .. هنا يمكن ان يتم استخدام او صرف كميه بأكثر من سعر

و قد صممت جدول واحد للحركات سواء كانت اضافه - صرف - تحويل به الاتي

1- تاريخ الحركه

2- كود نوع الحركه (اضافه - صرف - تحويل)

3-رقم المستند

4-رقم الصنف

5- نوع المستند (مستند اضافه - مستند صرف - مستن تحويل)

6- الكميه

7- السعر

8-كود المورد (في حاله الاضافه)

9- كود جهه الصرف (في حاله الصرف او التحويل)

10- الرصيد (يتم ادخاله بشاشه الاضافه مساو للكميه و هو العنصر الذي اريد تحفيضه او تصفيره في شاشه التحويل او الصرف)

11- كود الحركه (رقم تلقائي مسلسل)

12-ملاحظات

في شاشه الصرف او التحويل

عند كتابه رقم الصنف و كان تم توريد 4 كميات سابقه باربع اسعار مختلفه مثلا اقوم باستدعاء السعر و الاقدم تاريخ

تتم بدون مشاكل في حاله ان الكميه المطلوبه اقل من الكميه الي تم استدعائها و اقوم بتخفيض الرصيد اما

في حاله ان الكميه المطلوبه اكبر المفترض ان اقوم بتصفير الرصيد الاول و اخد من الكميه التاليه له في التاريخ

مع اعتبار اننا ممكن ان ناخذ متوسط السعر بدلا من الوارد اولا يصرف اولا (متاح لي استخدام احدي الطريقتين)

#5

هل لك ان ترينا تصميم جدول الاصناف والاسعار

الجدول الذي ذكرته ليس مهم بالنسبة لجدول الاصناف والاسعار

ربما ان تصميم هذي الجدولين فيهما مشكلة

تم تعديل هذه المشاركة بواسطة ماكسيموس في 17 مايو 2011 في 11:12

#6

مرفق الجداول المستخدمه موجوده في المرفقات

انا استخدم

SQL SERVER 2000

هل تعتقد ان المشكله في الجداول ام المشكله في كيفيه استدعاء الرصيد من الصنف و تخفيضه؟

و شكرا علي اهتمامك و في انتظار رايك

** لا استخدم جدول منفصل للاسعار و انما الجدول الذي ذكرته سابقا هو الذي استخدمه في وضع الكميه و السعر الوارد

Store.sql

تم تعديل هذه المشاركة بواسطة MAwadi في 17 مايو 2011 في 12:49

#7

يمكن ان تكون المشكلة من الجداول في بعض الاحيان ومن تصميمها

لكن للاسف ان قاعدة البيانات غير واضحة لي

فهل لك ان تخبرنا كل جدول مامعناه وماذا سوف تخزن البيانات فيه

لكي افهم اكثر

وان شاء الله وقتها نحدد المشكلة

#8

السلام عليكم ورحمه الله وبركاته

اخي هل تقصد بجدول ال Transactions هو الطلبيات؟ وان كان فلابد ان تكون للطلبيلت تفاصيل OrderDetails .. يمكنك الاستعانه بقاعدة البيانات الشهيره Northwind

.:: Wish to become better and better ::.

#9

الاخوه الكرام شكرا جدا علي اهتمامكم

و معذره ان كنت ارهقتكم في مساعدتي

مرفق ملف به الجداول و وصف لما سوف تحتويه من بيانات

نعم اقصد بجدول

Transaction الحركات و ليس الطلبيات سواء كانت اضافه او صرف او تحويل

و نظرا لان البرنامج لمطبوعات شركه لاستخدامها سنجد اقتصار البرنامج علي دخول الصنف ثم صرفه او تحويله

بدون وجود فواتير للبيع مثلا و هكذا

و لكن بعيد عن قاعده البيانات الخاصه بي - اي بشكل عام

ما هي فكره ان اضع صنف باكثر من سعر و اقوم بتخفيضه و هو السؤال الاساسي الذي لم استطع تنفيذه كما في المثال؟

مثال

لو عندنا صنف A تم شراءه و ادخاله المخزن عده مرات باسعار مختلقه

A بسعر 5 عدد الوحدات 10

A بسعر 6 عدد الوحدات 20

A بسعر 8 عدد الوحدات 30

لو قمنا ببيع 25 وحده من المفترض ان يكون رصيد المخزن كالاتي

A بسعر 5 عدد الوحدات الحاليه صفر

A بسعر 6 عدد الوحدات الحاليه 5

Store.rar

تم تعديل هذه المشاركة بواسطة MAwadi في 18 مايو 2011 في 04:51

#10

يوجد شيء لم افهمه في عملية البيع

ما طرحته ان العميل يطلب بداية السلعة الاقل ومن ثم السلعة الاعلى

وهذا الشي غير مفهوم

على اي شيء اعتمدت في عملية البيع هذا

لنفرض اني انا عميل واريد شراء سلعة A من المخزن

ولدي ثلاث سلعة لتكن كالتالي :

A بسعر 5 عدد الوحدات 10

A بسعر 6 عدد الوحدات 20

A بسعر 8 عدد الوحدات 30

ملاحظة ( كل نوع لدي 5 منها في المخزن )

فانا عميل ولكن لا اريد اي وحدة من السلعة A ذات القيمة 10

اريد وحدتين من السلعة A ذات القيمة 20 وثلاث وحدات من السلعة A ذات القيمة 30

ليصبح الباقي في المخزن كالتالي :

A بسعر 5 عدد الوحدات 10

A بسعر 6 عدد الوحدات 18

A بسعر 8 عدد الوحدات 27

هنا كيف تفسر لي العميلة هذا ؟

تم تعديل هذه المشاركة بواسطة ماكسيموس في 18 مايو 2011 في 08:33

#11

الاخ الكريم اعتقد اني لم استطع توصيل المعلومه و ساحاول شرحها بطريقه افضل إن شاء الله

الشركه يتم شراء المطبوعات المستخدمه بها مركزيا (ورق ابيض - ورق تصوير - دفاتر - و هكذا) ثم يقوم مخزن المركز الرئيسي بصرفها لمخازن افرع الشركه فيكون الوضع كالتالي

فلو تم شراء ورق تصوير بالمركز الرئيسي علي ثلاث مراحل كالتالي

ورق تصورير بتاريخ 1-1-2011 عدد 10 رزم بسعر 10 جنيه للزمه

ورق تصوير بتاريخ 1-2-2011 عدد 20 رزمه بسعر 11 جنيه للرزمه

ورق تصوير بتاريخ 1-3-2011 عدد 10 رزم بسعر 9 جنيه للرزمه

عمليه الصرف هنا تكون للفروع و ليس عمليه بيع نظرا لان الفرع لايشتري من المركز الرئيسي و انما يتم صرف الكميه الخاصه به شهريا

فلو فرضنا في 1-4-2011 مثلا ان فرع الشركه واحد طلب 15 رزمه ورق تصوير المفترض ان يكون الاتي

يتم صرف 10 رزم من الذي تم شراؤه في 1-1-2011 بسعر 10 جنيه و يكون رصيده اصبح صفر

يتم صرف 5 رزم من الذي تم شراؤه في 1-2-2011 بسعر 11 جنيه و يكون رصيده اصبح 15 رزمه و هكذا

عند طلب فرع الشركه اثنين عدد 18 رزمه مثلا

اصبح رصيد الذي تم شراؤه 1-1-2011 صفر

يتم صرف عدد 15 رزمه الموجوده في الكميه التي تم شراؤها 1-2-2011 و اصبح رصيدها صفر

يتم صرف عدد 3 رزم من الكميه المشتراه في 1-3-2011 و يصبح رصيدها 7 رزم

و هذه هي التي اسال عليها كيف في شاشه الصرف عند كتابه عدد 15 رزمه ان يقوم تلقائيا

بعمل الحاله الاولي من صرف و تصفير الرصيد و هكذا

ارجو ان اكون استطعت شرح الفكره

تم تعديل هذه المشاركة بواسطة MAwadi في 18 مايو 2011 في 10:01

#12

الان وضحت المشكلة ووضحت العمليات

سيكون كالتالي

سوف يكون لديك ثلاث جداول رئيسية في قاعدة البيانات (ولن اشاهد قاعدة البيانات التي ارفقتها )

جدول فيه اسم الشركة فقط

وجدول فيه اسماء فروع الشركة

وجدول فيه انواع المطبوعات

طبعا ان تحدد العلاقات بينهم من ناحية اجرءات العمل لديك

الشركة سوف تشتري مثلاً نوع من انواع المطبوعات (ولنقول دفاتر )

طبعاً عمليات الشراء سوف تكون في جدول رابع مرتبطة بجدول المطبوعات

الشركة شوف تشتري دفاتر كما قلت

طبعاً عند الشراء سوف تخزن تفاصيل العملية للشراء من التاريخ والكمية والموزع الى اخره في جدول الشراء

ولكن هنا سوف تخزن كمية النوع في جدول المطبوعات وسوف تزيد قيمة الكمية على حسب الكمية المدخلة

والسبب في ذلك هو ان الكمية تعتبر من خصائص جدول المطبوعات ولهذا جرى تخزين الكمية في هذا الجدول

وعند عملية البيع سوف تخصم الكمية من جدول المطبوعات وبالتحديد من الكمية المخزنه في جدول المطبوعات

(على فرض انك لا تهتم بتواريخ شراء الشركة للمطبوعات في عملية البيع)

اتمنى ان الفكرة وضحت

تم تعديل هذه المشاركة بواسطة ماكسيموس في 18 مايو 2011 في 11:26

1
#13

شكرا لك اخي الكريم

و لكن كيف ستتعامل مع اختلاف الاسعار؟ للصنف الواحد

كانت فكرتي التي كنت احاول تنفيذها في شاشه الصرف

هي عندما يقوم المستخدم باختيار صنف للصرف منه

يتم استدعاء الكميه المتاحه و السعر لها لاقدم تاريخ شراء

و كنت احاول ان لم تكن الكميه المتاحه تكفي ان يتم الصرف من

الكميه التاليه لها في التاريخ اي التاليه لها في الشراء و لكني فشلت في تنفيذها

اما فكرتك الكريمه علي ما فهمتها

اني ساتعامل مع الكميه فقط متجاهل اختلاف الاسعار

نظرا لان في اخر العام يتم استخراج الرصيد من حيث الكميه و الاسعار للمركز الرئيسي و الافرع

تم تعديل هذه المشاركة بواسطة MAwadi في 18 مايو 2011 في 11:40

#14

اختلاف الاسعار لا يهم في عملية البيع بقدر ما هي مهمة في عملية الشراء

طبعا كما قلت وعلى فرضيتي ان عملية الشراء كانت لنوع الا وهو الدفاتر

والدفاتر ياتي منها نوع من واحد

سوف تختلف العملية اذا كان هنالك انواع للدفاتر بالاصل

ولكن هنا لم اتطرق لها بحكم ان الدفاتر التي سوف تشتريها الشركة نوع واحد

طبعاً في عملية الشراء سوف يختلف السعر

وسوف يختلف عن سعر اللذي قبلة

ولكن هذا الشيء يرتبط مع ميزانية الشركة التي سوف تدفع مقابل عملية الشراء من الموزّع

ولكن بالنسبة للزبون فسعر شراء الشركة للدفاتر غير مهمة

وانما الذي يهم الزبون هو الكمية المتاحة التي سوف يشتريها

#15

كلامك صحيح بس المشكله تكمن في

انه في اخر السنه الماليه يتم تقييم المخزون الموجود بالفروع كميه و سعرا

كي يتم وضعه في الحسابات

فلو عندنا دفتر (نوع واحد كما قلت) يوجد منه عدد 30

من الممكن في هذه الحاله ان يكون

10 منهم بسعر 10

10 منهم بسعر 11

10 منهم بسعر 9

فكيف سيتم تقييم سعر الكميه الموجوده حتي يتسني للحسابات معرفتها؟

#16

في شان التقارير المحاسبية السنوية فان التقارير لا تكون بالمتبقي من الكميات

بل بالبنود المصروفة والبنود الشرائية

ومن هنا يتم جمع هذه البنود وبعد عملية الجمع تقارن النتائج الظاهرة بالنتائج والمتبقي من المطبوعات

هل النتائج تطابق المتبقي من المطبوعات

طبعاً تقارير البنود (قيد دائن ومدين) تؤخذ مباشرة من جدول عمليات الشراء ومن جدول عمليات البيع والمصروفات لكل فرع

بعد ان تتم العملية هذه يتم جمع جميع النتائج مع الفروع ومقارنتها مع النتائج الاصلية للفرع الرئيس

فاذا تطابقت النتائج مع النتائج الموجودة في الفرع الرئيس فهذا ان عمليات الشراء والبيع لكل فرع تتم 100%

بحكم تطابق بنود الفرع مع المتبقي في الشركة والفرع الرئيس

واذا كانت العكس فهذا يعني ان احدا من الفرع فيه خلل او ان الفرع الرئيس حدثت منه المشكلة اساسا في عملية شراءه للمطبوعات اساساً

تم تعديل هذه المشاركة بواسطة ماكسيموس في 18 مايو 2011 في 13:15

#17

شكرا اخي الكريم

و سوف اناقش اداره الحسابات في جزئيه تقييم المخزون في اخر السنه

و هل تتم كما فهمتها ام تتم كما تفضلت و شرحتها

و لو كانت كما شرحتها سيكون الموضوع اسهل جدا نظرا للتعامل مع الكميه

بدون النظر للاسعار في الصرف

#18

لدينا نحن قسم محاسبات

والطريقة التي قلتها ماخذوه منها

فهم لا يهتمون بالدرجة الاولى بكم تم شراء هذا وكم تم شراء هذا

هم يهتم بالبنود المصروفة والبنود الشرائية لكل سلعة او بضاعة

فاذا تطابقت مجمل البنود مع مجمل الميزانية الكلية وقتها تكون جميع البنود صحيحة

واذا اختلف حتى لو بقرش واحد يتاجع جميع البنود مرة اخرى ويحدد الخطأ ويعدل

#19

للاسف مع المناقشه مع اداره الحسابات افادت

بانه يتم تقييم الارصده بالمخزن

و توجه محاسبيا علي انه مصروف مقدم نظرا لانه تم صرفه في سنه 2011 مثلا ولم يستخدم بها و سوف يستخدم بسنه 2012

فسواء كان التوجيه صحيحا او خطا يظل السؤال مطروحا

عن كيفيه عمل ذلك؟

#20

اخي الكريم وجدت مثال مشابه سوف اقوم بدارسته و تجربته و ان شاء الله يصلي الي ما اريده

/index.php?showtopic=84859&hl=

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…