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

ربط الاداة شجرة بقاعدة البيانات

مغلق
بدأه Ms.Programer في 10 سبتمبر 2007 · 8 رد · 820 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

أعرف كيفية طريقة استعمال الشجرة

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

شكرا جزيل

#2

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

#3

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

#4

لاكون أكثر وضوحا...على سبيل المثال:

في حالة قام اليوزر باختيار option معين من الشجرة ...تظهر له معلومات لفيلد معين في قاعدة البيانات

شكرا جزيلا

#5

في الشجرة يوجد 3 حقول يمكن يمكن تخزين البيانات فيهم وهي (text & key & tag) ساستخدم text & key وال key يجب ان لا يتكرر في الشجرة

Private Sub Form_Load()
Dim RS As ADODB.Recordset
'TODO: open  con and  rs

Dim sKey As String, sText As String
Do While Not RS.EOF

sKey = ">" & Trim$(RS!id)'يجب  ان يكون المفتاح  نصي لذلك  اضفت  >  ويجب  تغيير اسم الحقل
sText = RS!Name ' غير اسم الحقل  الذي سيظهر في  اسم الشجرة

TreeView1.Nodes.Add , , sKey, sText
RS.movenext
Loop
RS.movefirst


End Sub

' عند  اختيار  فرع من الشجرة 
Private Sub TreeView1_NodeClick(ByVal Node As MSComctlLib.Node)
If Not Node Is Nothing Then
Dim sKey As String
sKey = Mid(Node.Key, 2) 'Get The key value & reomve  <
'search the Recordset for this key
' ابحث  باستخدام المفتاح من الشجرة  او  احضر البيانات من جدول  اخر  او او .....
RS.Find "id=" & sKey, , , adBookmarkFirst
MsgBox RS!Name   ' show  the other data or  make  new  recordset  or  anything else

End If
End Sub
#6

شكرا جزييلا أخي طارق...

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

run time error'3001';

argument are of the wrong type, are out of acceptable range, or are in conflict with one another

ولا استطيع اكمال العملية؟

#7

لا اعرف سبب الخطأ بالضبط لكن على الاغلب من ال recordset فيمكن مثلا في جملة ال select لم تضع متغير نصي بين '' لذا لو امكن ارفاق كود اختيار فرع من الشجرة

#8

شكرا اخي طارق على ردك...

بالنسبة للخطأ الذي ظهر لي فأنه عند الضغط على debug يكوم التظليل على الجملة التالية:

ADDCUSTO.Find "CUST_ID=" & sKey, , , adBookmarkFirst

هذا الموضوع مغلق.

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