10-10-20, 10:07 PM
السلام عليكم
ممكن من حضرتكم شرح الاستعلام علي Quary معين داخل قاعدة الـــ DataBase Access واستدعاه داخل الفيجوال بيسك والتعديل عليه والاضافه والحدف علي Quary
متلا اني عملت قاعدة بيانات متكونه من عدة جدوال وعملت استعلام معين علي 3 جدوال في اكسس والحمد الله الامور كويسه الي حد الان
بس واجهتني مشكلة علي عند التعديل او الاضافة عللي الاستعلام داخل DatGridViewo
انه لا يمكن الحدف او الاضافة علي البيانات داخل ال DatagridVieow
سوف ادرج المشروع
ممكن من حضرتكم شرح الاستعلام علي Quary معين داخل قاعدة الـــ DataBase Access واستدعاه داخل الفيجوال بيسك والتعديل عليه والاضافه والحدف علي Quary
متلا اني عملت قاعدة بيانات متكونه من عدة جدوال وعملت استعلام معين علي 3 جدوال في اكسس والحمد الله الامور كويسه الي حد الان
بس واجهتني مشكلة علي عند التعديل او الاضافة عللي الاستعلام داخل DatGridViewo
انه لا يمكن الحدف او الاضافة علي البيانات داخل ال DatagridVieow
سوف ادرج المشروع
كود :
End Sub
Function selectdata(cmdstr As String) As DataTable
Dim cmd As New OleDbCommand(cmdstr, con)
Dim da As New OleDbDataAdapter(cmd)
Dim dt As New DataTable
da.Fill(dt)
da.Dispose()
da = Nothing
Return dt
End Function
كود :
Public Sub GetData(cmdstr As String)
'اضافة/تعديل/حدف
Dim cmd As New OleDbCommand(cmdstr, con)
If con.State = ConnectionState.Open Then con.Close()
con.Open()
cmd.ExecuteNonQuery()
con.Close()
End Sub
كود :
Sub _loaddata()
Dim str As String = "SELECT *from Query2 "
Dim dt As DataTable = d.selectdata(str)
DGV1.DataSource = dt
End Sub
PHP كود :
Dim da As New OleDbDataAdapter("select *from Query2", con)
Dim dt As New DataTable
da.Fill(dt)
DGV1.DataSource = dt
d.custmoizeDGV(DGV1)
_clearText()
_cleartxt()
PHP كود :
Sub _cleartxt()
Dim str As String = "select Max(Ac_ID) FROM Query2"
TextID.Text = d.codeno(str)
TextNM.Text = 0
TextSp.Text = String.Empty
TextName.Text = String.Empty
TextAccount.Text = 0
TextBank.Text = String.Empty
TextSalary.Text = 0
PHP كود :
Sub _clearText()
Dim str As String = "SELECT max(Ac_ID) from Query2"
TextBox1.Text = d.codeno(str)
End Sub
PHP كود :
Private Sub BtnSave_Click(sender As Object, e As EventArgs) Handles BtnSave.Click
Dim ndx As Integer
If _save = False Then
'Edit
'MessageBox.Show("ToDo")
If String.IsNullOrWhiteSpace(TextNM.Text) Then
MessageBox.Show("ادخل الرقم المالي ")
TextNM.Text = String.Empty
TextNM.Select()
Return
End If
If String.IsNullOrWhiteSpace(TextName.Text) Then
MessageBox.Show("ادخل الاسم رباعي ")
TextName.Text = String.Empty
TextName.Select()
Return
End If
Dim id As Integer = DGV1(0, DGV1.SelectedRows(0).Index).Value.ToString
Dim str2 As String = String.Format("update Query2 set Ac_NM={0},R_Sp='{1}',Ac_Name='{2}',
Ac_Account={3},BName='{4}', Ac_Bs={5} where Ac_ID={6}",
TextNM.Text,
TextSp.Text,
TextName.Text,
TextAccount.Text, TextBank.Text, TextSalary.Text, id)
'Dim da As New OleDbDataAdapter("select *from Query2", con)
'Dim dt As New DataTable
'da.Fill(dt)
'DGV1.DataSource = dt
d.custmoizeDGV(DGV1)
d.GetData(str2)
MessageBox.Show("تم عمليةالتعديل بنجاح ")
ndx = DGV1.CurrentRow.Index
_loaddata()
_cleartxt()
cleardata()
DGV1.Rows(ndx).Selected = True
Else
_save = True 'Add
'ادا كان صندوق الملاحظات فارغ اكتب القيمة لا يوجد
If String.IsNullOrWhiteSpace(TextNM.Text) Or
String.IsNullOrWhiteSpace(TextName.Text) Then Return
ndx = DGV1.Rows.Count
'If String.IsNullOrWhiteSpace(TextNote.Text) Then TextNote.Text = "لا يوجد"
Dim str As String = String.Format("insert into Query2(Ac_ID,Ac_NM,R_Sp,Ac_Name,
Ac_Account,BName,Ac_Bs) values ({0},
{1},'{2}','{3}',{4}).'{5}',{6}",
TextID.Text, TextNM.Text, TextSp.Text,
TextName.Text, TextAccount.Text, TextBank.Text, TextSalary.Text)
'Dim da As New OleDbDataAdapter("select *from Query2", con)
'Dim dt As New DataTable
'da.Fill(dt)
'DGV1.DataSource = dt
d.custmoizeDGV(DGV1)
d.GetData(str)
MessageBox.Show("تمت الاضافة بنجاح")
DGV1.Rows(ndx).Selected = True
DGV1.FirstDisplayedScrollingRowIndex = ndx
_loaddata()
_cleartxt()
cleardata()
End If
End Sub