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

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

قام بنشر

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

من المعلوم انه عند اختيار اظهار محدد السجلات تظهر

ايقونة عند العمل على تحديث السجل من قبل المستخدم برمز القلم

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

لتخبره ان مستخدم اخر يقوم بالعمل على نفس السجل

sad.png.8ec8f9bfe808b33b0ae9be158678335f.png

لكن عند عدم اختيار محدد السجلات فلن تظهر هذه الايقونات

بحثت عن الموضوع لعلي احصل على طريقة استطيع من خلالها

اظهار صورة في النموذج بدل الايقونة تفيد المستخدم  ان السجل محرر أم مقيد

هل توجد طريقة لمثل هذه الحالة

 

قام بنشر

وعليكم السلام 🙂

 

الطريقة هي ان نتأكد اذا كان السجل مقفل ، اي ان السجل يتم يحريره/تغييره.

اولا يجب ان تجعل الاكسس يقفل السجل الذي يكون عليه التحرير:

image.png.df6039ee0ce1ce03b62ac68b4a8f3834.png

.

وبعد هذا تشوف الكود هنا 

https://www.utteraccess.com/forum/index.php?s=bacff30915afa7f517609d3afe412ef8&showtopic=1834320&view=findpost&p=2350111

 

جعفر

 

  • Like 1
قام بنشر
16 دقائق مضت, jjafferr said:

وعليكم السلام 🙂

 

الطريقة هي ان نتأكد اذا كان السجل مقفل ، اي ان السجل يتم يحريره/تغييره.

اولا يجب ان تجعل الاكسس يقفل السجل الذي يكون عليه التحرير:

image.png.df6039ee0ce1ce03b62ac68b4a8f3834.png

.

وبعد هذا تشوف الكود هنا 

https://www.utteraccess.com/forum/index.php?s=bacff30915afa7f517609d3afe412ef8&showtopic=1834320&view=findpost&p=2350111

 

جعفر

 

امممممممممم

وكيف يتم التعامل مع هذا الكود 
متى نقوم بعمل CALL له وكيف  :wallbash:

  • Like 1
قام بنشر

طيب خلينى اسأل سؤال على طريقتى انا 

الاكسس بمجرد فتح النموذج يقوم بعمل فحص لــ    RECORD-LEVEL LOCKING

تمام وبناء عليه يتم تغيير الايقونة 

الا الان كل شئ تمام

 

ما هو الامر الذى يظهر فى هذا الوقت   حالة RECORD-LEVEL LOCKING 

قام بنشر
2 ساعات مضت, ابا جودى said:

ما هو الامر الذى يظهر فى هذا الوقت   حالة RECORD-LEVEL LOCKING 

هذا هو سؤال الاخ كاسر 🙂

 

جعفر

قام بنشر
10 ساعات مضت, jjafferr said:

الله يعطيك العافية استاذنا

حاولت مع الكود لكن ما توصلت لنتيجة

اعتقد اني ما قدرت اتوصل ف أي حدث يتم وضعه

ومثل ما قال الاستاذ / محمد 

متى يتم استدعائه

هذا مرفق ارجو التطبيق عليه

ليكون فائده لنا ومن يأتي بعد ذلك ليبحث عن المعلومة

RECORD-LEVEL.accdb

  • Like 1
قام بنشر

السلام عليكم 🙂

 

اريدكم تشوفوا هذا المثال ، ولو انه يدوي ، ولكنه يعطي الفكرة 🙂

وبعدها ، ممكن نعمله تلقائي على حدث "الحالي" للنموذج 🙂

 

جعفر

1075.10-09.mdb

  • Like 2
قام بنشر
12 ساعات مضت, jjafferr said:

اريدكم تشوفوا هذا المثال ، ولو انه يدوي ، ولكنه يعطي الفكرة 🙂

وبعدها ، ممكن نعمله تلقائي على حدث "الحالي" للنموذج 🙂

وعليكم السلام استاذنا

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

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

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

قام بنشر

منطقيا  ..  يجب ان يكون الحل متاح .. لماذا ؟

لأن العلامات تظهر على محدد السجلات عند تغير الخاصية

بحثت كثيرا  وتوصلت الى طريقة تحايل على السجل  باستخدام  :  Me.Dirty .. false or true

