رفيق الامل

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

8 ردود في هذا الموضوع

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

سؤالي هو انه يوجد لدي برنامج محاسبي

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

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

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

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

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

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

أخي العزيز عليك اولاً بعمل رقم الفاتورة في قاعدة البيانات مفتاح اساسي فريد غير قابل للتكرار

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

كما أنه من النادر أن يتم الترحيل في نفس اللحظة

www.bashmo7aseb.blogspot.com

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

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

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

وانت قلت انه من النادر ان يتم الترحيل بنفس اللحظه ولكن اذا كان النظام مركب في سوبر ماركت فيه اكثر من 10 اجهزة فان الاحتمال سيكون كبير للترحيل في نفس اللحظة

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

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

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

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

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

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

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

يارب أكون قدرت أوصلك الفكرة

تم تعديل بواسطه Mohmed Helmy
1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اخي محمد

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

ثم قام المستخدم الاول بالغاء الفاتورة فان الرقم في المستخدم الثاني يظل 16 وهذا يعني ان تخطينا الرقم 15

وهذا سيسبب مشاكل في التسلل

وشكرا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

أخي العزيز

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

تشيل فية حالة الفاتورة بحيث لو الفاتورة أتلغت تحفظ فية قيمة ملغي

أذا الفاتورة لم يتم ألغائها تحفظ فية كلمة تمت

وبطريقة دي تبقي حافظت علي التسلسل وكمان لو حبيت تعمل تقرير بالفواتير الملغية أو الغير ملغية

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

أخي الكريم في حالة تم الإضافة في نفس الوقت في هذه الحالة سيقبل الاضافة من لأحد الأجهزة و سيرفض الإضافة من الأجهزة الأخرى وفي هذه الحالة ستقوم بعمل Error Handler وتضع فيه كود يقوم باستدعاء آخر رقم مرة أخرى ويقوم باضافة رقم وتسجيله .

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

السلام عليكم

فى طريقه اخرى

انك تعمل الحقل مكون من عمودين واحد اﻻوتو نمبر بتاعك العادى والثانى يحتوى رقم الجهاز صاحب العمليه

تم تعديل بواسطه sayedall
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



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

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .