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

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

قام بنشر

السلام عليكم 

هل هناك امكانية لجعل النموذج يتوقف عن العمل بعد عدد معين من السجلات 

 

مثلا سند  قبض  ......... ادعله يستقبل 10 سجلات فقط وبعد ذلك تتحول كافة الحقول الى عدم التمكين 

اذا حدا عنده فكرة عن الموضوع يا ريت لانه يخدمني كثير

 

بحثت ولم اوفق 

قام بنشر

وعليكم السلام:smile:

 

تستطيع حساب عدد السجلات هكذا (اكتب اسم الجدول بدلا عن Table_Name) :

dim rst as dao.recordset
dim RC as integet

set rst=currentdb.openrecordset("Select * From Table_Name")
rst.movelast:rst.movefirst:RC=rst.recordcount

if RC=>10000 then
هنا تكتب ما تريد من الاوامر لوقف البرنامج
endif

 

جعفر

  • Like 1
  • Thanks 1
قام بنشر

جاري التجربة

1 ساعه مضت, jjafferr said:

وعليكم السلام:smile:

 

تستطيع حساب عدد السجلات هكذا (اكتب اسم الجدول بدلا عن Table_Name) :


dim rst as dao.recordset
dim RC as integet

set rst=currentdb.openrecordset("Select * From Table_Name")
rst.movelast:rst.movefirst:RC=rst.recordcount

if RC=>10000 then
هنا تكتب ما تريد من الاوامر لوقف البرنامج
endif

 

جعفر

اخي العزيز @jjafferr

ما حكيت لي وين احط الكود ؟ قبل التحديث ولا بعد ........... الخ ؟؟

  • Like 1
قام بنشر
2 ساعات مضت, عبد اللطيف سلوم said:

مثلا سند  قبض  ......... ادعله يستقبل 10 سجلات فقط وبعد ذلك تتحول كافة الحقول الى عدم التمكين

اتفضل اليك مثال على ذلك بطريقة اخرى
 

Private Sub Form_Current()
    If Me.RecordsetClone.RecordCount >= 10 Then
'            Me.Names.Enabled = False
'            Me.ID.Enabled = False
'            Me.PhoneNumber.Enabled = False
            Me.Form.AllowAdditions = False
        Else
'            Me.Names.Enabled = true
'            Me.ID.Enabled = true
'            Me.PhoneNumber.Enabled = true
            Me.Form.AllowAdditions = True
    End If
End Sub

 

فقط استقبال 10 سجلات في النموذج.accdb

  • Like 3
قام بنشر

وعليكم السلام:smile:

 

وبعد التحية والسلام على اخوي محمد سلامة وشفان:smile:

 

تستطيع استعمال طريقتي في اي مكان كان ، وحتى في وحدة نمطية مستقله ، مثلا:

public function Check_Records()

dim rst as dao.recordset
dim RC as integet

set rst=currentdb.openrecordset("Select * From Table_Name")
rst.movelast:rst.movefirst:RC=rst.recordcount

if RC=>10000 then
هنا تكتب ما تريد من الاوامر لوقف البرنامج
endif

end function

.

اما مثال اخوي شفان ، فيكون في النموذج فقط (هكذا بعد التعديل ، لكي تحصل على عدد السجلات الصحيح)

Private Sub Form_Current()
    Me.RecordsetClone.movelast
    If Me.RecordsetClone.RecordCount >= 10 Then
'            Me.Names.Enabled = False
'            Me.ID.Enabled = False
'            Me.PhoneNumber.Enabled = False
            Me.Form.AllowAdditions = False
        Else
'            Me.Names.Enabled = true
'            Me.ID.Enabled = true
'            Me.PhoneNumber.Enabled = true
            Me.Form.AllowAdditions = True
    End If
End Sub

 

جعفر

  • Like 3
  • Thanks 1
قام بنشر
22 دقائق مضت, jjafferr said:

اما مثال اخوي شفان ، فيكون في النموذج فقط

اهلا بعودتك استاذي الحبيب

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

هكذا بعد التعديل ، لكي تحصل على عدد السجلات الصحيح

هل هناك مشكلة بدون ان تكتب هذا السطر

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

Me.RecordsetClone.movelast

لان انا جربت بدون هذا السطر بواسطة مسج بوكس ليس هناك مشكلة

قام بنشر

حيا الله اخوي شفان:smile:

 

الامر Recordset  او Recordsetclone هما من عائلة DAO ، 

فإذا طلبت عدد السجلات مباشرة ، فستحصل على 0 (اي لا سجلات) ، او رقم (ولكن ليس عدد السجلات الصحيح) ،

بينما اذا كان عندنا عدد كبير من السجلات ، فاكسس لا يجلب جميع هذه السجلات الى النموذج ، والامر RecordCount. كذلك لا يجلب عدد هذه السجلات ، والسبب ان اكسس يعرض لك عدد معين من السجلات بسرعة وبإستخدام ذاكرة اقل ،

واذا اردت الحصول على عدد السجلات الصحيح ، فيجب ان تستخدم MoveLast قبل استعمال RecordCount :smile:

 

جعفر

  • Like 3

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