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

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

قام بنشر

السلام عليكم

استخدم الكود التالي لتشغيل استعلام الحاق عند اغلاق النموذج

docmd runcommand accmdsaverecord 

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

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

قام بنشر

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

 

برأيي .. عند إغلاق النموذج ، إذا كان السجل الحالي في وضع تحرير ( Dirty ) ، فإن اكسيس ( للأسف ) يقوم بمحاولة حفظه تلقائياً . لكن !!! في بعض الحالات ، إذا كان المستخدم لم "يخرج" من آخر حقل عدله ( يعني لا يزال المؤشر في نفس الحقل ) . أو أن حدث الإغلاق يتم تنفيذه بسرعة قبل أن ينتهي الحفظ ، فإن acCmdSaveRecord لا يتم تننفيذه فعلياً كما تتصور ,,

لذلك ، تشغيل استعلام إلحاق بعد هذا الحدث مباشرة قد يتم قبل ما اكسيس ينتهي فعلياً من حفظ السجل ، وده يسبب إن الاستعلام ما يشتغل بشكل صحيح "إلا بعد المحاولة الثانية" .

 

ومن الحلول التي يمكنك الاعتماد عليها ..

If Me.Dirty Then Me.Dirty = False

فمن وجهة نظري هذا السطر ⬆ أقوى من acCmdSaveRecord لأنه :-

أولاً ( وللأسف أيضاً :biggrin: ) يجبر اكسيس على حفظ السجل الحالي يدوياً ، بدون الاعتماد على واجهة المستخدم أو الأحداث التلقائية .

لتنفيذ الحفظ في حدث BeforeClose أو BeforeUnload أو Form_BeforeUpdate ، حاول استخدام الفكرة التالية :-

Private Sub Form_Unload(Cancel As Integer)
    If Me.Dirty Then
        Me.Dirty = False
    End If
    DoCmd.SetWarnings False
    DoCmd.OpenQuery "اسم استعلام الإلحاق الخاص بك"
    DoCmd.SetWarnings True
End Sub

 

 

قام بنشر

 استاذي عند مشكلة ايضا بخصوص هذا الموضوع نعاني منها في حفظ التعديل في الاستعلام به اسم مثلا Qry_Menha عادي يتم الحفظ اما اذا كان الدخول بواسطة النموذج لمصدر الاستعلام بدون اسم لايحفظ اي تعديل  ماسبب ذلك ? أتمنى اني وضحت مشكلتي

قام بنشر
منذ ساعه, طاهر اوفيسنا said:

 استاذي عند مشكلة ايضا بخصوص هذا الموضوع نعاني منها في حفظ التعديل في الاستعلام به اسم مثلا Qry_Menha عادي يتم الحفظ اما اذا كان الدخول بواسطة النموذج لمصدر الاستعلام بدون اسم لايحفظ اي تعديل  ماسبب ذلك ? أتمنى اني وضحت مشكلتي

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

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