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

تعديل على نموذج بحث وادخال بيانات (معدل)


palesten
إذهب إلى أفضل إجابة Solved by jjafferr,

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

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

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

القاعدة مرفقة

3.jpg.54012619d3244626d94de965caaecd18.jpg

1.jpg.ced97e5c86ab16b215b14a80fa678d3e.jpg

2.jpg.eb66f70d01365219ea592a4759091e16.jpg

system.rar

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

السلام عليكم.

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

استبدل جملة الكود السابقة بالتالي

Undo
'DoCmd.FindRecord X
Me.card.Value = ""
Me.card.SetFocus
Else: Exit Sub: End If
DoCmd.RefreshRecord

 

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

منذ ساعه, Eng.Qassim said:

السلام عليكم.

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

استبدل جملة الكود السابقة بالتالي

Undo
'DoCmd.FindRecord X
Me.card.Value = ""
Me.card.SetFocus
Else: Exit Sub: End If
DoCmd.RefreshRecord

 

اخى المهندس قاسم العزيز

بالفعل الخطا لا يظهر كل مرة ولكنه يظهر احيانا وخاصة فى اول مرة ادخل فيه رقم الهوية

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

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

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

  • أفضل إجابة

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

 

الخطأ الابسط:

عندكم خطأ في اسم الحقل في المعادلة ، يجب ان تكون بالمقلوب:

image.png.69b2a7d35a304e8665cdcde029b6bc69.png

واردت اتاكد ان الكلمات العربية ما قلبت الكود :

1454.1.gif.37ee4a1727dddd199a26b00eb0108239.gif

 

والخطأ الاكبر:

النموذج مرتبط بجدول ، فأي تغيير في بياناته يجعلك تغير بيانات الجدول ،

فلما تدخل رقم الهوية (لسبب مؤقت وهو البحث) في حقل مرتبط في الجدول ، فانت تُخبر نظام قاعدة البيانات بأنك في وضع تعديل:

1454.gif.44fb1abbc09d77a346d445df642903a0.gif.

.

فالطريقة الصحيحة ان يكون عندك حقل غير مضمن للبحث ، هكذا مثلا:

image.png.daf5ed9f60892d8e0fc631b07a638d1f.png

.

ثم تستعمل هذا الكود على حدث "بعد التحديث"

Private Sub srch_Card_AfterUpdate()
    
    Dim X As Long
    Dim i As String
    Dim xSplit() As String

    X = Me.srch_Card.Text
    'i = DLookup("[aa] & '|' & [bb] & '|' & [cc]", "BeneficiaryT", "[رقم الهوية]=" & X)
    i = Nz(DLookup("[الاسم] & '|' & [اسم الاب] & '|' & [العائلة]", "BeneficiaryT", "[رقم الهوية]=" & X), "There_Are_No_Records_Here")
    
    If i <> "There_Are_No_Records_Here" Then
    
        xSplit = Split(i, "|")
        i = xSplit(0) & " " & xSplit(1) & " " & xSplit(2)
        
        MsgBox "رقم الهوية" & " ( " & X & " ) " & " تم تسجيله مسبقاُ" & "بأسم" & " " & i, vbCritical, "  تنبيه"
        Me.card.SetFocus
        DoCmd.FindRecord X, , , , , , True
        DoCmd.GoToControl "srch_Card"
        Me.srch_Card.SetFocus
        
    Else
        MsgBox "لا يوجد سجل لهذه الهوية", vbCritical, "  تنبيه"
        Exit Sub
    End If

End Sub

.

 

وتلاحظ اني لم استدعي البيانات من الجدول 3 مرات باستعمال 3 اوامر Dlookup ، وانما استدعيتها مرة واحدة (هذا جدا مهم خصوصا لما تكون قاعدة بياناتك مقسمة وعلى السرفر ويستعملها اكثر من مستخدم ، فيجب ان تقلل من زياراتك للجدول ، حتى تخفف العبء عليها وعلى الشبكة) 🙂

 

جعفر

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

13 دقائق مضت, jjafferr said:

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

 

الخطأ الابسط:

عندكم خطأ في اسم الحقل في المعادلة ، يجب ان تكون بالمقلوب:

image.png.69b2a7d35a304e8665cdcde029b6bc69.png

واردت اتاكد ان الكلمات العربية ما قلبت الكود :

1454.1.gif.37ee4a1727dddd199a26b00eb0108239.gif

 

والخطأ الاكبر:

النموذج مرتبط بجدول ، فأي تغيير في بياناته يجعلك تغير بيانات الجدول ،

فلما تدخل رقم الهوية (لسبب مؤقت وهو البحث) في حقل مرتبط في الجدول ، فانت تُخبر نظام قاعدة البيانات بأنك في وضع تعديل:

1454.gif.44fb1abbc09d77a346d445df642903a0.gif.

.

فالطريقة الصحيحة ان يكون عندك حقل غير مضمن للبحث ، هكذا مثلا:

image.png.daf5ed9f60892d8e0fc631b07a638d1f.png

.

ثم تستعمل هذا الكود على حدث "بعد التحديث"

