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

قاعدة واحدة أم قاعدتين مرتبطين؟


الردود الموصى بها

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

لدى أستفسار فضلا أريد إجابته وشكرا لتعاونكم معنا في الخير

 إذا كانت قاعدة البيانات بها جداول جاهزة ببيانات سابقة الإدخال ولكن هذه الجداول كبيرة الحجم وكما هو معلوم أن أقصى حجم لقاعدة البيانات هو 2 جيجا فهل الأفضل من حيث قوة الأداء وأستقرار العمل أن تكون القاعدة واحدة بغض النظر عن حجمها أم تكون قاعدتين بحيث تكون أحدهما لهذه الجداول الجاهزة بالبيانات والأخرى للقاعدة الرئيسية وإذا كان الأختيار الأخير هو الأفضل (أختيار القاعدتين) فبرجاء أن الإرشاد لشرح مستفيض لتنفيذ الربط بين القاعدتين. وجزاكم اللخ كل خير

رابط هذا التعليق
شارك

أخى sandanet

شاكر لحضرتك أهتمامك بالرد وحسن تجاوبك بالمشاركة المثمرة جعلها الله في ميزان حسناتك

ولكن ارجو من حضرتك تكرما بشرح لطريقة التنفيذ حيث أننى اتعرض لأول مرة لذلك الأمر بدون اى خلفية عنه واكرر شكرى لكم

رابط هذا التعليق
شارك

اخي الكريم وائل لقد قمت بتعديل الملف السابق وذلك لكي يعمل معك بصورة مباشرة فقط يلزمك تغيير الفورم المسمى بـ Background بالفورم الرئيسي الخاص ببرنامجك لكن يجب عليك تسميته بـ Background ايضاً 

طبعاً من الصعب شرح الكود بالكامل لأنه طويل جداً ويقوم بمهام عديدة لكن مايهمك هو عندما يتم الربط بنجاح فسيعمل برنامجك بصورة طبيعية وما ان يتم تغيير اسم قاعدة البيانات فسوف يطالبك البرنامج باعادة الربط 

 

باختصار جرب المرفق التالي .. اذا وجدته مناسب ويعمل بكفاءة حينها قم باستيراده الى برنامجك (جدول واحد ، النماذج ، الوحدات النمطية) ومن ثم غير اسم فورم الواجهة الخاص ببرنامجك الى الاسم Background لكي يتم فتحه بعد اكتمال عملية الربط

 

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

 

تحياتي

test.zip

رابط هذا التعليق
شارك

أخى الكريم بارك الله فيك

شاكر لك تجاوبك الكريم معى وارجو مزيدا من كرمك وسعة صدرك

بداية أعذرنى إذا أثقلت على حضرتك  بأن اضع بين يديك ما فهمته وما قمت به حتى إذا كان هناك خطأ فيما تم فيتم تصويبه وحتى نسير معا في نفس الطريق بلا لبس ونصل للنهاية المقصودة بإذن الله.

1- قسمت عملى إلى قاعدتين الأولى سميتها Main او ما سميته حضرتك بقاعدة الواجهة والتى سيتم التفاعل معها من خلال نماذجها (سيكون بها أيضا جداول لا داعى لنقلها للقاعدة الأخرى لأنها فارغة من البيانات بحيث تكون جاهز لإدخال البيانات بها أثناء التفاعل مع البرنامج) وأعدت تسمية النموذج الرئيسى بها إلى Background بدلا من Switchboard و القاعدة الأخرى سميتها Data أو ما سميته حضرتك بقاعدة الخلفية والتى سيكون بها 7 جداول فقط هى جداول البيانات الجاهزة ذات الحجم الكبير والذى أريد فصلها وربطها بالقاعدة الرئيسية حتى لا تؤثر على الحجم الكلى للقاعدة الرئيسية.

2- قمت باستيراد جدول BackDBs والنموذجين LinkDBsMain & LinkDBsSub والوحدتيتن OpenDialogue & Utils من عمل حضرتك المرفوع في مشاركتكم الأخيرة إلى قاعدة عملى الرئيسية Main.

