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

خاصية DIRTY


safari

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

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

 

النموذج لما يتم فتحه ، تكون السجلات نظيفة me.Dirty=false ، ولما يتم التعديل على اي منها ، فيكون السجل  me.Dirty=true ،

فإذا اردت ان تطبع التقرير مثلا ، ولكن تريد إظهار بيانات السجل الذي انت عليه ، وقد تكون فد عملت تعديلات على السجل ، لذا فانت تريد التأكد من حفظ السجل قبل الطباعة ، فيمكنك عمل التالي قبل سطر طباعة التقرير:

1. docmd.runcommand accmdsaverecord 
يحفظ السجل
بغض النظر ان السجل نظيف او لا


2. me.refresh
يعمل انتعاش للنموذج ، والذي بدوره يجعل مؤشر البيانات ينتقل الى اول سجل
وبما ان السجل يفقد التركيز ، فيتم حفظه تلقائيا
ويعيد طلب البيانات من الجداول ، بغض النظر ان السجل نظيف او لا


3. me.requery
تقريبا نفس طريقة عمل #2 اعلاه


4. if me.Dirty then me.Dirty=false
اذا كان السجل غير نظيف ، فيقوم بحفظ السجل

.

رجاء تخيل ان قاعدة البيانات الخلفية موجودة على سيرفر ، لذلك يُوجب عدم مزاحمة السيرقر إلا في اضيق الحالات ،

الطريقة:

1. تحفظ البيانات ، بغض النظر اذا كان الوضع يتطلب ذلك او لا ، ففيه عمل اضافي ،

2 و 3. تحفظ البيانات ،  بغض النظر اذا كان الوضع يتطلب ذلك او لا ، ويطلب البيانات مرة اخرى من الجداول ، ففيه عمل اضافي بزيادة ،

4. تحفظ البيانات وقت الحاجة فقط ، فتكون هذه الطريقة هي الامثل 🙂

 

جعفر

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

20 ساعات مضت, safari said:

السلام عليكم

خاصية DIRTY

مقصود بيها ايه ؟

و فايدتها ايه ؟

 

بالاضافة لما تفضل به الاخ الكبير @jjafferr

 

تستعمل dirty  في بعض الحالات مثال :

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

واردت الخروج من النموذج 

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


 

If MsgBox("هل تريد الخروج؟", vbYesNo, "تأكيد الخروج") = vbYes Then
    If Me.Dirty Then
        If MsgBox("هل تريد حفظ الإدخال الحالي", vbYesNo, "حفظ السجل") = vbNo Then
            Me.Undo
            DoCmd.Close
        Else
            DoCmd.Save
            DoCmd.Close
        End If
    Else
       DoCmd.Close
     End If

Else
       Me.xxx.SetFocus
End If

 

تم تعديل بواسطه jjafferr
وضع الكود بالطريقة الصحيحة بإستخدام <> القائمة
  • 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