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

عدم تكرار السجل


eng aoff
إذهب إلى أفضل إجابة Solved by ابوآمنة,

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

شكرا استاذي العزيز ولكن رقم الوارد يكون متشابه يعني مثلا يأتي كتاب وارد من وزارة الصحة ذات العدد 1000 ويأتي كتاب من وزارة اخرى نفس الرقم وفي هذه الحالة سوف يتم التكرار ,,,,المطلوب مطابقة رقم الوارد مع تاريخ الكتاب مع الجهة الوارد منها الكتاب ان كانت البيانات متطابقة عند الادخال تظهر رسالة مثلا الكتاب موجود مسبقاً

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

13 دقائق مضت, eng aoff said:

شكرا استاذي العزيز ولكن رقم الوارد يكون متشابه يعني مثلا يأتي كتاب وارد من وزارة الصحة ذات العدد 1000 ويأتي كتاب من وزارة اخرى نفس الرقم وفي هذه الحالة سوف يتم التكرار ,,,,المطلوب مطابقة رقم الوارد مع تاريخ الكتاب مع الجهة الوارد منها الكتاب ان كانت البيانات متطابقة عند الادخال تظهر رسالة مثلا الكتاب موجود مسبقاً

ضع هذا الكود قبل التحديث وغير مسميات الجداول والحقول 
Private Sub Form_BeforeUpdate(Cancel As Integer)
If DCount("[اسم الحقل]", "اسم الجدول", "[اسم الحقل]='" & Me!اسم الحقل في النموذج & "' AND [اسم الحقل الثاني]='" & Me!اسم الحقل الثاني في النموذج & "'AND [اسم الحقل الثالث]='" & Me!اسم الحقل الثالث في النوذج & "'") > 0 Then
     MsgBox "duplicated fields", vbExclamation
    Me.Undo
    Cancel = True
End If
End Sub
  • Like 1
رابط هذا التعليق
شارك

السلام عليكم

الطريقة التي ألجأ إليها:

١- عمل حقل من نوع مذكرة.

٢-في حدث بعد التحديث لكل من حقل 

-رقم الوارد - جهة الوارد- تاريخ الكتاب الوارد

أضع الأمر التال

Me.Haql_almozake=me.number &" "& me.Name&" "&me.date

وفِي خصائص الحقل في الجدول، اجعله مفهرساً والتكرار غير مقبول.

 

فاتني أن أذكر طريقة أخرى:

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

تم تعديل بواسطه Khalf
  • Like 1
رابط هذا التعليق
شارك

استاذ @عبد اللطيف سلوم وضعت الكود في النموذج قبل التحديث ولكن المشكلة عند النقر على اضافة سجل جديد لا يقبل الاضافة علما ان الكتاب الوارد غير مكرر 

استاذ @Khalf عملت الخيار الاول ولكن دون جدوى والخيار الثاني لا ينفع لان عند اختيار نفس التاريخ لا يقبل 

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

منذ ساعه, خالد سيسكو said:

جزاك الله خيرا اخى خالد

اخى الفاضل @eng aoff هل اطلعت على الرابط ده ؟

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

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

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

السلام عليكم

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

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

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

وعلى أية حال أنتم أدرى بحيثيات الإدخال في قاعدة البيانات.

 

نظام وارد.accdb

تم تعديل بواسطه Khalf
  • Like 1
رابط هذا التعليق
شارك

  • أفضل إجابة

ومشاركة مع الزملاء

الكود

Private Sub znumbers_BeforeUpdate(Cancel As Integer)
Dim Rs As DAO.Recordset
   Set Rs = CurrentDb.OpenRecordset("wared")
   Rs.MoveFirst
   Do Until Rs.EOF
    If Rs!znumber = [znumbers] And Rs!zdate = Me.zdates Then
    MsgBox "يجب ألا يتكرر تاريخ ورقم الكتاب معاً", vbExclamation
    Me.Undo
    Cancel = True
          End If
   Rs.MoveNext
   Loop
   Set Rs = Nothing
End Sub

 

نظام وارد.saleh101.accdb

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

15 ساعات مضت, خالد سيسكو said:

السلام عليكم

بعد اذن الاستاذ Khalf  

مثال بدالة Dlookup

تخياتي

نظام وارد2.rar 34.18 kB · 4 تنزيلات

جزاك الله خيرا اخى خالد

جميل اخى اخى خالد كل يوم ارى تركيبه عجيبه لدوال Dlookup واخواتها فى طريقه دمجهم  وكل يوم اتعلم شىء جديد

12 ساعات مضت, ابوآمنة said:

ومشاركة مع الزملاء

الكود


Private Sub znumbers_BeforeUpdate(Cancel As Integer)
Dim Rs As DAO.Recordset
   Set Rs = CurrentDb.OpenRecordset("wared")
   Rs.MoveFirst
   Do Until Rs.EOF
    If Rs!znumber = [znumbers] And Rs!zdate = Me.zdates Then
    MsgBox "يجب ألا يتكرر تاريخ ورقم الكتاب معاً", vbExclamation
    Me.Undo
    Cancel = True
          End If
   Rs.MoveNext
   Loop
   Set Rs = Nothing
End Sub

 

نظام وارد.saleh101.accdb 480 kB · 0 تنزيلات

جزاك الله خيرا اخى صالح

واذا كان فى كتاب لشرح مبسط DAO عند احد اخواننا فياريت يشاركنا

تقبلوا تحياتى وتمنياتى لكم وللجميع بالتوفيق

طبتم واهتديتم

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

4 دقائق مضت, أحمد الفلاحجى said:

جزاك الله خيرا اخى صالح

واذا كان فى كتاب لشرح مبسط DAO عند احد اخواننا فياريت يشاركنا

تقبلوا تحياتى وتمنياتى لكم وللجميع بالتوفيق

طبتم واهتديتم

حياك أخي أحمد

تفضل الشرح

وهناك مواضيع أخرى في  المنتدى أحرص على الأمثلة .

بالمحاولة والتجربة راح تستفيد 

  • 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