Imports System.Data.OleDb
Public Class Form1
    Dim CnnData, sql As String
    Dim MyConnection As OleDbConnection
    Dim MyCommand As OleDbCommand
    Dim MyDataAdapter As OleDbDataAdapter
    Dim MyDataSet As New DataSet
    Sub display()
        Try
            Myconnection = New OleDbConnection(CnnData)
            Myconnection.Open()
        Catch er As System.Data.OleDb.OleDbException
            MsgBox("نأسف ... يجب اغلاق البرنامج . تحقق من قاعدة البيانات", MsgBoxStyle.Critical + MsgBoxStyle.MsgBoxRtlReading + MsgBoxStyle.OkOnly, "فشل الدخول")
            End
        End Try
        sql = "Select * from tableTower  order by  towerNo asc "
        MyCommand = New OleDbCommand(Sql, Myconnection)
        MyDataAdapter = New OleDbDataAdapter(Sql, MyConnection)
        MyDataSet.Clear()
        MyDataAdapter.Fill(MyDataSet, "tableTower")
        ''''''''''''''''''''''''''''''''''
        DataGrid1.SetDataBinding(MyDataSet, "tableTower")
        If Not DataGrid1.TableStyles.Contains("tableTower") Then
            Dim objdatagridtablestyle As New DataGridTableStyle
            objdatagridtablestyle.BackColor = Color.Silver

            objdatagridtablestyle.AlternatingBackColor = Color.Silver
            objdatagridtablestyle.MappingName = "tableTower"
            DataGrid1.TableStyles.Add(objdatagridtablestyle)

            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("towerNo").HeaderText = "الرقم"
            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("towerNo").Alignment = HorizontalAlignment.Center
            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("towerNo").Width = 80

            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("towerName").HeaderText = "الاسم"
            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("towerName").Alignment = HorizontalAlignment.Center
            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("towerName").Width = 90

            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("radius").HeaderText = "القيمة"
            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("radius").Alignment = HorizontalAlignment.Center
            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("radius").Width = 0

            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("towerCost").HeaderText = "التكلفة"
            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("towerCost").Alignment = HorizontalAlignment.Center
            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("towerCost").Width = 90

            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("towerCoverage").HeaderText = "العمر"
            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("towerCoverage").Alignment = HorizontalAlignment.Center
            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("towerCoverage").Width = 80

            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("towerCapacity").HeaderText = "السعة"
            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("towerCapacity").Alignment = HorizontalAlignment.Center
            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("towerCapacity").Width = 80

            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("fileNo").HeaderText = "رقم الملف"
            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("fileNo").Alignment = HorizontalAlignment.Center
            DataGrid1.TableStyles.Item("tableTower").GridColumnStyles.Item("fileNo").Width = 80

            
            objdatagridtablestyle.Dispose()
            objdatagridtablestyle = Nothing
        End If
        Label1.Text = MyDataSet.Tables(0).Rows.Count
        Myconnection.Close()
    End Sub
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If TextBox1.Text = "" Then
            MsgBox("الحقل فارغ", vbExclamation + vbMsgBoxRtlReading + vbOKOnly, "رسالة تنبية")
            TextBox1.Focus()
            Exit Sub
        End If
        If TextBox2.Text = "" Then
            MsgBox("الحقل فارغ", vbExclamation + vbMsgBoxRtlReading + vbOKOnly, "رسالة تنبية")
            TextBox2.Focus()
            Exit Sub
        End If
        If TextBox3.Text = "" Then
            MsgBox("الحقل فارغ", vbExclamation + vbMsgBoxRtlReading + vbOKOnly, "رسالة تنبية")
            TextBox3.Focus()
            Exit Sub
        End If
        If TextBox4.Text = "" Then
            MsgBox("الحقل فارغ", vbExclamation + vbMsgBoxRtlReading + vbOKOnly, "رسالة تنبية")
            TextBox4.Focus()
            Exit Sub
        End If
        If TextBox5.Text = "" Then
            MsgBox("الحقل فارغ", vbExclamation + vbMsgBoxRtlReading + vbOKOnly, "رسالة تنبية")
            TextBox5.Focus()
            Exit Sub
        End If
        If TextBox6.Text = "" Then
            MsgBox("الحقل فارغ", vbExclamation + vbMsgBoxRtlReading + vbOKOnly, "رسالة تنبية")
            TextBox6.Focus()
            Exit Sub
        End If

        Try
            MyConnection = New OleDbConnection(CnnData)
            MyConnection.Open()
        Catch er As System.Data.OleDb.OleDbException
            MsgBox("نأسف ... يجب اغلاق البرنامج . تحقق من السيرفر أو الشبكة", MsgBoxStyle.Critical + MsgBoxStyle.MsgBoxRtlReading + MsgBoxStyle.OkOnly, "فشل الدخول")
            End
        End Try
        '''''''''''''''''''''''''
        sql = "Insert into tableTower(towerName,radius,towerCost,towerCoverage,towerCapacity,fileNo) VALUES ('" & TextBox1.Text & "','" & TextBox2.Text & "','" & TextBox3.Text & "','" & TextBox4.Text & "','" & TextBox5.Text & "'," & TextBox6.Text & ")"
        MyCommand = New OleDbCommand(sql, MyConnection)
        MyCommand.ExecuteNonQuery()
        MyConnection.Close()
        Call display()

    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        CnnData = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Application.StartupPath & "\tableTower.mdb" & " ;"
        display()
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        If Label2.Text = "" Then
            MsgBox("يجب عليك اختيار سجل لتعديلة", vbExclamation + vbMsgBoxRtlReading + vbOKOnly, "رسالة تنبية")
            Exit Sub
        End If
        If TextBox1.Text = "" Then
            MsgBox("الحقل فارغ", vbExclamation + vbMsgBoxRtlReading + vbOKOnly, "رسالة تنبية")
            TextBox1.Focus()
            Exit Sub
        End If
        If TextBox2.Text = "" Then
            MsgBox("الحقل فارغ", vbExclamation + vbMsgBoxRtlReading + vbOKOnly, "رسالة تنبية")
            TextBox2.Focus()
            Exit Sub
        End If
        If TextBox3.Text = "" Then
            MsgBox("الحقل فارغ", vbExclamation + vbMsgBoxRtlReading + vbOKOnly, "رسالة تنبية")
            TextBox3.Focus()
            Exit Sub
        End If
        If TextBox4.Text = "" Then
            MsgBox("الحقل فارغ", vbExclamation + vbMsgBoxRtlReading + vbOKOnly, "رسالة تنبية")
            TextBox4.Focus()
            Exit Sub
        End If
        If TextBox5.Text = "" Then
            MsgBox("الحقل فارغ", vbExclamation + vbMsgBoxRtlReading + vbOKOnly, "رسالة تنبية")
            TextBox5.Focus()
            Exit Sub
        End If
        If TextBox6.Text = "" Then
            MsgBox("الحقل فارغ", vbExclamation + vbMsgBoxRtlReading + vbOKOnly, "رسالة تنبية")
            TextBox6.Focus()
            Exit Sub
        End If
        Try
            MyConnection = New OleDbConnection(CnnData)
            MyConnection.Open()
        Catch er As System.Data.OleDb.OleDbException
            MsgBox("نأسف ... يجب اغلاق البرنامج . تحقق من السيرفر أو الشبكة", MsgBoxStyle.Critical + MsgBoxStyle.MsgBoxRtlReading + MsgBoxStyle.OkOnly, "فشل الدخول")
            End
        End Try
        sql = "UPDATE tableTower SET towerName = '" & TextBox1.Text & "',radius='" & TextBox2.Text & "' ,towerCost = " & TextBox3.Text & ",towerCoverage='" & TextBox4.Text & "' ,towerCapacity='" & TextBox5.Text & "',fileNo=" & TextBox6.Text & "  where towerNo=" & Label2.Text & ""
        ''''''''''''''''''''''''
        MyCommand = New OleDbCommand(sql, MyConnection)
        MyCommand.ExecuteNonQuery()
        MyConnection.Close()
        Call display()
    End Sub

    Private Sub DataGrid1_CurrentCellChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGrid1.CurrentCellChanged
        Dim col As Int16 = DataGrid1.CurrentCell.ColumnNumber
        Dim row As Int16 = DataGrid1.CurrentCell.RowNumber
        Label2.Text = DataGrid1.Item(row, 0)
        Label3.Text = DataGrid1.Item(row, 0)
        TextBox1.Text = DataGrid1.Item(row, 1)
        TextBox2.Text = DataGrid1.Item(row, 2)
        TextBox3.Text = DataGrid1.Item(row, 3)
        TextBox4.Text = DataGrid1.Item(row, 4)
        TextBox5.Text = DataGrid1.Item(row, 5)
        TextBox6.Text = DataGrid1.Item(row, 6)
    End Sub

    Private Sub DataGrid1_Navigate(ByVal sender As System.Object, ByVal ne As System.Windows.Forms.NavigateEventArgs) Handles DataGrid1.Navigate

    End Sub

    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        If Label2.Text = "" Then
            MsgBox("يجب عليك اختيار سجل لتعديلة", vbExclamation + vbMsgBoxRtlReading + vbOKOnly, "رسالة تنبية")
            Exit Sub
        End If
        Try
            MyConnection = New OleDbConnection(CnnData)
            MyConnection.Open()
        Catch er As System.Data.OleDb.OleDbException
            MsgBox("نأسف ... يجب اغلاق البرنامج . تحقق من السيرفر أو الشبكة", MsgBoxStyle.Critical + MsgBoxStyle.MsgBoxRtlReading + MsgBoxStyle.OkOnly, "فشل الدخول")
            End
        End Try
        sql = "delete from tableTower where towerNo=" & Label2.Text & ""
        ''''''''''''''''''''''''
        MyCommand = New OleDbCommand(sql, MyConnection)
        MyCommand.ExecuteNonQuery()
        MyConnection.Close()
        Call display()
    End Sub
End Class
