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

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

قام بنشر

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

اعزائي الكرام

لدي نموذج فرعي ورئيسي

بالنموذج الفرعي في حدث BeforeInsert event اضفت الكود التالي لمنع المستخدم من اضافة سجلات جديدة في الفرعي بدون ان تكون لها آبإ في النموذج الرئيسي :

Dim frm as Form

Set frm = Me.Parent

If IsNull(frm.[ID]) Then

Cancel = True

MsgBox "Create a record in the main form first.", vbExclamation, "Required data."

frm.[ID].SetFocus

End If

الكود يعمل جيدا اذا كان المفتاح الرئيسي ترقيم تلقائي لكن لو كان من نوع رقم او نص لايعمل جيدا .

وتظل رسالة اكسس التي تفيد تعذر اضافة سجل جديد ظاهرة .

هل من حل لذلك ؟

قام بنشر
 

اليك المرفق اخي :

NewRecordInSubFrm.rar

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

NewRecordInSubFrm.rar

قام بنشر
 

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

NewRecordInSubFrm.rar

اخي جيد واشكر تفاعلك لكن

غرضي من الكود هو : لو نسي المستخدم ادراج سجل جديد بالنموذج الرئيس وحاول ادراج سجل جديد بالفرعي ان يتم اعلامه ان يقوم اولا باضافة السجل الأب ؟

قام بنشر
 

اخي جيد واشكر تفاعلك لكن

غرضي من الكود هو : لو نسي المستخدم ادراج سجل جديد بالنموذج الرئيس وحاول ادراج سجل جديد بالفرعي ان يتم اعلامه ان يقوم اولا باضافة السجل الأب ؟

عفوا ماكان فهمت مطلوبك
والان حسب فهمي لطلبك صار كود تبعك الى هذا

  Dim frm1 As Form
        Set frm1 = Me.Parent
        If IsNull(Forms!mainfrm!CustName) = True Then
                Cancel = True
                    MsgBox "áÇÒã ÊÏÎá ÇáÈíÇäÇÊ Ýí äãæÐÌ ÇáÇÈ ÇæáÇ", vbExclamation, "Required data."
                        Forms!mainfrm!CustName.SetFocus
                    ElseIf IsNull(frm1.[OrderID]) Then
                            Cancel = True
                                MsgBox "áÇÒã ÊÏÎá ÇáÈíÇäÇÊ Ýí äãæÐÌ ÇáÇÈ ÇæáÇ", vbExclamation, "Required data."
                                    frm1.[OrderID].SetFocus
        End If

ملفك بعد تعديل

NewRecordInSubFrm.rar

  • 1 month later...

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