كيفية تفعيل عمل اداة treeview على النموذج مع ربطها بجدول الحسابات بحيث استطيع الاضافة والحذف من الشجرة وكذلك ادراج صورة للملف مفتوح او مغلق بها . رجاء المساهمة يمثال عملى وجزاكم الله عنى خير . فتحى السنجيدى
عمل شجرة حسابات
السلام عليكم ورحمة الله وبركاته
أخي الكريم/fathi
هذه بعض الوصلات التي سبق وأن تم التطرق من خلالها لأسلوب عمل الشجرة :
http://www.officena.com/ib/index.php?showt...c=414&hl=الشجرة
http://www.arabteam2000.com/ib/index.php?s...t=0entry84058
http://www.officena.com/ib/index.php?showt...c=414&hl=الشجرة
وقد تم تطبيقها بشكل عملي في القاعدة الجماعية للمحاسبة ،،،
تفحص بكل تأني المثال المرفق "لنظام الحسابات العامة" وتحديداً تتبع النماذج التالية :-
1- النموذج الرئيسي
2- زر دليل الحسابات (يفتح نموذج دليل الحسابات)
3- زر إضافة كود حساب (يفتح نموذج إضافة حساب إلى دليل الحسابات) ستشاهد كيف يتم الإضافة إلى الشجرة.
4- زر إستعراض وتعديل (يفتح نموذج تعديل بيانات حساب) ستشاهد هنا ان شاء الله ما يسرك.
والله يوفقك.

السلام عليكم ورحمة الله وبركاته
الأخ الكريم: فتحى
و ردا على الجزء الخاص بكيفية إدراج صورة للملف مفتوح او مغلق لعقد الشجرة, وذلك بربط أداة ال Treeview مع أداة Image List
حمل المثال المرفق.
الاخ الكريم ابن مسقط سلام الله عليكم وشكرا لاهتمامكم
استطعت تنزيل المثال ولكن واجهتنى مشكلة بين ملف البيانات والملف المرتبط به واستطعت التغلب عليها بانى قمت بربط الجداول من جديد بعملية استيراد الجداول وربطها.
اخى الكريم فى محاولتى للتطبيق بمثال خاص بى حاولت تعريف المتغيرات التالى للوصول لقاعدة البيانات الحالية وللاسف لم يقبل تعريف المتغبر dbs كا Database مما اثر بالتبعة على المتغير RST والرجوع بقيمة له . رجاء مساعدتى
عفوا ايضا عند تعريف دليل الحسابات بالكود التالى :-
set nodx=treeview1.nodes.add ( , , "A", "دليل الحسابات")
اريد ان اعرف ما مدلول حرف " A" وكيف تم تعريفه كمتغير فى هذه الدالة .
اسف ان كنت اثقلت عليك
الاخ الحبيب فتحى حرف ال A لا يرمز الى متغير وانما عباره عن اسم للعقدة node والمعروف بالمفتاح key يمكن من خلاله التعامل معها وهنا A هو اسم عقدة الجذر root والتى ينسب لها باقى العقد nodes
تم تعديل هذه المشاركة بواسطة solo في 5 ديسمبر 2003 في 22:52
أشكرك أستاذ/ (أحمد) solo
على تفضلك بالمشاركة والإجابة على السؤال.
أخي الكريم/ فتحي
بالإضافة إلى ذلك ، أود تذكيرك بإضافة المراجع التالية :
1) Microsoft DAO 3.6 Object Library
2) (Microsoft Windows Common Controls 6.0 (SP4
حيث أن عدم إضافتها في مثالك سيتسبب في عدم عمل الكود .
والله الموفق.

السلام عليكم
يعتبر أمر إضافة عقدة ما على الشجرة من أهم الأومر لبناء الشجرة. والصيغة العامة لأمر إضافة عقدة إلى الشجرة كالآتى:
Set TreeNode = Axtreeview.nodes.add( Relative, Relationship, Key, Text, Image, SelectedImage)
ملاحظة: إذا درست نماذج وأمثلة البنية الشجرية المنفذة باستخدام الفيجوال بيزيك , يجب الإنتباه أن ال Text يسبق ال Key فى الترتيب فى الأمر السابق.
س: كيف تستخدم الأمر السابق لبناء أول عقدة فى الشجرة "الجذر ROOT" ?
ج: ببساطة , ضع الأمر البرمجي لإضافة العقدة فى الصورة التالية:
Set TreeNode = Axtreeview.nodes.add( , , "ROOT", "دليل الحسابات")
س : ما معنى هذه الجملة البرمجية?
ج : كما تعرف فإن الشجرة تتكون من مجموعة من العقد , مربوطة فيما بينها بعلاقات عائلية.
وفى الأمر:
Set TreeNode = Axtreeview.nodes.add(, , "ROOT", " دليل الحسابات")
فعندما تترك مكان ال Relative و ال Relationship خاليا فإنك تطلب إضافة عقدة ليس لديها صلة قرابة (Relationship) بأى عقدة فى الشجرة و بالتالى ليس لديها قريب (Relative). فهى عقدة وحيدة على مستوى الجذر.
س : من الأخ فتحى على:
عند تعريف دليل الحسابات بالكود التالى :-
set nodx=treeview1.nodes.add ( , , "A", "دليل الحسابات")
اريد ان اعرف ما مدلول حرف " A" وكيف تم تعريفه كمتغير فى هذه الدالة .
ج: إضافة لما تفضل به الأخ Solo, وبالرجوع إلى الصيغة العامة لأمر إضافة عقدة إلى الشجرة :
Set TreeNode = Axtreeview.nodes.add( Relative, Relationship, Key, Text, Image, SelectedImage)
فإن القيمة الثالثة بين القوسين تمثل ما يعرف بإسم "Node Key" أو مفتاح العقدة.
وهو يشبه المفتاح الأساسى لسجلات الجدول (Primary Key) حيث أن كل عقدة على الشجرة لها مفتاح فريد . وبالتالى لا يسمح لأى عقدتين أن يكون لهما نفس قيمة ال Key
ومفتاح العقدة هو Pre-defined أى سابق تعريفه وقد يكون "A" , "AB" , "ROOT", إلخ بالشروط التالية :
1- أن يكون القيمة الثالثة بين القوسين حتى تتعرف عليه الشجرة كمفتاح العقدة.
2- مفتاح العقدة لابد وأن يكون نصا ولايجوز إطلاقا أن يكون رقما عدديا
ملاحظة: في القاعدة المحاسبية , لاحظ إستخدام دالة Cstr لتحويل نوع (Key) العددية إلى نصا لتحقيق الشرط الثانىالسابق.
س: كيف أضيف عقدة واحدة فقط إلى شجرتى و تنتمى إلى الجذر "ROOT" بعلاقة عائلية "tvwChild أى إبن" حيث يظهر إسم العقدة فى نموذج الشجرة (Text) = " الحسابات الأساسية".
معذرة إذا أثقلت عليكم أو أسلوبى غير واضح
و بالتوفيق
العزير ابن مسقط والاخوة الكرام استفدت كثيرا بما قدمتموه لى من عون
ولكنى مازلت عند كتابة الكود التالى لاستمد بيانات الشجرة من جدول الحسابات وجدت عندما قمت بكتابة الجملة dim dbs as database لم تقبل الجملة ولم يتم تعريف المتغير dbs كاقاعدة بيانات . فبعد كتابة as لا تظهر كلمة database بالقائمة المساعدة . وبالتالى لا اتمكن من مساواة dbs بقاعدة البيانات الحالية وذلك مع استخدام الكود التالى : -
set dbs = crruntdb
فما العمل لتفادى تلك المشكلة .
اخوكم فتحى السنجيدى
أخي الكريم/ فتحي
لقد نبهتك إلى المراجع في الأعلى
أضف المرجع التالي إلى القاعدة عندك :
Microsoft DAO 3.6 Object Library
وذلك عن طريق الذهاب إلى الأتي :-
1- ضع النموذج في وضع التصميم
2- أختر قائمة Tools
3- References
وأضف المرجع المشار إليه وبقية المراجع الموجوده في الأمثله المرفقه ،،، وبإذن الله كلمة database ستظهر مع بقية الكلمات.
أتمنى لك التوفيق .

السلام عليكم
الأخ فتحى :
إذا لم تظبط معك بعد إرشادات الأخ الكريم / إبن مسقط و إن شاء الله تضبط, ممكن ترفق مثال مصغر لقاعدة بياناتك?
تم تعديل هذه المشاركة بواسطة Mandour في 10 ديسمبر 2003 في 11:07
اخى العزير ابن مسقط
اعلم اننى اثقلت عليك بأسئلتى
حاولت ان اضف المراجع التى اشرت اليها من خلال قائمة ادوات - ادوات اكتف اكسس ولكن للاسف عند التسجيل للاداة يطلب من مكان الملف وانا للاسف لم استطييع التحرك فهل يقصد اختيار ملف بالامتداد *.ocx واى ملف منهم يمكن تحديده . رجاء افادتى بطريقة اضافة المرجع بخطوات اكثر تفصيل عشان يمكنى الاستيعاب اخوك فتحى
والسلام
اقتباسإذا لم تظبط معك بعد إرشادات الأخ الكريم / إبن مسقط و إن شاء الله تضبط, ممكن ترفق مثال مصغر لقاعدة بياناتك?
أخي/ فتحي
لقد شرحت في الأعلى كيف تضيف تلك المراجع ، فأرجو المعذرة لعدم مقدرتي أن أشرح لك بطريقة أخرى.
على كل حال ،،، ربما لو أرفقت الملف بعد أن تحذف منه الكائنات الغير ضرورية وتبقي فيه أصل المشكلة سوف أقوم بتفحص الملف وتقصي أسباب المشكلة فيه ؟
تم تعديل هذه المشاركة بواسطة ابن مسقط في 24 ديسمبر 2003 في 16:33

عزيزى ابن مسقط اليكم ملف يحوى جدول للحسابات ونموذج لادراج الحسابات الجديدة واضهار دليل الحسبات به
السلام عليكم
بعد إذن الأخ الأستاذ إبن مسقط
الأخ فتحى
تفضل نزل الملف الملحق ستجد:
1- كيف تلحق المرجع DAO 3.6 بالصور..لاحظ أن المرجع ليس ملف *.ocx
2- تم تنفيذ شجرة حساباتك مع ملاحظة الآتى:
أ ) قمت بتعديل أسماء الحقول إلى الإنجليزية لتفادى مشاكل العربية عند كتابة الكود
ب ) إستخدمت كود مختلف و أكتر تفصيلا من مشروع القاعدة المحاسبية الجماعية للتوضيح ليس إلا. أدرسه أولا و أى إستفسار أهلا و سهلا.
ج) رجاءا التعليق إذا كانت الشجرة تظهر على ال XP
مع تحيات ... أخوكم مندور
اخى مندور شكرا جزيلا واستفدت كثيرا من المثال والطريقة اليسيرة بالشرح .
تقبل تحياتى
اخوك فتحى
الحمدالله أخي/ فتحي على توصلك إلى الطريقة والله يوفقك.
شكراً جزيلاً أخي الكريم/ مندور وزادك الله علماً ورزقاً.

الأخ فتحى: الحمد لله إن ده مطلوبك
الأخ الأستاذ الكريم : إبن مسقط
جزاكم الله خيرا على الرد و الدعاء
هذا الموضوع مغلق.