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

مشكله بسبب تعدد استخدام البرنامج على اكثر من جهاز

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

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

لدى مشكله فى برنامجى

البرنامج يعمل على جهاز واحد كويس جدا

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

التى سوف يعمل داخلها على ان تكون البيانات على جهاز واحد وباقى الاجهزة سوف تتعامل من الشاشات التى تخص المستخدم سواء ادخال حفظ تعديل الغاء – الداتا بيز اكسيس

عندما افتح من جهاز مستخدم اخر تاتى لى رساله مضمونها ان البرنامج او الداتا مستخدمه حاليا .

الموديول الذى فيه بدايه التعرف على الداتا بيز هو

Public condb As New ADODB.Connection

Sub PoolConn()

If condb.State = adStateOpen Then condb.Close

condb.Open "Provider = msdasql;dsn=elrada;"

condb.CursorLocation = adUseClient

End Sub

انا استخدم

Microsoft activex data object libirary 2.8

اتمنى من الجميع من لديه مشاركة او تعديل أو مثال ان يمدنى به لانى محتاج اليه جدا

شكرا لجميع الاعضاء

#2

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

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

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

#3

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

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

اذا كانت مفتوحة ووضعت الكود التالي

If db.State = adStateOpen Then db.Close

db.Provider = "microsoft.jet.oledb.4.0"

db.Open App.Path & "\vehicalprog.mdb"

واستمر عمل البرنامج بصورة صحيحة

#4

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

اتمنى لو حدن اخر لديه طريقه او تجربه اخرى فليبلغنى بها فى رد جديد

#5

على فكرة اخى ذاكر الفانكشن PoolConn موجوده فى كل فورم فى البرنامج

لو الداتا مفتوحه يقفلها ولو مغلقه يفتحها

المشكله ان الجهاز المستخدم الذى ينادى البيانات من الجهاز الاخر لو مفتوحه ياتى برساله ان allready using

شكرا اخى ذاكر

#6

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

انا حملت مثال بسيط مستخلص من برنامجى الذى اريد ان احمله على ثلاث اجهزة كل مستخدم سوف يتعامل مع الشاشات الخاصه به والتى سوف تتعامل مع البيانات التى موجودة فى على احدى هذه الاجهزة( حفظ – اضافه – الغاء – بحث ) نوع حافظه البيانات اكسيس

البرنامج شغال معايا كويس جدا على جهاز واحد لكن المشكله مش عارف اجعل الثلاث اجهزة يتعاملوا معه فى ان واحد

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

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

Public condb As New ADODB.Connection

Sub PoolConn()

' If condb.State = adStateOpen Then condb.Close

' condb.Open "Provider = msdasql;dsn=elrada;"

' condb.CursorLocation = adUseClient

End Sub

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

Public condb As New ADODB.Connection

Sub PoolConn()

If condb.State = adStateOpen Then condb.Close

condb.Provider = "microsoft.jet.oledb.4.0"

condb.Open App.Path & "\elrada.mdb"

End Sub

ايهما اصح وايهما لا يعطينى بأن البيانات للقراءه فقط ولا يمكن لتعامل مع البرنامج

Elrada.rar

#7

الحمد لله البرنامج اشتغل تمام الا اذا اشترك مستخدمين فى ادخال سجل فى نفس الفورم الواحد سسظهر ان السجل مكرر

الكود الذى استخدمته فى المديول هو

Sub PoolConn()

If condb.State = adStateOpen Then condb.Close

condb.Provider = "microsoft.jet.oledb.4.0"

condb.Open App.Path & "\elrada.mdb"

End Sub

شكرا للاخوة الاعضاء الذين وجهوانا الى الكود الصحيح

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

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

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

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

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