السلام عليكم ورحمة الله وبركاته
اخي محمد اليك هذه الطريقة
اولا يجب ان يكون لديك حقل نوع تاريخ يتم فيه تسجيل اليوم الحالي عند اضافة السجل وعادة يكون هذا السجل هو الاخير اي ان الاي دي لهذا السجل سيكون هو الاكبر(Maxid) وفي كود الاضافة سنقوم بجلب هذا السجل ثم نقوم بالتحقق من التاريخ الموجود مع اضافة 7 ايام له فان كان اصغر او يساوي تاريخ اليوم الحالي فهذا يعني انه مضى اكثر من 7 ايام عليه عندها سنسمح بالاضافة والا فلا يمكن الاضافة
ماذا لو كان الجدول لايحوي اية سجلات وبالتالي هو فارغ (0) سجل في هذه الحالة يمكننا الاضافة ايضا
ولعمل ماسبق نحتاج الى فنكشن يجلب الماكس اي دي وفي كود الاضافة نقوم اولا يالاستعلام عن اخر سجل ومقارنة التاريخ مع تاريخ اليوم الحالي
افترضت اسم الجدول Personal وحقل الاي دي CV_ID وحقل التاريخ ذو الاندكس 3
1 فنكشن MaxID
كود :
Public Function MaxID_Personal() As DataTable
Dim Query As String = "Select IIF(MAX(CV_ID) IS Null,0,MAX(CV_ID)) From Personal"
Dim dt As New DataTable()
dt.Clear()
Dim Da As New OleDbDataAdapter(Query, Con)
Da.Fill(dt)
Return (dt)
End Function
كود بوتون الحفظ او اضافة سجل
كود :
Private Sub Btn_Save_Click(sender As Object, e As EventArgs) Handles Btn_Save.Click
' جلب اخرسجل
Dim Query As String = "Select * From Personal where CV_ID=" & MaxID_Personal.Rows(0)(0)
Dim dt As New DataTable()
dt.Clear()
Dim Da As New OleDbDataAdapter(Query, Con)
Da.Fill(dt)
' اذا كانت الداتاتابل تحتوي على سجل وهو وحيد
If dt.Rows.Count > 0 Then
' التحقق من ان حقل التاريخ مضافا عليه 7 ايام اصغر او يساوي التاريخ الحالي
' تعريف متغير نوع تاريخ يحمل قيمة حقل التاريخ الذي تم تسجيل السجل فيه
Dim kk As Date = CDate(dt.Rows(0)(3))
If kk.AddDays(7) <= Now Then
MsgBox("يمكن الاضافة")
' كود الاضافة
Else
MsgBox("لايمكن الاضافة")
Exit Sub
End If
' او ان الداتاتابل فارغة وليس فيها سجلات حيث يمكن الاضافة
Else
MsgBox("لايوجد سجلات الجدول فارغ يمكنك الاضافة")
End If
End Sub