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

تحميل المصروفات علي الفاتورة

بدأه ذاكر في 1 مارس 2009 · 9 رد · 859 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

الاخوة الاعزاء

فكرتي هذة المرة تتمثل في كيفية تحميل المصروفات بعد تحويلها لنسبة مئوية علي اصناف الفاتورة ليتغير سعر

الشراء مثلا الي سعر التكلفة , وقد نجحت في الجانب الرياضي وبقي لي مشكلة واحدة هي

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

بشرط رقم الفاتورة

مثلاا فاتورة

متكونة من ثلاثة اصناف واجماليها 100

والمصروف 20

اذا النسبة المئوية هي 20% وبذلك

يجب ضرب قيمة سعر شراء كل صنف في 20 ليصبح سعر تكلفة

فاذا كان الصنف الاول مشتري بي 30 اذا قيمة تكلفة الصنف بزيادة 20%من سعر شراءه

اي 20 *100/30 اذا الصنف يساوي 66.66

تكلفتة

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

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

اناقشها مع اعضاء المنتي الكريم

وده مثال

فيه محاولة لي لم تنجح

تنجح مع القيمة الاولي فقط والثانية والثالثة تتضاعف

masrof.rar

#2

وينك بروفسور

#3

إعكس السطرين .. سطر الإنتقال للسجل التالي وسطر إعتماد التغييرات .. ليكونوا بالشكل التالي


RS.MoveNext
	RS.Update

حيث انه المفترض ان اعتماد التغييرات على السجل الحالي ومن ثم الانتقال الى السجل التالي

كما يمكن إختصار الإجراء بأكمله في جملة Update واحده .. كما هو ادناه

Call DB.Execute("UPDATE [ini] SET mony2 = mony2 * " & Val(Text4) & " WHERE num = " & Val(Text1))

وايضا يمكن إختصاره وبنفس أسلوبك .. ايضا كما هو ادناه


If RS.State = adStateOpen Then RS.Close
RS.Open SQLs, DB, adOpenKeyset, adLockPessimistic

Do Until RS.EOF
RS![mony2] = (RS![mony2] * Val(Text4))
RS.Update

RS.MoveNext
Loop
	SQLs = "SELECT * FROM ini WHERE ini.num = " & Val(Text1.Text)

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

فليقبل الجميع تقديري واحترامي .. ولكم تحياتي

#4

مشكورررررر جدا برفسور

انا استخدمت الكود الاخير ووجدتة مختصر مئه بالمئه

وكمان اكتشفت اني عندي خطاء في الجملة الرياضية وعدلتها

بلاضافة الي اني قمت بتغير طلب السعر

بدل من ان ياخز من Rs!mony2 ياخز من rs!mony

حتي لا يتم تكرار تحميل المصروفات اذا اخطاء المستخدم وضغط علي الزر مرتين

مظبوط برفسور

المهم دا المثال مرة ثانية ارجوك اطلع علية وانتظر ملاحظاتك

masrof.rar

#5

المعادلة سليمة كما يمكن تنفيذها ايضا باكثر من طريقة اخرى .. مفيش مشكلة

ولكن هناك شئ لا يختلف عليه اثنان .. سعر الشراء هو نفسه سعر التكلفة

واذا افترضنا جدلا رغبتك في توزيع مصروفات الفاتورة على كل صنف

فاولى ان تضيف هامش الربح هو الآخر ويكون الناتج هو سعر البيع

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

والمصروفات ومراكز التكلفة والضرائب والخصومات تحسب على حدة بالنسبة للفاتورة

وليس للنصف او للقطعة .. كما ليس لهم تاثير مباشر على سعر الصنف

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

قد يكون كلامي مختلف عن تفكيرك .. لذا لا تشتت نفسك به فانت ادرى مني بمشروعك

ما سبق كان كلام عام وملاحظات عابرة وايضا لا يخص المخازن بالمرة .. والله اعلى واعلم

تم تعديل هذه المشاركة بواسطة mrx_ta7ady في 2 مارس 2009 في 17:42

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

فليقبل الجميع تقديري واحترامي .. ولكم تحياتي

#6

تمام اخي الكريم

ملاحظات مهمه جدا بالنسبة لي

انا احاول ان اجد كل الحلول للافكار التي تخطر علي بال المستخدم

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

احيانا يصر عملية جدل في سعر ابيع ويحتاج المستخدم لتخفيض السعر للعميل

ففي هذة الحاله يريد ان يعرف تكلفة هذا الصنف من شراءه حتي وصولة للمخزن من شحن ونقال وجمرك ....الخ

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

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

هذة فكرتي

ولدي الكثير احاول فية

لكي اصل الي مشروع يكون مكتمل ولو ب75% علي الاقل واقوم برفعه للمنتي لتقيمه والاستفادة منه

انتظر ملاحظاتك

واشكرك

#7

اي ملاحظات تنتظرها ؟؟ .. طيب تمام الله ينور ومتنساش المنطقية من الجانب المحاسبي

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

وليس من الاتقان ارضاء شخص في الخطا .. الاولية للجانب المحاسبي

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

فليقبل الجميع تقديري واحترامي .. ولكم تحياتي

#8
mrx_ta7ady كتب:

اي ملاحظات تنتظرها ؟؟ .. طيب تمام الله ينور ومتنساش المنطقية من الجانب المحاسبي

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

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

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

اكيد اخي .....لهذا قلت لك يجب ان يكون متكامل علي الاقل 75%

وليس من الاتقان ارضاء شخص في الخطا .. الاولية للجانب المحاسبي

اي خطاء لاقدر الله ...اذا كنت مخطئ في شي ارجو تقويم

اشكرك جدا

#9

اخي

في حاجة معذباني في المثال السابق وفي كل المشروع ان صح التعبير

لو لاحظت المثال الاخير اضفت علية داتا قريد وادوسي

وفي زر تحميل المصروفات عمل كود جلب المعلومات رفرش للادودسي

بس لازم اضغط ضغطتين حتي تتحدث المعلومات في الادوسي والداتا

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

هل في كود يخلي التحديث بتاع الادوسي يعمل بعد عملية الحفظ غي القاعد

ارجو ان تكون فهمت قصدي

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

#10

قم باضافة حقل اضافي دون ان يكون له اي فائدة في الجدول المقصود

ثم قم بتنفيذ جملة Update للحقل ذاته قبل اعطائك امر الـ Refresh

UPDATE MYTable SET MYField = 0

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

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

والجملة هذه ستؤدي ان شاء الله تسريع العملية السابقة واعتماد البيانات

ومن باب العلم بالشئ جائز جدا ان لا يشعر الجدول باثر الجملة هذه بعد الـ Refresh القريب

المشكلة لا اعلم عنها شئ منطقي .. ولكن هذا ما توصلت اليه كحل مؤقت

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

فليقبل الجميع تقديري واحترامي .. ولكم تحياتي

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