تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
الدرس الخامس - تكوين الموديول واضافة والمكتبات الخاصة ب Dao والربط مع قواعد البيانات
#2
سنحتاج أيضاً لتعريف متغير عام بحيث نحتفظ فيه بمسار البرنامج لاستخدامه ضمن البرنامج ، وذلك بالشكل التالي :




كود :
Public Folder



سنحتاج أيضاً إلى ثابت نضع فيه كلمة سر قاعدة البيانات وهي VB4ARAB بحيث نستخدمها دائماً ، وعندما نقرر تغييرها نغيرها في هذا المكان فقط .




كود :
Public Const PassWord = "VB4ARAB"



وذلك لكي لا نقوم بالتعديل في جميع الكود حينما نحتاج إلى تغيير كلمة المرور - الاجمالية - لقواعد البيانات ، بل نكتفي بتغيير قيمة هذا الثابت فقط .

آخر ما نحتاج إليه هو متغير يحتوي على معلومات الجدول الأخير ، وفي هذه الحالة يمكننا عمل Array تحتوي على 5 أجزاء يمثل كل جزء منها أحد المعلومات ... وذلك بالشكل التالي :




كود :
Public Info(5)




قم ايضاً بكتابة الأمر التالي لتحويل الرسائل إلى أسلوب عرض اللغة العربية ، وهو ما شرحناه في دروس سابقة :




كود :
Public Enum arabic
arabic = vbMsgBoxRight + vbMsgBoxRtlReading
End Enum



الآن سنعود إلى الدالة التي قمنا بإنشاءها ونبدأ بالكتابة داخلها .
أول مهمة ينبغي أن يقوم بها البرنامج هو الحصول على المسار الحقيقي لقاعدة البيانات ، وذلك بالشكل التالي :




كود :
Folder = App.Path
If Right(Folder, 1) <> "\" Then Folder = Folder & "\"



الخطوة الثانية هي التأكد من وجود قاعدة البيانات ، فإن لم تكن موجودة فإننا نقوم باستدعاء وظيفة انشاءها ، وفي كلا الحالات سوف نتصل بها .




كود :
If Dir(Folder & "db1.mdb") = "" Then
MsgBox "لم يعثر البرنامج على قاعدة البيانات وسوف يقوم باضافة واحدة جديدة", vbExclamation, "قاعدة بيانات غير موجودة"
'Here We will Create The Database
End If




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


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




كود :
If Dir(Folder & "db1.mdb") = "" Then
MsgBox "لم يعثر البرنامج على قاعدة البيانات الرجاء مراسلة المبرمج للحصول على نسخة جديدة من قاعدة البيانات", vbExclamation, "قاعدة بيانات غير موجودة"
End
End If




بعد ذلك سوف نربط D1 بقاعدة البيانات بالشكل التالي :





كود :
Set D1 = DBEngine.Workspaces(0).OpenDatabase(Folder & "Db1.mdb")






ولكن لأن لدينا PassWord فسوف نحتاج إلى تمرير بارميترات اضافية منها pwd والذي سوف يحتوي على كلمة المرور :





كود :
Set D1 = DBEngine.Workspaces(0).OpenDatabase(Folder & "Db1.mdb", False, False, ";pwd=VB4ARAB")






وبما أن لدينا ثابت يحتوي على كلمة السر ، لذا سوف يصبح الأمر بالشكل التالي :





كود :
Set D1 = DBEngine.Workspaces(0).OpenDatabase(Folder & "Db1.mdb", False, False, ";pwd=" & PassWord)






ومن ثم نربط T1,T2,T3 بالجداول الموجودة في D1 وذلك بالشكل التالي :




كود :
Set T1 = D1.OpenRecordset("Tb_Product", dbOpenTable)
Set T2 = D1.OpenRecordset("Tb_Category", dbOpenTable)
Set T3 = D1.OpenRecordset("Tb_Factory", dbOpenTable)



================================
كما ذكرنا سابقاً يمكن الاعتماد على جمل الاستعلام أو فتح قاعدة البيانات حين الحاجة إليها فقط .
*** كما أننا سوف نستخدم الداول الخاصة بـ

Dao مثل AddNew ، Delete ، وغير ذلك . كما يمكننا الاستفادة أيضاً من جمل لغة الاستعلامات التي تعلمناها سابقاً وهو ما سوف نفعله معAdo في دروة تطوير المواقع باستخدام Asp إن شاء الله . وبنفس الطريقة يمكن عمل ذلك مع الفيجوال بيسك .

================================


آخر خطوة هي اظهار الشاشة الإفتتاحية ، والتي سنتعرف على طريقة تكوينها في الدرس القادم ، ولكن هذا أمر اظهارها .


Frm_About.Show


وحتى ذلك الحين جرب هذا الجزء الصغير ... احذف قاعدة البيانات وراقب ما يحدث ، أو غير اسمها ... أيضاً جرب استعادتها ، وتغيير كلمة المرور .
ولا تنس أن ترفق قاعدة البيانات التي سنعمل عليها من الدروس السابقة .


والله الموفق .


الملفات المرفقة
.zip   prog1.zip (الحجم : 177.15 ك ب / التحميلات : 198)
}}}
تم الشكر بواسطة:


الردود في هذا الموضوع
الدرس الخامس - تكوين الموديول واضافة والمكتبات الخاصة ب Dao والربط مع قواعد البيانات - بواسطة Raggi Tech - 15-10-12, 07:43 AM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  الدرس الرابع والثلاثون والأخير - نبذة عن العملية العكسية + تجهيز البرنامج على Cd RaggiTech 0 13,819 15-10-12, 09:10 AM
آخر رد: RaggiTech
  الدرس الثالث والثلاثون - كيفية عمل اعداد Setup للبرنامج RaggiTech 0 4,308 15-10-12, 09:08 AM
آخر رد: RaggiTech
  الدرس الثاني والثلاثون - التحويل إلى exe RaggiTech 0 4,341 15-10-12, 09:07 AM
آخر رد: RaggiTech
  الدرس الحادي والثلاثون - تعددية المستخدمين - البحث وطباعة الفواتير - التعليمات ... RaggiTech 2 5,308 15-10-12, 09:05 AM
آخر رد: RaggiTech
  الدرس الثلاثون - التعامل مع شريط الأدوات ToolBar RaggiTech 0 4,192 15-10-12, 08:59 AM
آخر رد: RaggiTech
  الدرس التاسع والعشرون - التعامل مع أشرطة الحالة Statues Bar RaggiTech 0 3,883 15-10-12, 08:57 AM
آخر رد: RaggiTech
  الدرس الثامن والعشرون -الطباعة في البرنامج . RaggiTech 4 5,769 15-10-12, 08:56 AM
آخر رد: RaggiTech
  الدرس السابع والعشرون - مقدمة إلى التعامل مع التقارير من خلال DataReport RaggiTech 2 6,607 15-10-12, 08:45 AM
آخر رد: RaggiTech
  الدرس السادس والعشرون - التقارير اليومية ، والتقارير بين تاريخين RaggiTech 1 4,735 15-10-12, 08:39 AM
آخر رد: RaggiTech
  الدرس الخامس والعشرون - الإحصائيات والرسوم البيانية RaggiTech 0 4,040 15-10-12, 08:37 AM
آخر رد: RaggiTech

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


يقوم بقرائة الموضوع: