اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

osama ababneh

المشرفين السابقين
  • Posts

    729
  • تاريخ الانضمام

  • تاريخ اخر زياره

كل منشورات العضو osama ababneh

  1. اخي KID ان ذلك ممكن وذلك عن طريق تقسيم قاعدة البيانات ووضع الجزئ الخاص بالجداول والاستعلامات منه في السيرفر والجزء الخاص بالنماذج والتقارير في الاجهزة الاخرى في الشبكة واعتقد انه اذا دخلت على المساعد في الاكسس ستجد شيئا حول الموضوع وكوني لست ممن يملك معلومات كافية حول الموضوع ارجو تصويب اي خطا ممكن ان اكون قد وقعت فية مع الشكر الجزيل
  2. عزيزي الطالب المثابر يوجد سطرين لفتح نموذجينن في الكود المرفق وهذا هو السبب والكود الاول هو DoCmd.OpenForm "form1", acNormal ويقوم بفتح النموذج form1 واعتقد ان هذا النوذج ليس موجود لديك ===وهو سبب عدم اشتغال الكود اما الكود الثاني DoCmd.OpenForm "TVV" فهو يفتح النموذج TVV النتيجة ان البرنامج سيقوم بفتح النموذجين وهذا ليس عملي ....فما هو الهدف من فتح نموذجين؟؟؟؟ ولكن الصح هو ان نضع نموذج واحد فقط ويكون هو النموذج الرئيسي للبرنامج (اي الذي كان يتم بدئ التشغيل به سابقا قبل استخدام برنامج الصلاحيات اما بالنسبة للاستفسار عن ان لا يعمل الا اذا كنت انا المدير فقط ..... فكيف سيدخل المستخدمون (الموظفون ) الى البرنامج اخي عند استخدام برنامج اضافة الصلاحيات هذا البرنامج سيضيف نموذج للمستخدمين وفي هذا النموذج ستضع صلاحية لكل مستخدم فممكن ان تمنع المستخدمين من فتح نماذج معينة وان تكون الصلاحيات للمدير فقط اما عن طريق الكود فهذه الخاصية غير متاحة في هذا الكود حيث ان الكود يتاكد فقط من ان اسم المستخدم موجود في قاعدة البيانات وان كلمة المرور صحيحة وبالتالي يقوم بفتح البرنامج فقط بدون ان يحدد ان هذا الاسم هو اسم المدير او مستخدم عادي في عملية التحقق لدخول البرنامج. ارجو ان اكون وفقت في الشرح
  3. اخي ادخل على تصميم النموذج frm-UserLogon وفي حدث عند النقر لزر الامر دخول ستجد الكود اضف الية السطر التالي حيث ان form1 هي اسم النموذج الرئيسي القديم الذي تريد فتحة وقم بوضع هذا السطر في اسفل الكود بعد الكود Docmd.Close DoCmd.OpenForm "form1", acNormal
  4. اشكرك اخي الطالب المثابر على هذه الاضافة وكلامك صحيح 100%
  5. تفضل اخي هذا الملف بعد التعديل ________.rar
  6. اخي ircpal بناء على طلبك قمت بشرح الموضوع بالصور حتى تعم الفائدة ان شاء الله وهذا هو رابط الموضوع http://www.officena.net/ib/index.php?showtopic=24909
  7. اخواني اقدم لكم هذا البرنامج الرائع وهو من تصميم استاذنا محمد عبادي جزاه الله الف خير وهذا البرنامج يضهر لنا جزء من الامكانيات الرائعه للاكسس حيث انه مصمم بالاكسس ويقوم بعمل صلاحيات مستخدمين لبرنامجك فلا تحتاج نسخ كودات او انشاء نماذج وما الى ذلك واليكم شرحه بالصور بعد فتح البرنامج سيضهر لكم بالشكل الاتي الخطوة الثانية الخطوة الثالثة الخطوة الرابعة والاخيرة والبرنامج ستجدونة في المرفقات ولم يتبقى شيئ سوى الدعاء لصاحب البرنامج ________________________________________________________________________________________.rar
  8. الاخ العزيز منتصر الاخت العزيزة نادية انا الصراحة ما زلت مصرا على ان قاعدة البيانات هشة كما تفضلت اخي منتصر وذلك سيؤثر على الاداء العام للبرنامج اي ستكون اساسات البرنامج ضعيفة وبالتالي برنامج ضعيف ولذلك قمت بتعديل تصميم قاعدة البيانات ( الجداول والعلاقات فقط) الان عند حذف اي عميل سيتم حذف اي بيانات تتعلق بة في جداول الشركات والاشتراكات واعتقد ان هذه كانت المشكلة الرئيسية قبل قليل وبناء على ذلك يمكن البدئ بتصميم الاستعلامات (او تعديلها قليلا) والنماذج ايضا على فكرة كنت قد بدأت بتصميم جدول الطلبيات ولكن وجدت فيه بعض البيانات التي تختلف عن البيانات الموجودة في جدول الشركات ولذلك توقفت مثل cost sirvice فهل تختلف عن Subscription cost وايضا التاريخ... فارجو توضيح ذلك كي اساعدكم في انشاء الطلبيات على الاقل وانشاء الله ساتابع معكم بقدر المستطاع لعلي اكسب بعض ما استفيد منه...هذا بعد اذنكم طبعا وهذا الملف في المرفقات بعد التعديل وارجو ان تنبهوني لاي اخطاء ممكن ان اكون وقعت بها Internet.rar
  9. الاخت نادية الاخ منتصر قمت بالاطلاع على قاعد البيانات وكما تفضل الاخ منتصر فان قاعدة البيانات غير متماسكة نهائيا وهذا سبب المشاكل وليس كود اعادة الترقيم واذا سمحتم لي بهذا الاقتراح لو نضرنا الى طبيعة العمل (ليس من ناحية البرمجة ) سنجد ان العميل عندما يرغب بالاشتراك سيقوم بدخول الشركة والبدئ بالاجراءات وهنا يبدا عمل البرنامج اولا سيتم تعبئة طلب اشتراك ...... ثم بعد القيام بالاجراءات اللازمة سيتم توصيل الاشتراك لة وعندها سيكون زبون للشركة وتنطبق علية باقي عمليات البرنامج ولذلك اقترح ما يلي اولا: ان يحتوي جدول الطلبيات على البيانات الخاصة بالعميل (كلها) والبيانات الخاصة بالشركة (ايضا كلها) ثانيا : عمل استعلامات الحاق تقوم بالحاق البيانات من جدول الطلبيات الى الجداول (العملاء) و ( الشركات) عند اتمام الطلبية وتوصيل الاشتراك للعميل ثالثا :ان يتم تعديل الجداول والعلاقات حيث ان الرابط ( الحقل الغريب) بين الجداول ليس صحيح وتكون الجداول والعلاقات كالاتي جدول الطلبيات ===غير مرتبط بجداول اخرى جدول الشركات === المفتاح الاساسي هو رقم الشركة وهو نص وليس رقم ولكن يتم ادخال رقم له جدول العملاء === المفتاح الاساسي رقم العميل ويحتوي على رقم الشركة كحقل غريب من اجل الربط جدول الاشتراكات == المفتاح الاساسي رقم العملية (ترقيم تلقائي ) ويحتوي على رقم العميل كحقل غريب من اجل الربط الان اود الاستفسار عن سبب حذف عميل؟؟؟ اليس من الممكن ان يعود العميل بعد فترة ويطلب بيانات تخصة؟؟؟ وربما بعد ان يوقف الاشتراك سيطلب اعادة اشتراك فاعتقد انه من الافضل ان نبقي على سجلاتة حيث انه من الممكن ان يكون من النوع المتعب والذي لا يسدد وبالتالي يكون لدى الشركة تصور معين حول هذا العميل ارجو ان لا اكون اثقلت واطلت .... فانني اعتذر منكم وارجو تصويبي اذا اخطات
  10. اخي الطالب المثابر السلام عليكم اسمح لي بهذه المداخلة: ان اخونا knight من الاساتذه في منتدانا وارجو منك ان يتسع صدرك لمداعباتةفهو من اكثرنا دراية بان لا علاقة للكسس بالاوراكل سوى في قاعدة البيانات وانا اعرفك منذ بداية موضوعك في المنتدى الطالب المثابر وواسع الصدر....... على كل حال انا ايضا اداعبكم واعرف انه لا توجد مشكلة ولكن للمداعبة فقط اما بالنسبة للاخ ircpal فان البرنامج الذي ارفقة اخونا الطالب المثابر لا يحتاج الى شرح نهائيا حيث انه يقوم بوضع الصلاحيات الى برنامجك وهذا البرنامج من البرامج التي تبين قدرات الاكسس البرمجية فما عليك الا تشغيلة واتباع التعليمات لاضافة الصلاحيات الى اي ملف اكسس تريد واقبلوا اعتذاري على هذه المداخلة
  11. الاخت نادية بما ان الاخ منتصر قام بمتابعة الموضوع من البداية فمن الافضل ان يكمل هو حيث انه سيكون على اطلاع وعلم بحيثيات الموضوع اكثر مني كما انني ضننت بانك لم تتلقي رد منذ فترة طويلة ولكن وجدت انالاخ منتصر قام بتقديم ملف معدل يوم امس... اذن فهو متابع للموضوع ويعمل علية فارجو ان توضحي للاخ منتصر الامور التي "تلخبطت" فهو بالتاكيد سيقدم لك التعديلات الضرورية
  12. اختي ارفقي الملف اكيد سيكون افضل وارجو تحديد المشاكل او الطلبات حيث انها لم تكن في المشاركة كما ان الاخ منتصر قام بحل المشكلة التي قمت بطرحها واعتقد ان الاخ منتصر قام باعادة بناء قاعدة البيانات والروابط وهذا هو الاجراء الصحيح حيث ان النماذج تكون من الخطوات الاخيرة في انشاء البرنامج على كل حال ارفقي البرنامج مع المطلوب وان شاء الله ستجدين الكثير من اساتذتنا جاهزون للمساعدة اذا قصر احدنا في تقديمها
  13. اختي اتوقع ان المشكلة قد تم حلها من قبل الاخ منتصر جزاه الله خيرا الا اذا كان هناك مشكلة اخرى ؟؟؟؟؟ فيجب توضيح ذلك
  14. تكملة الاستعلامات الان تعالوا نتعرف على كيفية وضع شرط في الاستعلام لو فرضنا اننا نريد استعلام يبين لنا الاولاد الذكور فقط ففي هذه الحالة نقوم بانشاء استعلام نضع فية ما نريد من بيانات ومن الضروري ان يكون فية حقل الجنس وتحت هذا الحقل نضع في معايير كلمة ذكر الان عند فتح الاستعلام لن تجد فية الا الذكور .... ولكن ماذا لو اردنا وضع شرط ويكون هذا الشرط قابل للتغيير أي ان لا يكون الشرط ثابت مثلا اظهار بيانات الاولاد الذين اسم اباهم احمد رامي او نصر حامد او ..... الخ ........ دعونا نترك هذا عندما نصل الى النماذج . وبامكاننا ان نضع أي شرط لإظهار السجلات التي ينطبق عليها هذا الشرط فقط فممكن ان يكون الشرط هو اظهار بيانات محصورة بين تاريخين او اكبر او اصغر من قيمة معينة .... وهذه الشروط ممكن ان نربطها مع النماذج وبالتالي فان الشرط يتم تحديده واختياره من النموذج وبالتالي ايضا نربط التقرير بهذا الاستعلام فتظهر لنا نتائج معينة فقط وليس كل ما في قاعدة البيانات. تصميم الاستعلامات حسب SQL ان الاصل في الاستعلامات هو برمجة SQL وهي في الواقع ليست بالمعقدة او الصعبة حيث انها فعليا لا تحتوي الا على القليل من الاوامر (على الاقل التي نحتاجها في الاكسس) ان عملية تصميم الاستعلام بالطريقه العادية هي نفسها بلغة SQL ولكن بطريقة قامت شركة مايكروسوفت بتبسيطها ويمكنك ان ترى ذلك بالدخول الى تصميم استعلام معين ثم اختيار عرض SQL وعندها سترى كود SQL الخاص بهذا الاستعلام. وفي الحقيقة يوجد شرح رائع جدا في المنتدى موجود في هذه المشاركة انصحكم بالدخول والاطلاع علية http://www.officena.net/ib/index.php?showtopic=16932 اخواني في المواضيع القادمة لن اقوم بارفاق امثلة وانما سيكون الشرح بشكل عام حيث اننا سندخل الى النماذج واذا اردنا ان نضع مثال على كل موضوع فاننا نحتاج الى ما لا نهاية من الامثلة وذلك كون كل فكرة ممكن ان تخطر في بالنا ستحتاج الى نموذج ولكن ممكن ان نقوم بادراج امثلة حسب الطلب
  15. اخي تفضل هذا مثال على طلبك ووضعت فية العمليات الحسابية الرئيسية الاربعة علما انه يمكن ذلك بطرق اخرى ولكن هذا مثال بسيط aa.rar
  16. اخي ابو ريوف السلام عليكم ورحمة الله وبركاتة للاسف الشديد فان طلبك مخالف لقوانين المنتدى حيث ان المنتدى لتقديم المساعدة في فهم الاكسس وما يتعلق به وتقديم المشورة والمساعدة في بعض اجزاء البرنامج ولكن للاسف فانت تطلب تصميم برنامج كامل وهذا مخالف للقوانين عليك ان تبدأ ببرنامجك وعندما تواجه اي صعوبة فاطرحها في المنتدى وعندها صدقني ستجد الكثير من الردود والمساعدة كما انك يا اخي الكريم قمت بوضع طلبك هذا في اكثر من مشاركة في مواضيع لا علاقة لها بطلبك... وهذا سيؤدي وللاسف الى تشويش على الموضوع الاصلي فلا داعي لذلك وانما لنجعل الردود تتعلق بنفس الموضوع حتى تتم الاجابة على استفسارات اخواننا بانسيابية اخي ارجو ان تسامحني ولا تغضب ..... فانا لا اريد سوى ان يتم تحقيق طلبك وتقديم المساعدة لك بالشكل الصحيح وللحصول على ذلك ما عليك سوى البدئ بتصميم برنامجك وطلب المساعدة فيما يعترضك من معوقات والله ولي التوفيق
  17. مشكور اخي سليم فعلا برنامج حلو وسهل الاستخدام جزاك الله خيرا
  18. مشكور اخي سليم وجزاك الله الف خير
  19. سلمت يداك اخي كمال ان كلمة عمل رائع تعني الاجحاف بحقك ولا تكفي لوصف مجهودك فعلا انه مجهود جبار وعمل اكثر من رائع اخي كمال لو تكرمت فلي ملاحظة صغيرة وهي خاصية البحث حيث ان التركيز يعود الى مربع البحث وبالتالي لا يمكن كتابة اكثر من حرف وعلى كل الاحوال برنامج كامل والكمال لله وما شاء الله عليك وعلى عملك جعلة الله في ميزان حسناتك وجزاك الله الف خير
  20. الاستعلامات الان اصبح لدينا جداول تحتوي على بيانات غير مفهومة على الاطلاق وكل مجموعة من هذه البيانات توجد في جدول ..... لحسن الحظ ان هذه الجداول مرتبطة مع بعضها ..... فهل يمكن دمج بيانات هذه الجداول مع بعضها البعض لتتكون لدينا معلومات تكون مفهومة؟ طبعا يمكن ....... الحل هو استخدام الاستعلام تعالوا الان نتعرف على الاستعلامات فما هي وما هي انواعها و و و ...... لمزيد من المعلومات راجع شرح أستاذنا محمد طاهر http://www.officena.net/ib/index.php?showtopic=228 والاستعلام هو جدول ولكنة يختلف عن الجداول بانك تتحكم بالبيانات الموجود ه فية كما تريد أي انه جدول مرن تتحكم فية ليعرض لك ما تريد من الجداول المختلفة وبالرجوع الى المثال السابق دعونا نصمم استعلام ليعرض لنا البيانات الموجودة في الجداول ولكن بطريقة مفهومة 1. ادخل الى الاستعلام واختر انشاء استعلام في طريقة عرض التصميم واعمل إضافة للجداول التالية ( الاباء , الامهات, الابناء ) 2. اخترما يلي بالنقر المزدوج (FatherName , MotherName, SunName) 3. احفظ الاستعلام وسمية QryNames الان استمتع باستعراض البيانات بالشكل المفهوم حيث انها تحولت الى معلومات ولم تبقى مجرد بيانات الان بامكانك ان تعمل استعلام ليعطيك معلومات حسب طلبك مثلا الابناء مع الجنسيات والالعاب او الاباء و الابناء والالعاب ... الخ يمكننا القول ان هناك استخدامين للاستعلامات 1. الاستعلامات من اجل عرض البيانات بالشكل والكيفية التي تريدها 2. الاستعلامات من اجل التحكم في الجداول (حذف , تعديل , إضافة) وعليك الحذر الشديد في استخدام النوع الثاني لان أي خطأ ممكن ان يحذف بياناتك او او ...... الخ من مشاكل محتملة . ولن ندخل في انواع الاستعلامات وتفاصيلها اكثر من ذلك لانني ضعيف في السباحة وهذا بحر عميق ولمن يريد الابحار في ذلك فعلية ان يتابع شروحات اساتذتنا الموجودة في مكتبة الموقع وهذا رابطها http://www.officena.net/ib/index.php?showtopic=5605 الان اذا فتحت أي جدول ستجد ارقام في الحقل الغريب مثلا في جدول الابناء ستجد ان الاباء هي ارقام ولا نعرف لمن هذا الرقم ولتحويلة الى نص (الاسم) ادخل الى تصميم الجدول ضع المؤشر على الخقل الغريب FatherNum في الاسفل ستجد خصائص الحقل اختر بحث وغير القيمة الموجودة مربع نص الى مربع قائمة ادخل على مصدر الصف ستفتح لك نافذة استعلام واضف فيها الجدول TblFathers وادرج الحقول FatherNum ثم FatherName اغلقة وقم بالحفظ في عدد الاعمدة غير القيمة 1 لتصبح 2 في عرض الاعمدة اكتب 0سم;1 سم اغلق واحفظ وافتح من جديد لترى النتيجة طبق هذه العملية على كل الجداول واليكم الملف بعد التعديل طبعا من يريد ان يتعلم علية ان يطبق بنفسة .... فاختر معهايير معينة وصمم عليها استعلام لترى النتائج فهذا الشيى سيوسع فهم الموضوع طبعا للموضوع تكملة ولكن لضيق وقتي شرحت هذا القدر فقط F_S.rar
  21. اخي البرنس اليك هذه المشاركة وممكن ان تحتوي افكارا جيدة بهذا الخصوص http://www.officena.net/ib/index.php?showtopic=18008
  22. اخي aideladha1 بالنسبة للتكامل المرجعي نستخدمة لتكوين علاقة بين جدولين ونوع العلاقة واحد الى متعدد فاذا لم نستخدمة تكون العلاقة واحد الى واحد وبالنسبة لاستخدام التكامل المرجعي و الشروط المرتبطة فية (تحديث و حذف) فانها تكون حسب برنامجك وطبيعة العلاقة في قاعدة بياناتك فكل قاعدة بيانات تختلف عن الاخرى كما تعرف واليك هذا المثال للتبسيط لنفرض انك تصمم قاعدة بيانات مطعم يحتوي على طلبيات على الهاتف ولديك جدول للزبائن والمفتاح الاساسي فية رقم الهاتف والاخر للطلبيات الان لنفكر بشكل منطقي : اليس من الممكن ان يقوم احد الزبائن بتغيير رقم هاتفة؟؟؟؟ فاذا غير هاتفة هل سيتم الاحتفاظ بسجلاته السابقة على الرقم القديم وابتداء من هذه اللحظة سندرج له سطر جديد في جدول الزبائن ونعتبرة كزبون جديد؟؟؟؟ فاذا قررنا انه سيتم تحديث الرقم القديم وان يكون لدينا القدرة على معرفة سجلاتة السابقة ( الطلبيات السابقة وتفاصيلها) فاننا سنستخدم شرط التحديث وبالتالي فانرقم الهاتف في السجلات القديمة سيتم تغييرة بالرقم الجديد اما اذا قررنا اننا لا نريد ان نعرف اي شيئ عن ماضي هذا الزبون مع المطعم وان نعتبرة كزبون جديد فاننا لا نستخدم هذا الشرط وبالتالي فان تحديث رقم الهاتف في جدول الزبائن سيؤدي الى وجود طلبيات في جدول الطلبيات غير مرتبطة بزبون معين ( وهي ما يسمى بالسجلات اليتيمة) ونفس الشيئ بالنسبة لشرط الحذف فاذا اردنا بعد سنة ان نحذف جميع الزبائن الذين لم يشترو منذ اكثر من ستة شهور فاننا نقوم بحصرهم وثم بمجرد الدخول الى جدول الزبائن وحذف سجل العميل فان كل الطلبيات الخاصة به سيتم حذفها ايضا اي سيتم حذف الزبون من جذورة ولن يتبقى لدينا اي شيئ يخص هذا الزبون اتمنى ان اكون فهمت المطلوب وان يكون الشرح كافي ولكن بشكل عام حسب احتياجات البرنامج نستخدم هذه الامور
  23. اخواني اشكركم على الردود المشجعة اخي aideladha1 فعلا كما تفضلت فان هذا الموضوع ليس بالسهل ويحتاج الى المزيد من التوضيح وجزاك الله خيرا على المداخلة طبعا انا ساشرحة بشكل مختصر لفهم الموضوع عموما وليس تفاصيلة الكاملة بالنسبة للتكامل المرجعي Enforce referential Integrity فانه يعني ان الحقل الغريب يجب ان تكون له قيمة من القيم الموجودة في المفتاح الاساسي للجدول الاخر المرتبط بهذا الجدول وحسب مثالنا السابق فان كل ابن يجب ان يتم ادخال اب له في حقل رقم الاب ويجب ان يكون هذا الرقم موجود في جدول الاباء اي لا يمكننا ان نضع رقم 000103 ولا يوجد لدينا اب بهذا الرقم وفائدة التكامل المرجعي تكمن في انه يمنع وجود ابناء ايتام . اما بالنسبة لتحديث الحقول المرتبطة فانها تعمل على ان يتم اجراء التعديلات على كل الحقول الاخرى في الجداول المرتبطة اذا عدلنا اي حقل في الجدول الحالي وحسب المثال اذا غيرنا رقم الاب 000003 الى 000053 فان ابناء هذا الاب سيتم تعديل رقم الاب الخاص بهم وبالتالي يبقوا مرتبطين بهذا الاب اما حذف الحقول المرتبطة فانها تعمل على حذف الحقول المرتبطة بهذا الحقل عند حذفة فاذا حذفنا الاب رقم 000003 فان كل ابناؤة سيتم حذفهم وبالتالي كل ما يرتبط بابناؤة من علامات او العاب او درجات ايضا سيحذف اي ان هناك تماسك في قاعدة البيانات كل حقل مرتبط بحقول اخرى ولو فرضنا انه على ارض الواقع في قاعده بيانات خاصة باصناف معينة وتم اكتشاف خطأ في كود صنف معين بعد مرور فترة من العمل فان عملية تغيير الكود سيكون مرهق اذا اردنا الدخول الى كل السجلات للبحث عن هذا الصنف وتعديلة ولكن وباستخدام تحديث الحقول المرتبطة ستتغير كل القيم في الحقول المرتبطة تلقائيا وكذلك اذا افترضنا ان الاب 000003 هاجر الى دولة اخرى هو واولادة وبعد خمس سنوات لا نريد الاحتفاظ بسجلات ابناء هذا الاب فان الدخول الى جدول الاباء وحذف سجل الاب لوحدة كفيل بان يتم حذف جميع بيانات ابناؤة والبيانات التابعة لهم ادعو الله ان اكون قد وفقت في توضيح الموضوع وادعو الله تعالى ان يوفقني في الشروحات اللاحقة وارجو من اخواني في المنتدى عدم التردد في اي مداخلة او شرح يرونة ضروري
  24. اخي الكريم ايضا قمت اليوم بشرح هذا الموضوع وتجد الشرح في الرابط http://www.officena.net/ib/index.php?showt...mp;#entry116032
  25. تكملة الجداول لغاية الان لدينا بيانات لا معنى لها ولا نعرف ما ذا تعني ولكن توجد علاقات بين افرادها حيث ان افراد الجدول Suns هم ابناء الافراد في جدول Fathers ولكن كيف سنعرف من ابن من ومن اب لمن؟؟؟؟؟؟؟ لمعرفة هذا الشيئ لا بد ان نضيف حقل الى احد الجدولين ليبين العلاقة بينهم والتساؤل الان اين نضيف هذا الحقل؟؟؟ وما هو هذا الحقل؟؟؟ هذا الحقل يدعى بالحقل الغريب وهو فعلا غريب لانه يوضع في جدول ولكنة يخص جدول اخر ونضعه في جدول الابناء لان كل اب ممكن ان يكون له ابن او عدة ابناء او بدون ابناء فلو وضعناه في جدول الاباء فان الاب ممكن ان يكون لة اكثر من ابن وبالتالي سيتكرر هذا الاب عند كل ابن وممكن ان لا يكون لة ابناء وبالتالي لن يظهر هذا الاب . شروط الحقل الغريب: 1.يجب ان يكون المفتاح الاساسي في الجدول الذي قمنا باستعارتة منه 2.يجب ان يحمل نفس خصائص الحقل الاصلي (نوع البيانات وحجم الحقل..) 3.لا يجب ان يكون فارغ لانه سيؤدي الى وجود ايتام في الجدول 4.اذا كان لديك حقل سيرد فية اجابة مثلا( نعم،لا) (متزوج ، اعزب) (ذكر ، انثى) ليس بالضروره عمل جدول جديد للجنس وانما في خصائص الحقل تستطيع تحديد مدخل البيانات باختيار قيمة من هذه القيم وذلك من خلال الدخول الى خصائص الحقل ثم بحث 1.غير القيمة عرض عناصر التحكم من مربع نص الى مربع تحرير وسرد 2.غير القيمة مصدر الصف من جدول\استعلام الى قائمة القيم 3.مقابل مصدر الصف ضع "ذكر";"انثى" 4.مقابل التزام بالقائمة اختر نعم بهذه الطريقة حددنا المدخل باختيار احدى القيمتين فقط ومنعناه من الاجتهاد والخطا وتدمير قاعدة البيانات الان نعود الى المثال ونضيف هذا الحقل في جدول الابناء ويصبح الجدول كالاتي SunNum== SunSex==SunName==FatherNum 000001=== 000001=== بيان=== انثى 000002=== 000003=== ناصر=== ذكر 000003=== 000002=== ريان=== ذكر 000004=== 000007=== عبد الرحمن==ذكر 000005=== 000006=== محمد=== ذكر 000006=== 000004=== عمر=== ذكر 000007=== 000009=== علي=== ذكر 000008=== 000010=== بادي=== ذكر 000009=== 000008=== منى=== انثى 000010=== 000003=== ولاء=== انثى 000011=== 000002=== ماجد=== ذكر 000012=== 000003=== روان=== انثى 000013=== 000009=== مي=== انثى 000014=== 000010=== نيبال=== انثى 000015=== 000002=== يوسف=== ذكر الان اصبح لدينا ابناء ولهم اباء واذا تركنا احدهم بدون اب فانة سيصبح يتيم وهو في علم قواعد البيانات يسمى بالحقل اليتيم أيضا لذلك يجب ان يحتوي هذا الحقل على قيمة. الان كيف سننشئ العلاقة بين الجدولين؟؟؟ العلاقات هناك ثلاثة انواع من العلاقات وهي 1.علاقات من نوع ا إلى متعدد 2.علاقات من نوع ا إلى 1 3.علاقات من نوع متعدد إلى متعدد لمزيد من المعلومات انظر الى شرح أستاذنا محمد طاهر http://www.officena.net/Tips/Access-Relations.htm طبعا النوع الثاني لن نتطرق لة وذلك لقلة الحاجة الية وقلة استخدامة. حسب مثالنا فان الاب ممكن ان يكون له اكثر من ابن أي اب 1 الى ابناء متعددين ولكن استحالة ان يكون للابن اكثر من اب أي ان العلاقة الموجودة لدينا هي من النوع الاول (واحد إلى متعدد) وهذا اكثر الانواع شيوعا واستخداما. الان افرض اننا سندرس استخدام الابناء لمجموعة العاب موجودة في حديقة ما. معنى ذلك انه لدينا جدول جديد وهو جدول الالعاب (TblGames) ويحتوي على: 1.GameNum = نص= طولة 2 2.SunNum = نص= طولة 6 لانة الحقل الغريب ويجب ان يكون بنفس مواصفات الحقل الاصلي 3.GameName = نص = طوله 50 هذا يعني ان كل ولد يستطيع اللعب باي لعبة يريد ولكن لا يمكن لباقي الاولاد اللعب بهذه اللعبة و هذا مخالف للواقع لان الولد يستطيع ان يلعب بكل الالعاب وكل الاولاد ممكن ان بلعبوا بنفس اللعبة ارجع واحذف الحقل الغريب لان مكانة ليس هنا GameNum==GameName 01===اللعبة 1 02===اللعبة 2 03===اللعبة 3 04===اللعبة 4 05===اللعبة 5 هل الحل هو ان يكون الحقل الغريب في جدول الابناء ؟؟؟ .... طبعا لا لاننا اذا وضعناه في جدول الابناء سيكون الان ما هو نوع العلاقة بين جدول الابناء وجدول الالعاب؟؟؟؟ العلاقة هنا (يستطيع الولد استخدام اكثر من لعبة وكل لعبة ممكن ان يستخدمها اكثر من ولد) اذا العلاقه هذة المرة من النوع متعدد الى متعدد ولحل هذه المشكلة يتم انشاء جدول جديد يحمل حقلين غريبين وليس واحد وهذا الجدول اسمة العلمي الجدول التقاطعي انشئ جدول جديد اسمة TblSunGame وفية 1. SunNum = نص = طولة 6 2. =GameNum نص = طولة 2 الان كيف نضع المفتاح الاساسي ؟؟؟ هنا نستخدم مفتاحين اساسيين وليس واحد وذلك عن طريق تضليل الحقلين معا والضغط على مفتاح اساسي وهنا يكون المفتاح الاساسي الفعلي هو الناتج من دمج المفتاحين معا فلو كان الحقل الاول مفتاحة الرئيسي000001 والثاني 04 فان المفتاح الجديد سيكون 00000104 الان بعد ان تعرفنا على انواع الروابط سنتعرف على كيفية الربط بعد ان انتهينا من تصميم الجداول الاربعة الان سنربطها مع بعضها وكما يلي ادخل على علاقات واضف الجداول الاربعة 1. لربط جدول الاباء مع جدول الابناء اضغط على الخانة FatherNum الموجودة في جدول الاباء واسحبها الى الحقل الغريب FatherNum الموجود في جدول الابناء , ستفتح لك شاشة جديدة وما عليك الا ان تضع اشارة صح على فرض التكامل المرجعي او Enforce referential Integrity ثم تحديث الحقول الموجوده في الاسفل او Cascade update related field واخيرا حذف الحقولCascade delete related field ووضيفة العبارتين الاخيرتين (التحديث والحذف) انه اذا قمنا بتحديث حقل فان كل السجلات المرتبطة ستتحدث تلقائيا واذا حذفناه فانه سيتم حذف السجلات المرتبطة به 2. لربط جدول الابناء مع الجدول التقاطعي (SunGame) اختر الخانة SunNum من جدول الابناء واسحبها الى القيمة المقابلة في الجدول التقاطعي واختر فرض التكامل المرجعي والتحديث والحذف 3. لربط جدول الالعاب استخدم نفس الطريقة السابقة طبعا قمت انا بانشاء جداول جديدة وروابط جديدة ستجدونها في الملف المرفق وارجو الدخول الى العلاقات لمشاهدة تخطيط العلاقات كيف اصبح هنيئا الان لديك جداول منظمة ومرتبطة مع بعضها بعلاقات متينة ولا يشوبها أي عيب وهذا المرفق بعد تعديلة في المرفقات اكرر رجائي الى الاخوان تصويب اي خطأ ورد او سيرد والتكرم بالمشاركة بالملاحظات واي معلومة ترونها مفيدة ولكم جزيل الشكر F_S.rar
×
×
  • اضف...

Important Information