الآن افتحوا المرفق  وجربوا .. يشتمل على نموذجين تم ضبط السجلات = محرر .. بمعنى اننا سنعمل على المثال وكأننا على الشبكة

افتحوا  النموذج frm1  وغيرو في قيمة الحقل واتركوه مفتوحا  ثم افتحوا النموذج frmtest 

1- حاولوا تغيير قبمة الحقل وانظروا الصورة التي ستظهر

2- ادر عجلة الفأرة  للانتقال الى سجل آخر او جديد ثم اكتب شيئا وانظر ماذا يحدث للصورة

اتمنى ان يكون حلا  مرضيا

db1.mdb

  • Like 1
  • Thanks 1
قام بنشر
4 ساعات مضت, ابوخليل said:

الآن افتحوا المرفق  وجربوا .. يشتمل على نموذجين تم ضبط السجلات = محرر .. بمعنى اننا سنعمل على المثال وكأننا على الشبكة

حياك الله استاذنا

عند تجربة المثال بالطريقة التي ذكرتها

عند محاولة تعديل سجل نعم تظهر الصورة  stop لكن لاحظ انه لايمكننا التعديل على اي سجل بعده او قبله

لإننا نعمل من قاعدة بيانات واحده

اعتقد أن هذه الخاصية ف نسخة الاكسس 2010

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

وفتحت الواجهة الاخرى وحاولت اعدل على نفس السجل فكانت النتجة ممتازة

تحركت للسجل الذي قبله والسجل الذي بعده فسمح بالتحرير

النتيجة الى الان ممتازة بقي التجربة على الشبكة يوم الاحد القادم اقوم بالتجربة ان شاء الله

 استفسار :::

  Me.Dirty .. false

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

    If Me.Dirty Then Me.Dirty = False

لزر أمر فتح أو إغلاق

وعلى ما اتذكر سببت مشاكل كثيرة

وعني شخصيا كنت اقوم بإيقاف هذا الجزأ من  الكود لتلافي المشاكل التي يسببها

فهل تعتقد ان الدالة Dirty   ستسبب  مشاكل عند وجود شوائب في النموذج للحل الذي وضعته

تقبل فائق شكري وتحياتي ،،،

 

 

 

قام بنشر
1 ساعه مضت, kaser906 said:

If Me.Dirty Then Me.Dirty = False

 

والامر الكامل هو:

If Me.Dirty = true Then Me.Dirty = False

هي تساوي في العمل:

docmd.runcommand accmdsaverecord

اي تحفظ السجل ، ولكن ،

بدل ان نحفظ السجل وبدون ان نكون قد قمنا يتغيير شيء فيه ، الامر me.Dirty=true معناه هناك تغيير في قيمة في السجل ،

فاذا بالفعل هنا تغيير ، اذن قم بالحفظ ، يعني تحقق اذا كان الحفظ مطلوب او لا 🙂

 

جعفر

  • Thanks 1
قام بنشر
2 دقائق مضت, jjafferr said:

اي تحفظ السجل ، ولكن ،

بدل ان نحفظ السجل وبدون ان نكون قد قمنا يتغيير شيء فيه ، الامر me.Dirty=true معناه هناك تغيير في قيمة في السجل ،

فاذا بالفعل هنا تغيير ، اذن قم بالحفظ ، يعني تحقق اذا كان الحفظ مطلوب او لا 🙂

رائع استاذي

الان فهمت المعنى

قام بنشر
3 ساعات مضت, kaser906 said:

فهل تعتقد ان الدالة Dirty   ستسبب  مشاكل عند وجود شوائب في النموذج للحل الذي وضعته

لن يكون هناك مشاكل 

في المثال نحن استفسرنا فقط  ولم نعط امر إزالة او حفظ :

اذا فيه شوائب اظهر الاقونة A وإلا اظهر الايقونة B

الخطأ عادة يظهر عند  الامر بتغيير الحالة ، يكون الحقل غير قابل للتحرير فيظهر الخطأ

 

  • Like 1
قام بنشر

السلام عليكم 🙂

 

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

ولكني ارفق هنا التجارب الاثنين الاخرى لنفس الموضوع (6 ملفات ، 3 ملفات لكل تجربة) ، وجاهز للشبكة ، BE على السيرفر ، و FE_1 على كمبيوتر و FE_2 على كمبيوتر آخر (بس انا استعملتهم كلهم على كمبيوتر واحد 🙂 )

 

