تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] خطأ في الكود عندما يعمل إثنين في الشبكة
#1
Exclamation 
السلام عليكم

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



الرد }}}
#2
وعليكم السلام ورحمة الله وبركاته
لو تترجم رسالة الخطأ ...بارك الله فيك.
الرد }}}
#3
وجدت هده الصور في google  أضن أنها نفس الرسالة



لا يمكن فتح قاعدة البيانات قد لا تكون قاعدة بيانات يتعرف عليها التطبيق الخاص بك أو الملف تالف. "



تم وضع قاعدة البيانات بواسطة المستخدم << Admin >> on << اسم الجهاز >> في حالة تمنعه من الفتح أو الإغلاق
الرد }}}
تم الشكر بواسطة: حريف برمجة , ابراهيم ايبو
#4
ممكن رابط الشرح التالي من ميكروسوفت يساعدك
https://support.office.com/en-us/article...da245a0446
الرد }}}
#5
جرب أن تخرج الاتصال Cn.Open واغلاقالاتصال Cn.Close خارج حلقة فور .... لأنة من غير المنطق ان يتم فتح الاتصال واغلاقة في كل لفة لحلقة فور ، ولو كان هناك 1000 سجل في قاعدة البيانات معناه سيتم فتح وغلق الاتصال 1000 مرة لذلك يقع الخطأ مع المستخدم الآخر
والله أعلم
الرد }}}
#6
معك حق أخي سامي
لطالما تسائلت هل غلق القاعدة و إعادة فتحها عدة مرات هل يسبب مشاكل
____________________________________________________________________________
قمت بإخراج الغلق و الفتح خارج حلقة الفور
و قمت بتجربت الكود 5 مرات و الحمد لله إختفى الخطأ الأول

هل بإخراجي لكود الغلق و الفتح خارج الفور   سأحصل على نفس النتائج أخي , لا يوجد فرق ؟
____________________________________________________________________________

عند تجاوز مكان الخطأ القديم 
يضهر لي الخطأ التاني هنا   عند جميع المستخدمين
هل هذا بسبب إستخدامي للإتصال الغير المباشر ؟؟
هل يجب التخلي عن DataTable



شكرا كثيرا أخي سامي
الرد }}}
تم الشكر بواسطة: حريف برمجة , ابراهيم ايبو
#7
(04-08-19, 03:49 AM)sniperjawadino كتب : هل بإخراجي لكود الغلق و الفتح خارج الفور   سأحصل على نفس النتائج أخي , لا يوجد فرق ؟

لا يوجد فرق بالمرة 
------
تخيل أن عندك كرتون ماء فيه 40 علبة وتريد ان تضع هذه العلب داخل ثلاجة ... فهل ستفتح الثلاجة وتضع علبة واحد ثم تغلق الثلاجة ثم تفتحها من جديد وتضع العلبة الثانية .... وهكذا حتى تنهي الاربعين علبة .... أو يكفي ان تفتح الثلاجة وتضع الاربعين علبة واحدة تلو الأخرى حتى تنتهي وبعدها تغلق الثلاجة 
هذا المثال مثلة تماما
اما بالنسبة للخطأ الثاني فانصحك ان تستخدم الوضع المتصل OleDbCommand للتحديث والاضافة وكذلك الحذف
الرد }}}
#8
شكرا لك أخي سامي على المثال البسيط

سأتبع نصيحتك و سأستخدم الوضع المتصل OleDbCommand لعلي أجده أسرع و بدون مشاكل تضارب الباينات في الشبكة
شكرا شكرا شكرا
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو , حريف برمجة
#9
ممكن هكذا بالوضع المنفصل
PHP كود :
Dim dt_Ticket As New DataTableLabel_N_CAISSE.Text= (-Val(TextBox4.Text))
Using da_Ticket As New OleDbDataAdapter("UPDATE [TABLE_" "] SET [Dates]=@dates,[Heure]=@heure"cn)
 
   da_Ticket.SelectCommand.Parameters.AddWithValue("@dates"Now.AddHours(m).ToString("dd/MM/yyyy"))
 
   da_Ticket.SelectCommand.Parameters.AddWithValue("@heure"Now.AddHours(m).ToString("HH:mm:ss"))
 
   da_Ticket.Fill(dt_Ticket)
 
   Dim savedt_Ticket As New OleDbCommandBuilder(da_Ticket)
 
   da_Ticket.Update(dt_Ticket)
End Using 

ممكن هكذا بالوضع المتصل
PHP كود :
Dim n Label_N_CAISSE.Text= (-Val(TextBox4.Text))
If 
cn.State <> ConnectionState.Open Then cn.Open()
Using cmd_Ticket As New OleDbCommand("UPDATE [TABLE_" "] SET [Dates]=@dates,[Heure]=@heure"cn)
 
   cmd_Ticket.Parameters.AddWithValue("@dates"Now.AddHours(m).ToString("dd/MM/yyyy"))
 
   cmd_Ticket.Parameters.AddWithValue("@heure"Now.AddHours(m).ToString("HH:mm:ss"))
 
   cmd_Ticket.ExecuteNonQuery()
End Using
cn
.Close() 
الرد }}}
#10
شكرا لك أخي Beginer
أعتذر منك لتعبك في إعادة كتابة الكود
جزاك الله على وقتك

سأستخدم الوضع المتصل لعله يكون أسرع و أفضل بدون أخطاء
شكرا كثييرا

فقط هذا الخطأ لا يزال يضهر عند دخول أكثر من مستخدم

 
 
تم وضع قاعدة البيانات بواسطة المستخدم << Admin >> on << اسم الجهاز >> في حالة تمنعه من الفتح أو الإغلاق



حتى بعد إتباعي لشرح الأخ الجوكر
 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة: حريف برمجة , ابراهيم ايبو


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  سورس كود الارسال الى الواتس -يعمل يرجي التعاون للتطوير new_programer 5 301 03-03-24, 08:45 PM
آخر رد: new_programer
  ممكن حل المشكلة فى الكود التالي - من مشاركة استاذنا القدير / عبدالله الدوسري new_programer 4 176 02-03-24, 07:36 PM
آخر رد: new_programer
  ماهو حل هذا الخطأ في الكود melad2002 7 275 25-02-24, 12:25 AM
آخر رد: justforit
  كيفية انشاء سكريبت لقاعدة بيانات من خلال الكود heem1986 1 214 20-02-24, 12:00 AM
آخر رد: Kamil
  مشكلة عدم اكتمال تنفيذ بسبب فصل الشبكة او التيار الكهربائي اثناء النتفيذ تناسيم 3 1,845 05-02-24, 10:04 PM
آخر رد: 01AHMED
  [VB.NET] أرغب فى استخدام هذا الكود بالتحديد على الإصدار 10 AmeenRashed 3 211 19-01-24, 12:42 PM
آخر رد: Taha Okla
  [VB.NET] ما الخطأ فى هذا الكود - كود البحث المتعدد Ashraf Elafify 7 476 27-12-23, 10:50 PM
آخر رد: Ashraf Elafify
  [VB.NET] اريد تعديل في الكود عند طباعة DGV abu_hisham7 1 443 03-12-23, 02:40 AM
آخر رد: abu_hisham7
Heart [VB.NET] كيفية جعل الدتاجريديد فيو تظهر عندما تكون قاعدة البيانات فارغه الحزين اليماني 1 376 22-11-23, 05:31 PM
آخر رد: justforit
Heart [C#.NET] حول خطأ في فرز عامود التاريخ عندما تكون إحدى الخانات فارغة بلال بلال 3 344 16-11-23, 12:02 AM
آخر رد: بلال بلال

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم