اذهب الي المحتوي
أوفيسنا

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

قام بنشر

السلام عليكم ورحمة الله وبركاته اخواني اعضاء وزوار المنتدى الرجاء افادتي عن سبب ظهور رسالة تعارض الكتابة والموضحة بالصورة المرفقة حيث انها تظهر عند تغيير اي بيانات او تحديث النموذج واسف لعدم قدرتي على ارفاق قاعدة البيانات نظرا لكبر حجمها وجزاكم الله خيرا .post-41520-0-68774700-1396552865_thumb.j

قام بنشر

اشكرك ابا عمر على ايجاد الحل مع العلم بانه يوجد حل اخر وهو تصميم النموذج من جديد وتختفي الرسالة حسب ما افادني احد الاصدقاء المبرمجين وهل هذا الحل يجدي حسب علمك ؟؟ وشكرا 

قام بنشر

السلام عليكم ورحمة _الله_ وبركاته
أخي  الحبيب مسألة التعارض بين المستخدمين على الشبكة من المسائل الشائكة جدا لذا لابد من مراعاة أمور عند تصميم قاعدة البيانات للعمل على الشبكة 
اليك إحتياطات يجب مراعاتها :

 

 

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

 

عند التطرق الى هذا الموضوع والخاص بقاعدة البيانات على الشبكة فإننا سندخل في متاهات متشعبة ومتشابكة في نفس الوقت ولكننا سنختصر الموضوع بناء على فهم آلية عمل الشبكة

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

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

 

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

 

1. طرق مشاركة البيانات في بيئة متعددة المستخدمين

 

*. مشاركة قاعدة بيانات اكسيس بالكامل

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

ويشترك كافة الأشخاص في البيانات ويستخدمون نفس النماذج  والتقارير والاستعلامات ، ووحدات الماكرو  والوحدات النمطية . إن استخدم هذه الاستراتيجية غير محببه وبطيئة نوعا ما

 

*. مشاركة الجداول الموجودة في قاعدة بيانات اكسيس فقط

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

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

 

*. مشاركة كائنات قاعدة بيانات اكسيس أو صفحات الوصول إلى البيانات على الأنترنت

يمكننا إخراج واحد أو أكثر من كائنات قاعدة البيانات إلى HTML‏ ثابت أو تنسيق HTML منشأ على الملقم أو إنشاء صفحات الوصول إلى البيانات، ثم عرضها في مستعرض، مثل Internet Explorer، على الشبكة العالمية .

*. نسخ قاعدة بيانات اكسيس نسخاً متماثلاً

في حالة استخدام جهازي كمبيوتر، مثل الكمبيوتر المكتبي والكمبيوتر المحمول ، يمكننا استخدام "حقيبة الملفات" في Microsoft Windows لعمل نسخ متماثلة من قاعدة بيانات اكسيس والاحتفاظ بهذه النسَخ المتماثلة متزامنة . ويمكن أيضاً لعدة مستخدمين في أماكن متفرقة العمل على نسَخ خاصة بهم في نفس الوقت ثم مزامنة هذه النسخ على شبكة الاتصال ، إما من خلال اتصال هاتفي أو من خلال الأنترنت .

 

*. إنشاء تطبيق عميل / ملقم

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

 

2. المساعدةعلى تعقب حالة السجلات أثناء تحريرها .

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

4.gif

 

3. إعدادات تأمين السجل الافتراضية .

*. بلا تأمين :

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

 

*. سجلات محرره :

تؤمن قاعدة البيانات اكسيس السجلات التي تقوم بتحريرها ، وبذلك لا يمكن أن يقوم أي مستخدم آخر بتغييرها .

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

 

*. كافة السجلات  :

تؤمن قاعدة البيانات اكسيس كافة السجلات في النموذج أو ورقة البيانات ( جداول المصدر ) التي تقوم بتحريرها طوال وقت احتفاظك به مفتوحاً ، وبذلك لا يمكن لأي شخص آخر تحرير السجلات أو تأمينها . وتعد هذه الاستراتيجية مقيدة للغاية ، ولذلك قم باختيارها فقط عندما تعرف أنك الشخص الوحيد الذي يريد تحرير سجلات في كل مرة.

 

معلومة 1 : عند تحرير بيانات في جدول قاعدة بيانات SQL مرتبط بواسطة استخدام ODBC ، لا تؤمن قاعدة البيانات اكسيس السجلات، ولكن، تتحكم  قاعدة بيانات SQL في التأمين .

وفي هذه الحالة تتصرف قاعدة البيانات اكسيس دوماً كأن إعداد تأمين السجلات  بلا تأمين هو المحدد .

 

4. التأمين على مستوى الصفحة وعلى مستوى السجل .

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

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

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

و ورقة البيانات  والتعليمات البرمجية التي تستخدم كائن مجموعة السجلات لتنفيذ حلقات عبر السجلات ، ولكن ليس عبر الاستعلامات الإجرائية أو عبر التعليمات البرمجية التي تقوم بتنفيذ

عمليات مجمعة باستخدام عبارات SQL.

 

5. تحديث إعدادات الفاصل الزمني لإعادة المحاولة وتحديثها .

يمكننا استخدام إعدادات الفاصل الزمني للتحديث وعدد مرات إعادة محاولة التحديث لتحديد الفترات وعدد المرات التي يحاول فيها الأكسيس حفظ سجل مؤمن من قبل مستخدم آخر.

ويمكننا أيضاً استخدام إعدادات الفاصل الزمني لتحديث ODBC والفاصل الزمني للتحديث للتحكم في الفترات التي يقوم فيها اكسيس بتحديث البيانات . حيث يقوم التحديث بتحديث البيانات

الموجودة مسبقاً فقط في ورقة البيانات أو النموذج الخاص بنا . فهو لا يقوم بإعادة ترتيب السجلات ، ولا عرض سجلات جديدة ، ولا إزالة سجلات محذوفة أو السجلات التي لم تعد تحقق معايير معينة.

و لعرض هذه التغييرات، يجب علينا إعادة استعلام السجلات الأساسية لورقة البيانات أو للنموذج .

 

6. بداية العمل مع البيانات وحل التعارضات بين المستخدمين .

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

 

5.gif

 

وعند إختيار الخاصية سجل محرر Edited Record ففي هذه الحالة عندما يفتح المستخدم النموذج يكون بجانب السجل الاول رمز مثل القلم وهذا يدل على أن النموذج حر ويمكن استخدامه ،  وفي نفس الوقت لو فتح أحد المستخدمين هذا النموذج سيجد رمز القفل وهذا يدل على أن النموذج الآن قيد الاستخدام ولا يمكن إستخدامه في هذا الوقت . حتى يقوم المستخدم الاول بحفظ العمل ، كما نشاهد في الشكل تأمين السجلات في خصائص النموذج .

 

ملاحظة :

يأخذ اكسس تقريباً 60 ثانية حتى يقوم بعرض العلامة ويمكن تغير هذه الفترة الزمنية من

أدوات Tools

خيارات Options

خيارات متقدمة Advanced

ثم من تحديث الفاصل الزمنى Refresh Interval

6_.gif

ثم تغير الزمن من 60 ثانية إلى الوقت المناسب ، ولو كان مثلا 5 يكون أفضل عندما تكون قاعدة البيانات متوسطة الحجم ، ومن نافذة خيارات متقدمة Advanced ، يمكن أن تحدد كثير من الخصائص المتعلقة بتحديث البيانات عند الاستخدام المشترك وتستطيع أن تجرب عدد من التجارب إلى أن تصل إلى أفضل المستويات الممكنة .

7.gif

 

7. حفظ تغييرات التصميم في قاعدة بيانات مشتركة .

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

و بشكل عام ، عندما تحاول القيام بتغيير تصميم كائن قاعدة بيانات (باستثناء الجداول والاستعلامات) أو عنصر في وضع المشاركة، يقوم اكسيس بالترقية المؤقتة للوضع الخاص لقاعدة البيانات .

 

*. إذا كنت المستخدم الوحيد لقاعدة البيانات في ذلك الوقت . وعندما تقوم بحفظ كافة تغييرات التصميم وإغلاق كافة الإطارات في طريقة العرض "تصميم" ، يرجع اكسيس قاعدة البيانات إلى وضع المشاركة و في غضون ذلك ، لن يتمكن المستخدمون الآخرون من فتح قاعدة بيانات اكسيس .

 