وفي انتظار نتيجة تجاربك 🙂

 

جعفر

1075.RecordLock.zip

  • Thanks 1
قام بنشر
2 ساعات مضت, jjafferr said:

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

تمام انا مثلك في البداية وذهبت ابحث ثم رجعت اليها .. واكتشفت ان سبب عدم ظهور النتيجة هو انني  لم اوظفها في الحدث المناسب

2 ساعات مضت, jjafferr said:

ولكني ارفق هنا التجارب الاثنين الاخرى لنفس الموضوع (6 ملفات ، 3 ملفات لكل تجربة) ، وجاهز للشبكة ، BE على السيرفر ، و FE_1 على كمبيوتر و FE_2 على كمبيوتر آخر (بس انا استعملتهم كلهم على كمبيوتر واحد 🙂 )

في انتظار نتيجة تجاربك 🙂

 

النتيجة رائعة وتعطي حالة السجل بامتياز

بقي الآن ان تحول النتيجة التي تظهر الى قيمة (منطقية او نصية) من اجل تمريرها الى الصورة

وتوظفها في احداث السجل ( لان السجل قابل للتغير)

 

 

 

  • Like 1
قام بنشر

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

كنت ناووي اجرب الحلول التي ارفقتموها يوم الاحد لعدم توفر شبكة

لكن عندما رأيت اساتذتي متفاعلين مع الموضوع

قلت خليني اضرب الحديد وهو حامي

قمت بعمل شبكه محليه عندي بالبيت

من ثلاث اجهزة  الاول سيرفر والثاني والثالث مستخدمين

واليكم نتائج التجربه

مرفق الاستاذ @ابو خليل

نجحت العملية على الجهاز المحلي ونجاح على الشبكة

مرفق الاستاذ جعفر

image.png.4f50b0dcc5d0cd0fb54d4ae33e16c2c8.png

فشل العملية على الجهاز المحلي وفشل على الشبكة

المرفق الثاني للاستاذ جعفر

image.png.9c7937df535c34c5347dd11dc4c9c662.png

نجاح العملية على الجهاز المحلي ونجاح العملية على الشبكة

كنت ارغب في حل واحد الان اصبح عندي حلين

وهذا ما ينطبق على توقيع استاذي جعفر


 

في اعتقادي ، مشاركة أكثر من شخص في الرد على السؤال ، يفتق الاذهان ويدمج التجارب ويبلور الافكار وفائدة للجميع ، فمنه نتعلم الطرق الاخرى للإجابة على السؤال:rol: 

 

اخيرا اساتذتي

طرحي للموضوع كان بسبب مشكلة ولم يكن لسبب تجميلي او طلب عابر

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

اتصلوا بي وقالوا ان البرنامج متجمد لايسمح لنا بالتعديل

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

المشكلة لازالت قائمه

اضطررت للذهاب لأرى المشكلة

ففتح البرنامج رأيت ليس به مشكله اخبروني اذهب للسجل رقم كذا

ففتح عليه وجدت انه لا يقبل التعديل علمت بأن السجل قيد التحرير

المشكله الاجهزة ليس عليها اجهزة اخراج للصوت ليعطيك تنبيه صوت نغمة تحرير السجل

ولم ا اقم باظهار محدد السجلات في النماذج  لتظهر الايقونة

طلبت منهم اغلاق الاجهزة التي تعمل على البرنامج ولكن لم تحل المشكلة

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

بعد اعادة البحث عن الاجهزة مرة أخرى

اتضح ان احد الموظفين فتح السجل للتحرير ثم تركه وقام وخرج من المكتب وترك جهاز الحاسب يعمل والبرنامج

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

بعد فترة من عدم الاستخدام والا لكان قطع الاتصال بقاعدة البيانات

لذلك طرحة هذا الموضوع

علما انه ليس حل للمشكلة التي ذكرتها فالحل للمشكلة

كان باغلاق البرنامج عند عدم استخدامه لمدة عشر دقائق لقطع الاتصال بقاعد البيانات( الجداول)

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

شكرا لك استاذي @jjafferr  شكرا لك استاذي @ابو خليل

 

 

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