السلام عليكم ورحمة الله وبركاته
أعرف كيفية طريقة استعمال الشجرة
لكني لم أستطع ربط مكونات هذه الاداة بقاعدة البيانات...فهل يستطيع احد ان يشرح كيفية تنفيذ هذه الخطوة؟
شكرا جزيل
السلام عليكم ورحمة الله وبركاته
أعرف كيفية طريقة استعمال الشجرة
لكني لم أستطع ربط مكونات هذه الاداة بقاعدة البيانات...فهل يستطيع احد ان يشرح كيفية تنفيذ هذه الخطوة؟
شكرا جزيل
لا توجد طريقة مباشرة لربطها مع قاعدة البيانات وانما يجب ان تعبئها يدويا ومادمت تعرف كيفية استعمالها فلا داعي الى الشرح الا اذا اردت الاستفسار عن نقطة معينة فارجو ان تذكرها
أعرف كيفية أستعمالها أخي الكريم لذلك لم أطلب شرح الاداة بالتفصيل! انما طلبت شرح كيفية ربطها بقاعدة بيانات من النوع أكسس
لاكون أكثر وضوحا...على سبيل المثال:
في حالة قام اليوزر باختيار option معين من الشجرة ...تظهر له معلومات لفيلد معين في قاعدة البيانات
شكرا جزيلا
في الشجرة يوجد 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
شكرا جزييلا أخي طارق...
بالنسبة للجزء الاول من الكود قمت بالقيان ببعض التعديلات ليتوافق مع قاعدة بياناتي وحصلت على النتيجة المطلوبه...لكن المشكلة تكمن في الجزء الثاني من الكود...لاني عندا اقوم بعمل سيليكت على اي من خيارات الشجرة أحصل على الخطأ التالي:
run time error'3001';
argument are of the wrong type, are out of acceptable range, or are in conflict with one another
ولا استطيع اكمال العملية؟
لا اعرف سبب الخطأ بالضبط لكن على الاغلب من ال recordset فيمكن مثلا في جملة ال select لم تضع متغير نصي بين '' لذا لو امكن ارفاق كود اختيار فرع من الشجرة
شكرا اخي طارق على ردك...
بالنسبة للخطأ الذي ظهر لي فأنه عند الضغط على debug يكوم التظليل على الجملة التالية:
ADDCUSTO.Find "CUST_ID=" & sKey, , , adBookmarkFirst
يظهر ان CUST_ID ليس رقمي لذلك يجب وضع القيم بين ''
ADDCUSTO.Find "CUST_ID='" & sKey &"'", , , adBookmarkFirst
هذا الموضوع مغلق.