Private Sub srch_Card_AfterUpdate()
    
    Dim X As Long
    Dim i As String
    Dim xSplit() As String

    X = Me.srch_Card.Text
    'i = DLookup("[aa] & '|' & [bb] & '|' & [cc]", "BeneficiaryT", "[رقم الهوية]=" & X)
    i = Nz(DLookup("[الاسم] & '|' & [اسم الاب] & '|' & [العائلة]", "BeneficiaryT", "[رقم الهوية]=" & X), "There_Are_No_Records_Here")
    
    If i <> "There_Are_No_Records_Here" Then
    
        xSplit = Split(i, "|")
        i = xSplit(0) & " " & xSplit(1) & " " & xSplit(2)
        
        MsgBox "رقم الهوية" & " ( " & X & " ) " & " تم تسجيله مسبقاُ" & "بأسم" & " " & i, vbCritical, "  تنبيه"
        Me.card.SetFocus
        DoCmd.FindRecord X, , , , , , True
        DoCmd.GoToControl "srch_Card"
        Me.srch_Card.SetFocus
        
    Else
        MsgBox "لا يوجد سجل لهذه الهوية", vbCritical, "  تنبيه"
        Exit Sub
    End If

End Sub

.

 

وتلاحظ اني لم استدعي البيانات من الجدول 3 مرات باستعمال 3 اوامر Dlookup ، وانما استدعيتها مرة واحدة (هذا جدا مهم خصوصا لما تكون قاعدة بياناتك مقسمة وعلى السرفر ويستعملها اكثر من مستخدم ، فيجب ان تقلل من زياراتك للجدول ، حتى تخفف العبء عليها وعلى الشبكة) 🙂

 

جعفر

كم انت رائع يادكتور جعفر

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

48 دقائق مضت, jjafferr said:

النموذج مرتبط بجدول ، فأي تغيير في بياناته يجعلك تغير بيانات الجدول

فعلا اخي استاذ @jjafferr..كلامك صحيح

كنت اظن ان النموذج لادخال البيانات الجديدة فقط... واظهار رقم الهوية المسجل

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

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

منذ ساعه, jjafferr said:

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

 

الخطأ الابسط:

عندكم خطأ في اسم الحقل في المعادلة ، يجب ان تكون بالمقلوب:

image.png.69b2a7d35a304e8665cdcde029b6bc69.png

واردت اتاكد ان الكلمات العربية ما قلبت الكود :

1454.1.gif.37ee4a1727dddd199a26b00eb0108239.gif

 

والخطأ الاكبر:

النموذج مرتبط بجدول ، فأي تغيير في بياناته يجعلك تغير بيانات الجدول ،

فلما تدخل رقم الهوية (لسبب مؤقت وهو البحث) في حقل مرتبط في الجدول ، فانت تُخبر نظام قاعدة البيانات بأنك في وضع تعديل:

1454.gif.44fb1abbc09d77a346d445df642903a0.gif.

.

فالطريقة الصحيحة ان يكون عندك حقل غير مضمن للبحث ، هكذا مثلا:

image.png.daf5ed9f60892d8e0fc631b07a638d1f.png

.

ثم تستعمل هذا الكود على حدث "بعد التحديث"

Private Sub srch_Card_AfterUpdate()
    
    Dim X As Long
    Dim i As String
    Dim xSplit() As String

    X = Me.srch_Card.Text
    'i = DLookup("[aa] & '|' & [bb] & '|' & [cc]", "BeneficiaryT", "[رقم الهوية]=" & X)
    i = Nz(DLookup("[الاسم] & '|' & [اسم الاب] & '|' & [العائلة]", "BeneficiaryT", "[رقم الهوية]=" & X), "There_Are_No_Records_Here")
    
    If i <> "There_Are_No_Records_Here" Then
    
        xSplit = Split(i, "|")
        i = xSplit(0) & " " & xSplit(1) & " " & xSplit(2)
        
        MsgBox "رقم الهوية" & " ( " & X & " ) " & " تم تسجيله مسبقاُ" & "بأسم" & " " & i, vbCritical, "  تنبيه"
        Me.card.SetFocus
        DoCmd.FindRecord X, , , , , , True
        DoCmd.GoToControl "srch_Card"
        Me.srch_Card.SetFocus
        
    Else
        MsgBox "لا يوجد سجل لهذه الهوية", vbCritical, "  تنبيه"
        Exit Sub
    End If

End Sub

.

 

وتلاحظ اني لم استدعي البيانات من الجدول 3 مرات باستعمال 3 اوامر Dlookup ، وانما استدعيتها مرة واحدة (هذا جدا مهم خصوصا لما تكون قاعدة بياناتك مقسمة وعلى السرفر ويستعملها اكثر من مستخدم ، فيجب ان تقلل من زياراتك للجدول ، حتى تخفف العبء عليها وعلى الشبكة) 🙂

 

جعفر

الاخوة الاعزاء @Eng.Qassim @jjafferr

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

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

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

26 دقائق مضت, Eng.Qassim said:

تفضل اخي بتصحيح استاذ @jjafferr

 

systemJJ.accdb 864 kB · 1 download

اولا ربى يسعدك ويجلب لك السرور من حيث لا تحتسب

هناك اخى مشكلة بسيطة وهى

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

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

اريد عند اذافة سجل جديد ان يصبح ايضا حقل (ادخل رقم الهوية) فارغا

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

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