![]() |
|
التحقق من تنفيذ عمليتان في نفس الوقت أو إلغائهما - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182) +--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183) +--- الموضوع : التحقق من تنفيذ عمليتان في نفس الوقت أو إلغائهما (/showthread.php?tid=41899) |
التحقق من تنفيذ عمليتان في نفس الوقت أو إلغائهما - معتز حسن - 12-07-22 السلام عليكم ورحمة الله وبركاته
أخواني المبرمجين سؤالي هو عن كيفية التأكد من تنفيذ عمليتان في نفس الوقت ... يعني مثلاً تحويل مبلغ من حساب إلى حساب أخر ... فيجب على البرنامج التأكد من خصم المبلغ المحول من حساب الشخص الأول وإضافته لحساب الشخص الثاني .. وإذا لم تتم عملية الإضافة لحساب الشخص الثاني فيجب إلغاء العملية الأولى وهي خصم المبلغ من حساب الشخص الأول ...يعني أما أن تنفذ العمليتان معاً أو يتم إلغائهما معاً.. أرجو شاكراً ممن يمتلك المعلومة بمساعدتي وجزآكم الله خير RE: التحقق من تنفيذ عمليتان في نفس الوقت أو إلغائهما - asemshahen5 - 12-07-22 العملية بسيطة اعمل حساب مقبوضات و مدفوعات لكل شخص فقط لا غير فعد الدفع ينزل المبلغ الى حساب مدفوعات الشخص الأول و عند عمل كشف حساب يتم جمع المقبوضات و المدفوعات و طرحهما من بعض عندها يظهر الرصيد و نفس الشيء عند الشخص الثاني و يمكن ان يوضع كل الأشخاص في جدول واحد يتضمن الاعمدة التالية : 1- مقبوضات : نوع عملة . 2- مدفوعات : نوع عملة . 3- رقم الشخص : ترقيم تلقائي مفتاح رئيسي . 4- اسم الشخص : نص . 5- بيان العملية : نص . 6- تاريخ العملية : تاريخ . 7- العملة المستخدمة : رقم مربوط بجدول سعر الصرف المرتبط بجدول العملات العملات لاستخدامه لمعرفة سعر الصرف في ذلك الوقت . RE: التحقق من تنفيذ عمليتان في نفس الوقت أو إلغائهما - معتز حسن - 12-07-22 تشكر يا أستاذ asemshahen5 طبعاً ضربت مثل فقط ... ولكن قد يحدث أن يتم تنفيذ الكود الأول ولا يتم تنفيذ الكود الثاني.... ليس بالضرورة أن تكون العملية هي عملية رياضية ... فقط أريد التحقق من عدم تنفيذ الكود الثاني في حالة عدم تنفيذ الكود الأول ... يعني مثلاً الحفظ في قاعدتين بيانات في نفس الوقت... يجب ان يتم متزامناً مع بعضهما البعض.. وفي حالة فشل الحفظ في قاعدة البيانات الثانية يتم إلغاء العملية الأولى .. سبق وأن شاهدت فيديو للاستاذ خالد السعدني .. فيه شرح مفصل لهذه العملية .. ولكنني مع الأسف لا اتذكر عنوانه وبحثت بعدة مسميات ولم أعثر عليه.. أتمني أن تكون الفكرة قد وضحت . RE: التحقق من تنفيذ عمليتان في نفس الوقت أو إلغائهما - Taha Okla - 13-07-22 تجعل جدول اضافي في قاعدة البيانات الاولى/ وتكون وظيفة هذا الجدول معرفة هل تم الانتهاء من تسجيل القيد في في القاعدتين في البداية تسجل في الجدول رقم القيد - وأنه تم الحفظ في القاعدة الأولى،، فإذا أنتهى من التسجيل في القاعدة الثانية سجل أنه تم الحفظ في القاعدة الثانية مع رقم القيد (والذي يكون نفسه في كلا القاعدتين). وتجعل هناك كود للتأكد من هذا الجدول اذا تم تسجيل شقي العمليه فيه فمعناه أنه تم الحفظ في كلا القاعدتين وإلا فإنه تم الحفظ في قاعدة والآخرى لا فتعطي أمر بالحذف من القاعدة الأولى . فقد لا يتم التسجيل في كلا القاعدتين لأكثر من سبب منها عدم المزامنة ومنها انقطاع التيار أثناء عملية الحفظ فيحفظ جزء من القيد ولا يحفظ الباقي فهذا الجدول الاضافي يبين كل العمليات التي تمت بشكل كامل أو بشكل جزئي .. RE: التحقق من تنفيذ عمليتان في نفس الوقت أو إلغائهما - معتز حسن - 13-07-22 تشكر يا أستاذ.. Taha Okla ساشرح لك الأمر ببساطة ... وهي أن النظام يعمل على قاعدتين بيانات واحدة عن طريق الإنترنت والأخرى محلية... وكلاهما تحتويان على نفس الجداول ونفس البيانات.. طبعاً استفيد من المحلية في جلب الاستعلامات بسرعة خاصة في برامج المبيعات.. واقوام بإجراء عمليات الحفظ والتعديل على كلا القاعدتين بدلالة قاعدة البيانات المحلية ولاحظت أن السرعة تكون أكبر بكثير في هذه الحالة.... من استخدام قاعدة بيانات على الانترنت فقط.... ويقوم النظام بالحفظ أولاً في قاعدة بيانات الإنترنت وفي حالة وجود أي مشكلة يعرض على المستخدم رسالة ويخرج من الإجراء دون الحفظ في قاعدة البيانات المحلية... أعتقد أنني بهذه الطريقة طبقت نفس فكرتك .. ولكن كما ذكرت فأنه في حالة انقطاع التيار الكهربائي بعد الحفظ في القاعدة الأولى لا يتم الحفظ في القاعدة المحلية.. وهذه المشكلة التي أريد لها حل الآن(نادرة الحدوث ولكن قد تحدث).. علماً بأن قاعدة البيانات على الإنترنت توفر تقارير مبيعات وغيرها عن طريق ربطها بphp للعميل. RE: التحقق من تنفيذ عمليتان في نفس الوقت أو إلغائهما - Taha Okla - 13-07-22 لو تعمل عمود اضافي في كل جدول يكون عمود التحقق من المطابقة .. (بأخذ أحد قيمتين فقط 0 أو 1) عندما تقوم بتسجيل البيانات بكلا القاعدتين تخزن في هذا الحقل رقم صفر مثلاً .. - ولكن عند التشغيل الثاني للبرنامج (أو تصنع زر أمر اضافي للمطابقة بين القاعدتين) يقوم بالبحث عن القيم الصفرية في كلا القاعدتين ويطابق هذين الجدولين ببعضهما فإن تطابقا أعطي قيمة واحد في كلا السجلين من كل جدول(فيخرج هذا السجل من البحث القادم)، - وفي حال عدم التطابق لوجود الجدول في القاعدة الأولى وغير موجود في الثانية -- تعطي أمر حذف للموجود .. أو بالأصح يعطي ملاحظة لك بوجود سجل في قاعدة غير موجود في الثانية (وبإمكانك أن تضع فيه أمر تصحيح تلقائي أو يدوي يقم بنسخ هذا السجل للجدول المماثل في القاعدة الأخرى) -- مع ملاحظة أنه في كلا القاعدتين لا تعتمد على حقل الترقيم التلقائي في جدول من قاعدة للبحث عنه في الأخرى بل حقل آخر يرقم بطريقة ما ولكن ليس تلقائياً (بل نفس الرقم يخزن في كلا الجدولين) فيكون هذا الرقم هو دليل البحث بين الجدولين للمطابقة بين السجلات. RE: التحقق من تنفيذ عمليتان في نفس الوقت أو إلغائهما - ابراهيم ايبو - 13-07-22 السلام عليكم ورحمة الله وبركاته تفضل اخي الكريم تابع هذا الموضوع http://vb4arb.com/vb/thread-41236.html RE: التحقق من تنفيذ عمليتان في نفس الوقت أو إلغائهما - معتز حسن - 17-07-22 تشكر الأخ إبراهيم تم الحل بعد عدة تجارب بواسطة البرنامج الذي قمت بإرفاقه ولم تحدث أي مشاكل... تشكر في ميزان حسانتك إن شاء الله |