3- قمت بفتح نموذج LinkDBsMain لعمل الربط التلقائة كما وضحت حضرتك مع قاعدة البيانات الجاهزة بعملى او الخلفية Data من خلال مفتاح تغيير المسار حتى لا يكون هناك خطأ في كتابة المسار ولكن كما هو واضح في الصورة المرفقة لم تظهر قاعدة بيانات الجداول الجاهزة ولا قاعدة البيات الرئيسية بعد تحديد مسارها لأن الامتدادات المتاحة ببرنامج الربط التلقائى ليس فيها أمتداد لقاعدتى البيانات الخاصة بى وهى ولقد أعدت إدخال المسار بشكل يدوي دون نتيجة.

أكرر أعتذارى لتعبك معى جعله الله في ميزان حسناتك وجزاك الله خير

 

039.png

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

ولا يهمك أخي وائل انا بالخدمة ان شاء الله ..

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

1- يجب عليك استيراد جميع النماذج وهي (LinkDBsMain و LinkDBsMain2 و LinkDBsSub و relinke و StartupFrm) ماعدا نموذج الـ Background لانك سوف تضع نموذجك الافتتاحي بشرط ان يكون نفس الاسم .. انت قلت انك استوردت والنموذجين LinkDBsMain & LinkDBsSub فقط .. لذلك ارجو منك الانتباه جيداً

 

2- النقطة التي نسيت ان اذكرها لك هي جعل النموذج StartupFrm هو نموذج بداية التشغيل لانه سوف يستدعي باقي نماذج الربط تلقائياً 

 

3- اذا كانت قاعدة الـ Main لديك تحتوي على جداول داخلية فعليك اضافتها لكود الوحدة النمطية المسماة بـ Utils كما هو موضح في الصورة التالية >> في الصورة ستجد هنالك اسماء جدولين مضافين للكود قم باستبدال اسماءها بالجداول التي لديك .. انا اضفت جدولين لكن انت يمكنك اضافة عدد اكبر من الجداول الداخلية فقط طبق نفس ماهو موضح بالصورة بالدوائر

 

4- البرنامج كان يعمل على اصدار اوفيس 2003 اي قواعد بيانات mdb و mde لانها الأكثر شيوعاً بين المستخدمين .. وانا انصحك بالابتعاد عن الاصدارات الحديثة لانه اذا اردت العمل على اوفيس 2013 فستجد صعوبة كبيرة في تطبيق الاكواد مستقبلاً لان الاصدارات الحديثة من الاوفيس 2013 فما فوق لاتقبل جميع الدوال الموجودة في الامثلة على الانترنت وبذلك ستجد صعوبة في تطبيقها .. على العموم جرب الملف المرفق بعد التعديل ووافيني بالنتيجة 

 

Untitled.png

test.zip

تم تعديل بواسطه sandanet
رابط هذا التعليق
شارك

أخى العزيز جزاك الله خيرا

شكرا لحسن متابعتك واهتمامك وردك ولكن أسمح لى بالتعليق

3 ساعات مضت, sandanet said:

1- يجب عليك استيراد جميع النماذج وهي (LinkDBsMain و LinkDBsMain2 و LinkDBsSub و relinke و StartupFrm)

أخر ثلاث نماذج غير موجودة أخى الكريم لا في ملفك المرفق قبل الأخير ولا الأخير حتى أقوم باستيرادهم لعملى كما يظهر بالصورة المرفقة.

051.png

3 ساعات مضت, sandanet said:

4- البرنامج كان يعمل على اصدار اوفيس 2003 اي قواعد بيانات mdb و mde لانها الأكثر شيوعاً بين المستخدمين

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

 

 

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

كيف ذلك؟؟؟!!! جرب اظهار الكائنات المخفية ... غريب جداً .. انظر الصورة لدي ذلك هو الملف الذي ارفقته لك .. وسأرفقه لك مرة اخرى 

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

