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

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

قام بنشر

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

 

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

لذا اريد وضع استعلام او كود لحقل (رقم الكتاب والموضوع وجهة الارسال ) اذا تطابقت الثلاثة يعطي خطأ او رسالة مكرر

البرنامج هذا http://up.top4top.net/downloadf-top4top_7f3f88df1c1-rar.html

ارجو منكم مساعدتي
ولكم مني جزيل الشكر

قام بنشر
Private Sub Form_BeforeUpdate(Cancel As Integer)
If DCount("[field1]", "table1", "[field1]='" & Me!txt1 & "' AND [field2]='" & Me!txt2 & "'AND [field3]='" & Me!txt3 & "'") > 0 Then
     MsgBox "duplicated fields", vbExclamation
    Me.Undo
    Cancel = True
End If
End Sub
  • Like 3
قام بنشر

 

Private Sub Form_BeforeUpdate(Cancel As Integer)
If DCount("[field1]", "table1", "[field1]='" & Me!txt1 & "' AND [field2]='" & Me!txt2 & "'AND [field3]='" & Me!txt3 & "'") > 0 Then
     MsgBox "duplicated fields", vbExclamation
    Me.Undo
    Cancel = True
End If
End Sub

 

 

الاستاذ ابا خليل

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

وهنا وفي هذا الرابط شرح اكثر ومع مثال

http://www.officena.net/ib/index.php?showtopic=61342&hl=

 

تحياتي

  • Like 2
قام بنشر

شكرا استاذ رمهان 

والله يكفينا شر الافخاخ 

هل تقصد ان الافضل ان يكون الحدث بعد التحديث ؟

 

Private Sub Form_AfterUpdate()
؟؟؟؟؟؟؟؟؟؟؟؟؟؟
End Sub

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

ولا تنسى استاذنا  يكون على 2003

وفقك الله لكل خير

  • Like 1
قام بنشر (معدل)

اخي الاستاذ اباخليل

تفضل هذا تطبيق للكود السابق والخلل ! 

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

 

المسألة هي تنبيه فقط وجل من لا يغفل !

 

تحياتي

New Microsoft Access قاعدة بيانات.rar

تم تعديل بواسطه رمهان
  • Like 1
قام بنشر (معدل)

اطلعت على المثال

جزيت خيرا 

فانت اعتبرت عدم القدرة على التعديل خلل 

والحقيقة هي عكس ذلك فهي ميزة وفريدة ايضا

وكما هو المتبع عند البعض ان لم يكن الاغلبية اتباع طرق خاصة لاجراء التعديل على البيانات   

تم تعديل بواسطه أبـوخليل
  • Like 1
قام بنشر

هنا تم استخدام معرف السجل للمقارنة وباستثناء السجل الحالي !

اتمنى ان وصلت الفكرة تماما ! وهو لما تريد الاخت السائلة !

 

بالتوفيق

New Microsoft Access قاعدة بيانات.rar

  • Like 2
قام بنشر

نعم وصلت فكرتك ورأيتها في الرابط الذي وضعته سالفا

نعم هي طريقة اخرى لمنع التكرار

وكل يأخذ الطريقة التي تناسبه

في اجابتي :

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

يعني زيادة ميزة  وليست فخا حسب تعبيرك   

والاهم من ذلك ان الكود الذي تفضلت به انت لن يعمل الا مع وجود المعرف الفريد

اما الحل الذي طرحته انا فهو عام يتعامل مع الحقل الهدف ولا يشترط وجود المعرف

 

 بارك الله فيك وبعد هذا الايضاح  : 

ان اول مداخلة لك تحتاج منك الى مراجعة 

وقد وجدت اغلب الاخوان وفي اكثر من مكان يقعون في هذا الفخ !

اي فخ ؟ هديت وعوفيت   " هذه الكلمة تعطي ايحاء خاصا .. فليست في قاموس منتدياتنا " 

 

الزبدة اخوي محمد :

كان بامكانك عرض الكود مباشرة باعتبارة طريقة اخرى مع الاشارة الى الفوارق

يعني   يا حبيبنا واستاذنا  ارمي المعلومة ومالنا ومال التلميح والناس والاخوان الآخرين

تقبل ودي واحترامي ،،،

قام بنشر

الاستاذ الجليل ابا خليل

والله لا ايحاءات ولا شئ ! ذكرت ان بعض الاخوة وقع في الفخ كما وقعت فيه انا ! وهنا لا يوجد ايحاء بل شي صريح !

لذلك يبدو لي ان المشكلة لم تتضح لك بعد والله اعلم ! ( اسميتها مشكلة عشان خاطرك بدلا من فخ )

اريدك ان تطبق معي الاتي وبعد قبلة على رأسك :

افتح المرفق الذي بالمشاركة رقم 5 . اذهب للحقل "هامش الكتاب" وفي السجل 1 واكتب اي شي ثم اخرج من السجل ستظهر رسالة التكرار وانت لم تمس اي من الحقول الثلاثة التي بها شرط التكرار ( رقم الكتاب والموضوع وجهة الارسال ) . النظام يقول تكرار لانه ادخل السجل الحالي ضمن العد وحسب الحقول الثلاثة التي ليس بها اي تعديل !

بس هذه المشكلة وانا خاضع بين يديك لترشدني ان كنت ضالا !

تحياتي

  • Like 1
قام بنشر

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

 

 

وانتم ما شاء الله اصحاب خبرة لذا ممكن اطمع بسؤال اخر هو

كيف اعمل نص تنبؤي لحقل مثل اللي بالاكسل يعني من اكتب في حقل جهة الكتاب مدخلة مسبقا يظهر نص تنبؤي لها

مع خالص شكري

قام بنشر

الاخت الكريمة بغداد :

يفضل ان تفتحي موضوعا جديدا بسؤالك

 

استاذنا العزيز رمهان :

لانه ادخل السجل الحالي ضمن العد وحسب الحقول الثلاثة التي ليس بها اي تعديل !

نعم بالفعل هذا السجل معدود ضمن سجلات الجدول

المسألة حدثت كالتالي :

حين يبدأ المستخدم بادخال البيانات يكون عدد السجل الحالي (count) = صفر

لانه لم يتم تحديث النموذج بعد 

ولكن حين يعود المستخدم مرة اخرى يكون عدد السجل داخل مجموعته =1

والشرط في الكود يمنع التحديث اذا كان اكبر من صفر

وهنا لن يقبل اكسس اي تغيير على الحقول الاخرى 

ولكن :

لاحظ انه يمكننا تغيير الحقول التي طبقنا عليها شرط التكرار ( بشرط الا يكون لها شبيه داخل الجدول )

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

اليست هذه ميزة فريدة وتؤخذ بالاعتبار ؟

 

اخي العزيز رمهان اخواني الكرام :

نقاشنا هنا يخص فيما لو استخدمنا نموذج عرض البيانات واستخدمناه لادخال البيانات

اما حين نستخدم نموذج ادخال البيانات سينقطع هذا النقاش

لانه بعد تحديث النموذج لن نجد امامنا بيانات نعدل عليها 

  • Like 1

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