السلام عليكم
لدي جدولين ،جدول الموظفين و جدول الإجازات .
إريد عن إختيار الموظف تظهر لي أخر اجازة حصل عليها
البرنامج في المرفقات ولكم تحياتي
السلام عليكم
للاستعلام عن آخر إجازة يتم بعكس الترتيب بـ DESC وأخذ سطر واحد بـ TOP 1
كود :
Private Sub dgv_AllName_SelectionChanged(sender As Object, e As EventArgs) Handles dgv_AllName.SelectionChanged
Me.NameEjaza.Text = ""
Me.DateStart.Text = ""
Me.DateEnd.Text = ""
Dim da As New OleDbDataAdapter
da = New OleDbDataAdapter("select top 1 * from Ejaza where id1='" & Val(Me.ID1.Text) & "' order by DateStart DESC", con)
Dim dt As New DataTable
If da.Fill(dt) > 0 Then
Me.NameEjaza.Text = dt.Rows(0)("NameEjaza").ToString()
Me.DateStart.Text = dt.Rows(0)("DateStart").ToString()
Me.DateEnd.Text = dt.Rows(0)("DateEnd").ToString()
End If
End Sub
أرجوأن يكون المطلوب
هذا هو المطلوب
جزاك الله خير
و الف شكر
(13-09-19, 07:08 PM)سميـر كتب : [ -> ]السلام عليكم
للاستعلام عن آخر إجازة يتم بعكس الترتيب بـ DESC وأخذ سطر واحد بـ TOP 1
كود :
Private Sub dgv_AllName_SelectionChanged(sender As Object, e As EventArgs) Handles dgv_AllName.SelectionChanged
Me.NameEjaza.Text = ""
Me.DateStart.Text = ""
Me.DateEnd.Text = ""
Dim da As New OleDbDataAdapter
da = New OleDbDataAdapter("select top 1 * from Ejaza where id1='" & Val(Me.ID1.Text) & "' order by DateStart DESC", con)
Dim dt As New DataTable
If da.Fill(dt) > 0 Then
Me.NameEjaza.Text = dt.Rows(0)("NameEjaza").ToString()
Me.DateStart.Text = dt.Rows(0)("DateStart").ToString()
Me.DateEnd.Text = dt.Rows(0)("DateEnd").ToString()
End If
End Sub
أرجوأن يكون المطلوب
اعتذر على ازعاجك و إزعاج الاخوان الباقين
هل بالأمكان أن تربطها مع جدولين مختلفه ، و المرة هذي بدون داتا قريد .
البرنامج في المرفقات وللجميع شكري
وعليكم السلام ورحمة الله وبركاته
قم باستبدال جملة SQL بالجملة التالية وقم بوضع اسم جدول الموظفين وحقل رقم الموظف
كود :
"select * from Ejaza e,اسم جدول الوظفين m where m.اسم حقل رقم الموظف=e.id1 And e.DateStart=(select max(DateStart) from Ejaza where id1='" & Val(Me.ID1.Text) & "' ) And id1='" & Val(Me.ID1.Text) & "'"
تمنياتي لك وللجميع التوفيق
(20-09-19, 06:12 PM)baha كتب : [ -> ]وعليكم السلام ورحمة الله وبركاته
قم باستبدال جملة SQL بالجملة التالية وقم بوضع اسم جدول الموظفين وحقل رقم الموظف
كود :
"select * from Ejaza e,اسم جدول الوظفين m where m.اسم حقل رقم الموظف=e.id1 And e.DateStart=(select max(DateStart) from Ejaza where id1='" & Val(Me.ID1.Text) & "' ) And id1='" & Val(Me.ID1.Text) & "'"
تمنياتي لك وللجميع التوفيق
أشكرك على سرعة الرد ، ولكن هل تتكرم و تعدل على برنامجي المرفق ، لأنها لم تنجح معي
أشكرك على صبرك
كان هناك نقص في جملة SQL, الكود بعد التعديل بعض الحقول لم أقم بعرضها ولكن يمكنك عرضها كما تشاء
[
attachment=22975]التعديل
تمنياتي لك وللجميع التوفيق
مرحبا ،،
هذا كود البحث كامل استبدله ،،
كود :
If T1.Text = "" Then
MsgBox("الرجاء ادخال البيانات كاملة ")
T1.Focus()
Else
Try
Using da As New OleDbDataAdapter("select AllName.ID, AllName.ID1, AllName.Name1, AllName.Age, AllName.HomeHdress ,Ejaza.ID, Ejaza.NameEjaza, Ejaza.DateStart, Ejaza.DateEnd from AllName, Ejaza where AllName.ID1= Ejaza.ID1 And AllName.ID1 ='" & T1.Text & "' order by DateStart Desc", con)
Dim dt As New DataTable
da.Fill(dt)
If dt.Rows.Count > 0 Then
Name1.Text = dt.Rows(0)("Name1")
ID1.Text = dt.Rows(0)("ID1")
Age.Text = dt.Rows(0)("Age")
HomeHdress.Text = dt.Rows(0)("HomeHdress")
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
NameEjaza.Text = dt.Rows(0)("NameEjaza")
TextBox1.Text = dt.Rows(0)("DateStart")
TextBox2.Text = dt.Rows(0)("DateEnd")
Else
MsgBox("رقم القسم غير موجود")
End If
End Using
Catch exp As Exception
MsgBox(exp.Message)
End Try
End If
وهذا الإستعلام من 3 جداول :
كود :
If T1.Text = "" Then
MsgBox("الرجاء ادخال البيانات كاملة ")
T1.Focus()
Else
Try
Using da As New OleDbDataAdapter("Select Top 1 AllName.Name1, AllName.ID1, AllName.Age, AllName.HomeHdress,
Dorat.NameDorh, Dorat.Modh, Dorat.DateEnd,
Ejaza.NameEjaza, Ejaza.DateStart, Ejaza.DateEnd
FROM(Ejaza INNER JOIN Dorat On Ejaza.ID1 = Dorat.ID1)
INNER Join AllName On Dorat.ID1 = AllName.ID1
WHERE(((AllName.ID1) = '" & T1.Text & "'))
GROUP BY AllName.ID1, AllName.Name1, AllName.Age, AllName.HomeHdress,
Dorat.NameDorh, Dorat.Modh, Dorat.DateEnd, Ejaza.NameEjaza,
Ejaza.DateStart, Ejaza.DateEnd ORDER BY Dorat.DateEnd DESC , Ejaza.DateEnd DESC", con)
Dim dt As New DataTable
da.Fill(dt)
If dt.Rows.Count > 0 Then
Name1.Text = dt.Rows(0)(0)
ID1.Text = dt.Rows(0)(1)
Age.Text = dt.Rows(0)(2)
HomeHdress.Text = dt.Rows(0)(3)
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
NameEjaza.Text = dt.Rows(0)(7)
TextBox1.Text = dt.Rows(0)(8)
TextBox2.Text = dt.Rows(0)(9)
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
TextBox3.Text = dt.Rows(0)(4)
TextBox4.Text = dt.Rows(0)(5)
TextBox5.Text = dt.Rows(0)(6)
Else
MsgBox("رقم القسم غير موجود")
End If
End Using
Catch exp As Exception
MsgBox(exp.Message)
End Try
End If