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

الخصم المشروط في جدول مبيعات

مغلقمُجاب
بدأه صفوت ياسين في 4 فبراير 2014 · 6 رد · 789 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

السلام عليكم ورحمة الله

في المثال المرفق جدول مبيعات , تم عمل استعلام ونموذج على اساسه

السؤال كيف يتم خصم 5% مثلا من المبلغ اذا كان الدفع كاش وكما هو في ال CheckBox

مع شكري الجزيل مقدما

مبيعات.rar

#2

تفضل اخي الكريم ملفك بعد التعديل وفق ما طلبت

#3

السلام عليكم ورحمة الله

عفوا أخي الكريم 

عندما حاولت تحميل المرفق ظهرت هذه الرساله :

 

لا تملك صلاحيات لتحميل المرفق 

اشكرك على المجهود على اية حال

تم تعديل هذه المشاركة بواسطة صفوت ياسين في 4 فبراير 2014 في 17:33

#4

السلام عليكم ورحمة الله

الاخ صفوت على حق  لا يمكن تحميل المرفق

#5

الاخ الفاضل

 

مع الاسف الكثير ينظر للحلول البرمجية انها الهدف الرئيس من حل المشكلات. مع الاسف نفتقد الكثير من بناء المنطق Logic . الحل البرمجي سهل جدا لطلبك لكن الحل نفسه سيولد مشكلة! المشكلة عندك لو تم الخصم المبلغ بنسبة 5% فيتم حسم المبلغ ويتم حفظ القيمة (overwriting) لو اردت الان الغاء الخصم كيف تسترجع المبلغ الاصلي حيث انه تم استبداله بالمبلغ بعد الخصم!!

 

انت محتاج لبعض التعديلات قبل البدء في الحل البرمجي

 

اولا يفترض ان تعمل حقل اضافي في الجدول وتسميه  Deduction حيث الحقل سيحمل قيمة الخصم و في نفس الوقت سيمنع من تاثر المبلغ من التغيير وبالتالي نستيطع استعادته اثناء الغاء الخصم

 

ثانيا قم باضفة هذا الحقل Deduction الى الفورم  مع تبديل القيم المبدئية Default value الى 0

 

ثالثا قم بتعديل المعادلة في الاستعلام الى التالي

total: ([quantity]*[price])-[deduction]

 

الان ضف هذا الكود الى الفورم

Private Sub Cash_Click()

Call get_deduction

End Sub

 

Private Sub Price_AfterUpdate()

Call get_deduction

End Sub

 

Private Sub Quantity_AfterUpdate()

 

Call get_deduction

End Sub

 

Public Sub get_deduction()

 

Const deductionPercent = 0.05 '5%

 

If Me.Cash = -1 Then

    Me.Deduction = 0

    Me.Deduction = Me.Total * deductionPercent

        Else

            Me.Deduction = 0

End If

 

End Sub

 

 

 

بالتوفيق

تحياتي

 

 

#6 أفضل إجابة

الاخ الفاضل

 

مع الاسف الكثير ينظر للحلول البرمجية انها الهدف الرئيس من حل المشكلات. مع الاسف نفتقد الكثير من بناء المنطق Logic . الحل البرمجي سهل جدا لطلبك لكن الحل نفسه سيولد مشكلة! المشكلة عندك لو تم الخصم المبلغ بنسبة 5% فيتم حسم المبلغ ويتم حفظ القيمة (overwriting) لو اردت الان الغاء الخصم كيف تسترجع المبلغ الاصلي حيث انه تم استبداله بالمبلغ بعد الخصم!!

 

انت محتاج لبعض التعديلات قبل البدء في الحل البرمجي

 

اولا يفترض ان تعمل حقل اضافي في الجدول وتسميه  Deduction حيث الحقل سيحمل قيمة الخصم و في نفس الوقت سيمنع من تاثر المبلغ من التغيير وبالتالي نستيطع استعادته اثناء الغاء الخصم

 

ثانيا قم باضفة هذا الحقل Deduction الى الفورم  مع تبديل القيم المبدئية Default value الى 0

 

ثالثا قم بتعديل المعادلة في الاستعلام الى التالي

total: ([quantity]*[price])-[deduction]

 

الان ضف هذا الكود الى الفورم

Private Sub Cash_Click()

Call get_deduction

End Sub

 

Private Sub Price_AfterUpdate()

Call get_deduction

End Sub

 

Private Sub Quantity_AfterUpdate()

 

Call get_deduction

End Sub

 

Public Sub get_deduction()

 

Const deductionPercent = 0.05 '5%

 

If Me.Cash = -1 Then

    Me.Deduction = 0

    Me.Deduction = Me.Total * deductionPercent

        Else

            Me.Deduction = 0

End If

 

End Sub

 

 

 

بالتوفيق

تحياتي

 

 

Sales-Ahmed.zip

#7

شكرا جزيلا لك ايها الاخ الفاضل  ...انا اشاركك وجهة نظرك تماما واتفق معك في كل ما قلته

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

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

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

على اية حال اشكرك مرة اخرى   وتحياتي

تم تعديل هذه المشاركة بواسطة صفوت ياسين في 5 فبراير 2014 في 18:25

هذا الموضوع مغلق.

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

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

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

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

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