15-08-19, 04:31 AM
(آخر تعديل لهذه المشاركة : 15-10-19, 04:47 PM {2} بواسطة asemshahen5.)
بعد ان حلت المشكلة باذن الله نتابع ما بدأناه .
أولا نعرف متغيير من نوع سترغ داخل السيتنغ بـ اسم DatabaseName كالتالي :
ثم نذهب الى الداتا غيرد فيو في نافذة CompanysFrm و نختار الحدث CellDoubleClick و نكتب الكود التالي :
قبل ذالك نقوم بتعريف متغيير في المديول بنفس الاسم ليكون كالتالي :
الكود الخاص بالدتا غريد فيو :
والان كود زر فتح BtnOpenCompany :
الان نذهب الى خصائص البرنامج Application -> Shutdown mode و نختار When last form closes كالتالي :
و الان نبدأ بنافذة NewUserLogin :
لتكون كالشكل التالي :
الان نبدأ بكتابة الكود :
كود زر BtnAdd :
كود زر BtnEdit :
كود زر BtnUpdate :
كود زر BtnCancel :
كود زر BtnDelete :
كود زر BtnSearch :
كود زر BtnClose :
كود اللود فورم :
كود تحميل السجلات :
كود الضغط على الداتا غريد فيو :
نتابع بالحلقة القادمة .
و الان نافذة تسجيل الدخول UserLogin و تكون كالتالي :
قبل اضافة الكود نضيف المتغيرين التالين الى المديول :
و الان نكتب الاكواد التالية :
و اخيرا نافذة MainForm تكون كالتالي :
و نكتب الكود التالي بها :
--------------------------
--------------------------
--------------------------
--------------------------
نضيف هذه الاكواد الى الموديول :
انتهى الموضوع اي سؤال او استفسار ؟
أولا نعرف متغيير من نوع سترغ داخل السيتنغ بـ اسم DatabaseName كالتالي :
ثم نذهب الى الداتا غيرد فيو في نافذة CompanysFrm و نختار الحدث CellDoubleClick و نكتب الكود التالي :
قبل ذالك نقوم بتعريف متغيير في المديول بنفس الاسم ليكون كالتالي :
PHP كود :
Public DatabaseNameXT As String
الكود الخاص بالدتا غريد فيو :
PHP كود :
Private Sub DataGridView1_CellDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView1.CellDoubleClick
My.Settings.DatabaseName = DataGridView1.CurrentRow.Cells("DatabaseName").Value
My.Settings.Save()
DatabaseNameXT = DataGridView1.CurrentRow.Cells("DatabaseName").Value
Dim StrSQL As String = "Select * From UserControl "
If ExeSqlUserDT(StrSQL).Rows.Count > 0 Then
Dim Frm As New UserLogin
Frm.Show()
Close()
Else
Dim Frm As New NewUserLogin
Frm.Show()
Close()
End If
End Sub
والان كود زر فتح BtnOpenCompany :
PHP كود :
Private Sub BtnOpenCompany_Click(sender As Object, e As EventArgs) Handles BtnOpenCompany.Click
My.Settings.DatabaseName = DataGridView1.CurrentRow.Cells("DatabaseName").Value
My.Settings.Save()
DatabaseNameXT = DataGridView1.CurrentRow.Cells("DatabaseName").Value
Dim StrSQL As String = "Select * From UserControl "
If ExeSqlUserDT(StrSQL).Rows.Count > 0 Then
Dim Frm As New UserLogin
Frm.Show()
Close()
Else
Dim Frm As New NewUserLogin
Frm.Show()
Close()
End If
End Sub
الان نذهب الى خصائص البرنامج Application -> Shutdown mode و نختار When last form closes كالتالي :
و الان نبدأ بنافذة NewUserLogin :
لتكون كالشكل التالي :
الان نبدأ بكتابة الكود :
كود زر BtnAdd :
PHP كود :
Private Sub BtnAdd_Click(sender As Object, e As EventArgs) Handles BtnAdd.Click
Dim StrSQL As String = "Select IIF(Max(ID) Is NULL,1,Max(ID)+1) From UserControl"
For Each Cntrl As Control In Me.Controls
If TypeOf Cntrl Is TextBox Then
Cntrl.Text = String.Empty
End If
If TypeOf Cntrl Is CheckBox Then
Dim obg As CheckBox = Cntrl
obg.Checked = False
End If
Next
Txt_ID.Text = ExeSqlUserDT(StrSQL).Rows(0)(0)
BtnAdd.Enabled = False
BtnEdit.Enabled = False
BtnDelete.Enabled = False
BtnUpdate.Enabled = True
BtnCancel.Enabled = True
End Sub
كود زر BtnEdit :
PHP كود :
Private Sub BtnEdit_Click(sender As Object, e As EventArgs) Handles BtnEdit.Click
Dim StrSQL As String = "UPDATE UserControl SET FullName='" & Txt_FullName.Text & "', User_Name='" _
& Txt_User_Name.Text & "', User_Password='" & Txt_User_Password.Text & "', ViewForm='" & Chk_ViewForm.Checked _
& "', AddRecord='" & Chk_AddRecord.Checked & "', EditRecord='" & Chk_EditRecord.Checked & "', DeleteRecod='" _
& Chk_DeleteRecod.Checked & "', PrintRecord='" & Chk_PrintRecord.Checked & "', FindRecord='" & Chk_FindRecord.Checked _
& "', Import='" & Chk_Import.Checked & "', Export='" & Chk_Export.Checked & "' Where ID=" & Txt_ID.Text
ExeSqlUser(StrSQL)
NewUserLogin_Load(Nothing, Nothing)
End Sub
كود زر BtnUpdate :
PHP كود :
Private Sub BtnUpdate_Click(sender As Object, e As EventArgs) Handles BtnUpdate.Click
Dim StrSQL As String = "INSERT INTO UserControl (ID,FullName,User_Name,User_Password,ViewForm,AddRecord,EditRecord,DeleteRecod,PrintRecord,FindRecord,Import,Export ) VALUES ('" _
& Txt_ID.Text & "','" & Txt_FullName.Text & "','" & Txt_User_Name.Text & "','" & Txt_User_Password.Text & "','" _
& Chk_ViewForm.Checked & "','" & Chk_AddRecord.Checked & "','" & Chk_EditRecord.Checked & "','" & Chk_DeleteRecod.Checked _
& "','" & Chk_PrintRecord.Checked & "','" & Chk_FindRecord.Checked & "','" & Chk_Import.Checked & "','" _
& Chk_Export.Checked & "')"
ExeSqlUser(StrSQL)
BtnAdd.Enabled = True
BtnEdit.Enabled = True
BtnDelete.Enabled = True
BtnUpdate.Enabled = False
BtnCancel.Enabled = False
NewUserLogin_Load(Nothing, Nothing)
End Sub
كود زر BtnCancel :
PHP كود :
Private Sub BtnCancel_Click(sender As Object, e As EventArgs) Handles BtnCancel.Click
BtnAdd.Enabled = True
BtnEdit.Enabled = True
BtnDelete.Enabled = True
BtnUpdate.Enabled = False
BtnCancel.Enabled = False
NewUserLogin_Load(sender, e)
End Sub
كود زر BtnDelete :
PHP كود :
Private Sub BtnDelete_Click(sender As Object, e As EventArgs) Handles BtnDelete.Click
Dim StrSQL As String = "Delete From UserControl Where ID = '" & Txt_ID.Text & "'"
Dim TxtID As String = Txt_ID.Text
If MsgBox("هل أنت متأكد من حذف السجل المحدد " & Txt_ID.Text, MsgBoxStyle.YesNo + MsgBoxStyle.Question + MsgBoxStyle.MsgBoxRight + MsgBoxStyle.MsgBoxRtlReading, "حذف سجل") = MsgBoxResult.Yes Then
ExeSqlUser(StrSQL)
MsgBox("تم حذف السجل المحدد " & Txt_ID.Text & " بنجاح ", MsgBoxStyle.Information + MsgBoxStyle.MsgBoxRight + MsgBoxStyle.MsgBoxRtlReading, "حذف سجل")
End If
NewUserLogin_Load(Nothing, Nothing)
End Sub
كود زر BtnSearch :
PHP كود :
Private Sub BtnSearch_Click(sender As Object, e As EventArgs) Handles BtnSearch.Click
Dim StrSQL As String = "Select * From UserControl Where FullName Like '%" & TxtSearch.Text & "%'"
Dgv_Table.Rows.Clear()
For Each row As DataRow In ExeSqlUserDT(StrSQL).Rows
Dgv_Table.Rows.Add(row.ItemArray)
Next
End Sub
كود زر BtnClose :
PHP كود :
Private Sub BtnClose_Click(sender As Object, e As EventArgs) Handles BtnClose.Click
Close()
End Sub
كود اللود فورم :
PHP كود :
Private Sub NewUserLogin_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim StrSQL As String = "Select * From UserControl "
Dim dt As New DataTable
dt.Clear()
dt = ExeSqlUserDT(StrSQL)
LoadRows(dt, 0)
Dgv_Table.Rows.Clear()
For Each row As DataRow In dt.Rows
Dgv_Table.Rows.Add(row.ItemArray)
Next
End Sub
كود تحميل السجلات :
PHP كود :
Sub LoadRows(dt As DataTable, Num As Integer)
If dt.Rows.Count = 0 Then
Exit Sub
End If
Txt_ID.Text = dt(Num)("ID").ToString
Txt_FullName.Text = dt(Num)("FullName").ToString
Txt_User_Name.Text = dt(Num)("User_Name").ToString
Txt_User_Password.Text = dt(Num)("User_Password").ToString
Chk_ViewForm.Checked = dt(Num)("ViewForm").ToString
Chk_AddRecord.Checked = dt(Num)("AddRecord").ToString
Chk_EditRecord.Checked = dt(Num)("EditRecord").ToString
Chk_DeleteRecod.Checked = dt(Num)("DeleteRecod").ToString
Chk_PrintRecord.Checked = dt(Num)("PrintRecord").ToString
Chk_FindRecord.Checked = dt(Num)("FindRecord").ToString
Chk_Import.Checked = dt(Num)("Import").ToString
Chk_Export.Checked = dt(Num)("Export").ToString
End Sub
كود الضغط على الداتا غريد فيو :
PHP كود :
Private Sub Dgv_Table_CellClick(sender As Object, e As DataGridViewCellEventArgs) Handles Dgv_Table.CellClick
Dim StrSQL As String = "Select * From UserControl where ID=" & Dgv_Table.CurrentRow.Cells(0).Value
LoadRows(ExeSqlUserDT(StrSQL), 0)
End Sub
نتابع بالحلقة القادمة .
و الان نافذة تسجيل الدخول UserLogin و تكون كالتالي :
قبل اضافة الكود نضيف المتغيرين التالين الى المديول :
PHP كود :
Public DatabaseNameXT As String
Public UserNameXT As String
و الان نكتب الاكواد التالية :
PHP كود :
Private Sub BtnClose_Click(sender As Object, e As EventArgs) Handles BtnClose.Click
Close()
End Sub
Private Sub BtnLogin_Click(sender As Object, e As EventArgs) Handles BtnLogin.Click
Dim StrSQL As String = "Select * From UserControl Where User_Name = '" & Txt_User_Name.Text & "' And User_Password = '" & Txt_User_Password.Text & "'"
Dim DT As New DataTable
DT.Clear()
DT = ExeSqlUserDT(StrSQL)
If DT.Rows.Count > 0 Then
If DT.Rows(0)("User_Name") = Txt_User_Name.Text And DT.Rows(0)("User_Password") = Txt_User_Password.Text Then
Dim Frm As New MainForm
UserNameXT = Txt_User_Name.Text
Frm.Show()
Close()
Else
MsgBox("خطأ في اسم المستخدم او كلمة المرور")
End If
Else
MsgBox("خطأ في اسم المستخدم او كلمة المرور")
End If
End Sub
و اخيرا نافذة MainForm تكون كالتالي :
و نكتب الكود التالي بها :
PHP كود :
Private Sub MainForm_Load(sender As Object, e As EventArgs) Handles MyBase.Load
TSSLBLDBNAME.Text = DatabaseNameXT
TSSLBLUser.Text = UserNameXT
DataGridView1.DataSource = ExeSqlUserDT("Select * From AccountsTree")
TSSLBLRecordCount.Text = DataGridView1.Rows.Count & " - Record"
DataGridView1.Columns(4).AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
DataGridView1.DefaultCellStyle.BackColor = Color.FromArgb(255, 255, 255)
DataGridView1.AlternatingRowsDefaultCellStyle.BackColor = Color.FromArgb(255, 255, 192)
End Sub
--------------------------
--------------------------
--------------------------
--------------------------
نضيف هذه الاكواد الى الموديول :
PHP كود :
Public Sub ExeSqlUser(StrSQL As String)
' 'Dim conn As New System.Data.SqlClient.SqlConnection("Server =(local);database=" & My.Settings.DatabaseName & ";integrated security=false;User ID=Test;Password=123456789")
Dim da As New System.Data.SqlClient.SqlDataAdapter(StrSQL, OpenCon)
Dim dt As New DataTable
da.Fill(dt)
End Sub
Public Function ExeSqlUserDT(StrSQL As String) As DataTable
Dim da As New System.Data.SqlClient.SqlDataAdapter(StrSQL, OpenCon)
Dim dt As New DataTable
da.Fill(dt)
Return dt
End Function
Function OpenCon() As SqlClient.SqlConnection
Dim conn As New System.Data.SqlClient.SqlConnection("Server =(local);database=" & My.Settings.DatabaseName & ";integrated security=true")
Return conn
End Function
انتهى الموضوع اي سؤال او استفسار ؟
سبحان الله وبحمده سبحان الله العظيم و الحمد لله ولا اله الا الله والله اكبر