جرب فتح المرفق السابق على جهاز آخر به اصدار مختلف من الاوفيس .. بالحقيقة لم اواجه مثل هذا الحدث من قبل :excl: لكن يبدو ان هذه احدى مشاكل اوفيس 2013 :wink2:

 

Untitled.png

link_database.zip

تم تعديل بواسطه sandanet
رابط هذا التعليق
شارك

أخى الكريم بارك الله فيك 

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

 

052.png

رابط هذا التعليق
شارك

أخى العزيز بارك الله فيك

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

ارجو إن تكرمت بإحالتى لرابط به طريقة أخرى ولو يدوية لتنفيذ ذلك بنجاح وشكر لك 

 

040.png

رابط هذا التعليق
شارك

هل تأكدت من وجود الجداول المرتبطة بعد اجراء عملية الربط؟؟ افتح قاعدة الـ Main بالضغط على زر Shift وانظر للجداول هل تم استيرادها ام لا

اذا لم ترى الجداول المرتبطة فقم بتغيير اسم قاعدة الجداول الى اي اسم اخر واعد فتح قاعدة main بصورة طبيعية فستلاحظ انه يطالبك بتحديد مكان قاعدة الجداول من جديد .. حدد مكانها وانتهى

 

لكن الرسالة السابقة تفيد بأن النموذج الذي تحاول فتحه مصدره استعلام اسمه QInfSura او جدول غير موجود .. اذا كان المصدر هو استعلام فيجب التأكد من الاستعلامات جميعها موجودة لديك في قاعدة الواجهات وليس في قاعدة الجداول لان عملية الربط سوف تتم مع الجداول فقط لذلك تأكد من ان جميع الاستعلامات لديك يجب ان تكون في قاعدة الواجهات main

 

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

 

تحياتي

رابط هذا التعليق
شارك

أخى الكريم

قمت بتنفيذ ما تفضلت به ولكن البرنامج لا يتم نقل الجداول المرتبطة من القاعدة الخلفية إلى القاعدة الرئيسية Main بعد إشعار عملكم باتمام عملية الربط فلا تظهر أسماء الجداول ذات السهم الأخضر الصغير (والتى ظهرت بعد تنفيذ الأمر بشكل يدوى).

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

لا يسعنا في الأخير إلا أن أشكر لحضرتك مجهودك واهتمامك ببالغ التقدير والاحترام شكرا لك وجزاك الله خيرا

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

أخى الكريم بارك الله فيك

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

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

بالمرفق صور توضح الطريقة اليدوية للربط بين قاعدتين كما وجدتها ونفذتها

 

الطريقة اليدوية للربط بين قاعدتين.rar

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

اخي الكريم وائل الشكر اولاً واخيراً لله عز وجل .. وبارك الله فيك .. انا بالحقيقة لم اشكو من توجيه لوم او تقصير بحقي من قبلك او من قبل اي حد آخر فالحمد لله بطبعي انا لا اهتم كثيراً بما يقال الا بما ينفع ويحقق الهدف المنشود في السؤال.

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

2 ساعات مضت, وائل أبو عبد الرحمن said:

أتمنى من حضرتك أخيرا مشكورا وبدون تكليف مد يد المساعدة بمتابعة بقية الإشكالات التى تواجهنى في بقية مواضيعى بالنفس المستوى المميز

اخي وائل صدقني انا لا افرق بينك وبين اي احد آخر قد استطيع مساعدته لوجه الله فالكل سواسية هنا وانا مثلك ايضاً احتاج الى الكثير والكثير لتعلمه من اخواني واساتذتي هنا في المنتدى وان شاء الله تلاقي جميع الحلول للإشكالات التي تواجهك .. انا عن نفسي قد تكون مساعدتي محدودة لعدة اسباب من ضمنها عدم استعمالي لاوفيس 2013 لكن انا شاء الله سأكون موجود في بقية المواضيع

 

تحياتي 

  • Like 1
رابط هذا التعليق
شارك

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information