اذهب إلى المحتوى
بن فرحان

اريد تريجر يقوم بالتحويل بين وحدات الصنف تلقائيا أثناء نقص الكمية المباعة عند البيع

Recommended Posts

بن فرحان

السلام عليكم... 

أريد تريجر تقوم بالتحويل بين وحدات الصنف تلقائياً بعد إظهار رسالة تحذيرية تفيذ الموظف أن الكمية الحالية للصنف لاتكفي هل ترغب التحويل من الوحدة الأكبر منه..

في المثال التالي توضيح للمطلوب

حقل مسلسل الوحدة وهو حقل فريد.

نوع الوحدة هو وحدة القياس

معامل التحويل هو معامل التحويل من الوحدة الصغرى إلى الكبرى بحيث أن كل 1 باكت = 24 حبة

حقلي الكمية الموجودة وهنا الرصيد فيها 100 حبة، والكمية المطلوبة 125 حبة

أريد تريجر يقوم بالتحويل من وحدة الأعلى للوحدة الأقل منه فإذا لم يجد يقوم بالدهاب إلى الوحدة الأعلى والتحويل منها للوحدة الأقل فالأقل بحيث أنه في كل مرة يقوم بإنقاص من الوحدة الكبرى وتغذية الوحدة التي أصغر منه بالكمية التي يحتاجها فقط 

هنا الوحدة الصغرى هي حبة ورصيد الكمية فيها 100 حبة والمطلوب 128حبة قمت بإجراء تريجر يقوم بالتحويل من الوحدة الأعلى منه وهي الباكت ورصيدها 1 باكت وعند إنقاص الكمية الموجودة وإضافتها إلى رصيد الحبة اتضخ أن الرصيد غير كافي أيضاً 24 حبة + 100 حبة

المطلوب هو تريجر يقوم الذهاب إلى الوحدة الأكبر منهما وتنقيص منها 1 كرتون لتغذية رصيد الباكت ومنه تغذية رصيد الحبة؟

مسلسل الوحدة

نوع الوحدة

معامل التحويل

تصنيف الوحدة

الكمية الموجودة

الكمية المطلوبة

1

كرتون

1 كرتون

 وحدة شراء

3 كرتون

 

2

باكت

12 باكت

 وحدة بيع

1 باكت

 

3

حبة

24 حبة

وحدة بيع أساسية

100 حبة

128 حبة

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

شارك هذه المشاركة


رابط المشاركة
شارك
بن فرحان

... 

شارك هذه المشاركة


رابط المشاركة
شارك
eslam elbyaly

هحاول اساعد...

المفروض انك فى جدول المخزون بتخزن كمية المنتج بالوحدة الصغرى. ولما ييجى المستخدم يصرف, بيصرف باى وحدة, فتحول انت الكمية مع الوحدة الى اختارها الى الكمية بالوحدة الصغرى, وعلى الاساس ده تنقص من المخزون. 

مثلا: الباكت فيه 24 حبة. يعنى معامل تحويل الباكت = 24. لما تيجى تشترى 2 باكت, هتضرب 2 * 24= 48. لما ييجى المستخدم يصرف, هيطلب مثلا انه يصرف 2 باكت, فبتشوف انت معامل تحويل الوحدة دى(الباكت) كام, وتضربه فى الكمية فيطلع برده 48, فتعمل انت تحديث للكمية بالمخزون بانك تنقص منها 48. 

اما لو طلب بالحبة الى هى اصغر وحدة, فمن الطبيعى ان معامل التحويل بتاعها = 1, هتضرف انت الكمية الى هتتصرف ولتكن 5 * 1= 5, فتنقص من المخزون 5, فتبقى النتيجة 43. 

الحسبة دى تعملها فى فانكشن جوه باكدج. وتستخدمها فى تريجر post-insert على البلوك الى بتتحدد فيه الكمية الى هتتصرف او هتتضاف للمخزون. وطبعا نفس الكلام فى حالة الحذف والتعديل.

 

شارك هذه المشاركة


رابط المشاركة
شارك
بن فرحان

ما فيش اختلاف الصرف بالوحدة الصغرى.. بس عند الشراء هناك وحدات خاصة بالشراء وهو الكرتون وفي مثالي يوجد ثلاثة وحدات قياس كرتون وهو وحدة الشراء دائما، وباكت، والحبة وهي وحدة البيع الأساسية

أريد عند عملية الصرف يقوم بالفحص وتغذية رصيد الوحدات من رصيد الوحدة الكبرى والتي هي وحدة الشراء (كرتون) وتوزيعها على الوحدات الصغرى تلقائياً ثم الصرف بحسب الطلب بوحدة البيع وهي الحبة.

 

شارك هذه المشاركة


رابط المشاركة
شارك
eslam elbyaly

لو فرضنا انه عندك جدول للمخزون اسمه STOCK(ITEM_ID PK, QTY). عمود الكمية سيكون باصغر وحدة. يعنى لو عندك 2 باكت, والباكت فى 24, هيبقى العمود فيه القيمة 48. 

عند التعامل مع الوحدات ستقوم بضرب الكمية فى معامل التحويل لتعرف كم تساوى من اصغر وحدة, ثم تقوم باضافتها الى او خصمها من المخزون. 

مثلا عند شراء 2 باكت والباكت فيه 24 من اصغر وحدة, فمعامل التحويل هو 24, تقوم بضرب 2 * 24 = 48, فتقوم باطلاق جملة UPDATE لاضافة 48 الى الكمية الموجودة بعمود الـ QTY بجدول الـ STOCK.

ارجو من الله ان اكون استطعت مساعدتك.

شارك هذه المشاركة


رابط المشاركة
شارك
بن فرحان

في البدء أشكر اهتمام بالموضوع..

هو فعلا يوجد حقل للكمية وحقل لمعامل الضرب .. والمراد هو كيفية تغذية رصيد الوحدة الحالية من الوحدة الأعلى .. بمعنى أيكون هناك loop يقوم بالبحث عن الرصيد المتوفر في الوحدات الأعلى والقيام بعملية الضرب للتحويل إلى الوحدة الأقل وتنقيص الكمية من الوحدة الأعلى وإضافة الكميات للوحدة الأقل.

شارك هذه المشاركة


رابط المشاركة
شارك
eslam elbyaly

الكمية للمنتج وليست للوحدة. جدول المخزون مفيش فيه وحدات. لكن فيه المنتج وكميته باصغر وحدة. 

شارك هذه المشاركة


رابط المشاركة
شارك

انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من إضافة تعليق جديد

يجب ان تكون عضوا لدينا لتتمكن من التعليق

انشئ حساب جديد

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

سجل حساب جديد

تسجيل دخول

هل تمتلك حساب بالفعل؟ سجل دخولك من هنا.

سجل دخولك الان

×
×
  • أضف...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: إتفاقية الخصوصية