*. إذا كان لدى مستخدم آخر قاعدة بيانات مفتوحة في وضع المشاركة وتحاول انت القيام بتغيير التصميم الرئيسي ، كتعديل نموذج ، ينبهك الاكسيس إلى أنك قد لا تتمكن من حفظ التغييرات

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

 

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

 

8. الاختلافات بين تغييرات التصميم الرئيسية والثانوية .

إذا لم يكن لديك حق وصول خاص لقاعدة البيانات ، ينبهك اكسيس عندما لا تتمكن من حفظ تغييرات التصميم الرئيسية التالية :

*. التغييرات في كائنات قاعدة البيانات (باستثناء الجدول والاستعلامات) في طريقة العرض "تصميم"

*. التغييرات في صفحة خصائص النموذج في طريقة العرض "نموذج"

*. ترجمة مشروع أو تعديل خصائص مشروع أو إضافة مرجع في Visual Basic Editor أو إزالته

*. إعادة تسمية كائن من قاعدة البيانات أو لصقه أو حذفه

*. حفظ كائن قاعدة بيانات كنوع آخر من كائن قاعدة بيانات

*. إضافة عناصر تحكم أو تعديلها في شريط أوامر

*. تحرير مجموعات مخصصة في إطار قاعدة بيانات

*. إنشاء صفحة وصول إلى البيانات، وإعادة تسميتها، ونقلها، وحذفها

 

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

*. التغييرات في خصائص تنسيق ورقة البيانات، مثل أنماط السطور والخطوط

*. تجميد أعمدة ورقة البيانات، وإلغاء تجميدها، وإخفاؤها، وإظهارها

*. تعديل عرض عمود ورقة بيانات وحجم صف

*. التغييرات في عامل تصفية أو ترتيب فرز لنموذج أو ورقة بيانات

*. التغييرات في وضع ورقة بيانات فرعية (سواء موسعة أو مطوية)

*. التغييرات في ارتباط OLE/DDE لكائن OLE أو التغييرات في محتويات إطار كائن غير منضم

*. التغييرات في إعدادات الطابعة

*. التغييرات في شريط الأوامر، كتغيير موقعه وما إذا كان مرئياً أو لا

*. التغييرات في تخطيط إطار "قاعدة البيانات"

*.  إخفاءإستراتيجيات مشاركة تصميم قاعدة البيانات وتطويرها

 

9. إذا كنت ستشارك في تصميم قاعدة البيانات ، جرب استخدام الاستراتيجيات التالية .

*. قم بتعيين كائنات محددة أو مجموعات من الكائنات إلى مطورين محددين. على سبيل المثال، تعيين أحد المطورين لتصميم النماذج وآخر لتصميم التقارير.

فيمكن لكل مطور العمل على نسخة خاصة من قاعدة البيانات وعندما يكون فريق التطوير مستعداً للاختبار، والتجميع، والإنتاج، يمكن أن يقوم كل مطور بتصدير كائنات قاعدة البيانات من نسخته الخاصة من قاعدة البيانات إلى قاعدة البيانات الرئيسية .

*. قم باستخدام برنامج التحكم في التعليمات البرمجية المصدر . إذا كنت تستخدم Visual SourceSafe، يُفضل تشغيل "محلل الأداء" ( في القائمة أدوات ، قم بالإشارة إلى تحليل ، ثم انقر فوق الأداء ) بشكل دوري للإبقاء على أمثلية الأداء.

 

10. حفظ تغييرات التصميم في قاعدة بيانات مشتركة .

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

*. إذا كانت الكائنات تعتمد على بعضها البعض، عليك تحديثها جميعاً في نفس الوقت حتى لا يتمكن المستخدمون الآخرون من فتح إصدارات غير متوافقة من الكائنات .

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

 

*. إذا غيَّرت استعلاماً يفتحه مستخدم آخر، فيجب على هذا المستخدم إغلاق الكائن المتغير وإعادة فتحه حتى يتسنى له استخدام الإصدار الأخير منه.

 

*. في حالة التغيير في الوحدات النمطية  لا يتمكن المستخدمون الآخرون من تشغيل الإجراءين المحدثين Function أو Sub حتى يتم إغلاق قاعدة البيانات  وإعادة فتحها.

النقل عن الأستاذه زهرة جزاها الله خيرا وأحسن الله إليها

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

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

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

Important Information