برنامج إدارة المبيعات: الدرس السابع: صفحة البيع النقدي - الجزء 4:برمجة رقم الوصل - تأريخ الوصل - البحث عن مادة
في الدرس السابع من برنامج ادارة المبيعات سنقوم ببرمجة كل من مربع نص رقم الوصل - tblBillNo و الادوات الخاصة بالتأريخ:
cbDay - cbMonth - cbYear وبرمجة مربع النص الخاص بالfحث عن اسم مادة معينة داخل الداتاكردفيو - dgvBill. كما موضح بهذه الصورة
- مربع نص رقم الوصل tbBillID
- كومبوبوكس اليوم cbDay
- كومبوبوكس الشهر cbMonth
- كومبوبوكس السنة cbYear
- مربع نص البحث عن مادة tbFindItemName
أولا: مربع نص رقم الوصل - tbBillID
خاصية التفعيل لمربع نص رقم الوصل تكون معطلة لذلك لا نستطيع كتابة رقم الوصل يدويا. لذلك سنقوم بانشاء جدول داخل قاعدة البيانات باسم- tblBillID وننشا داخله عمود نخزن فيه اخر رقم وصل 0 . بعدها نقوم بالاتصال بهذا الجدول عن طريق الفيجوال بييسك واخذ رقم الوصل المخزن سابقا في قاعدة البيانات واضافه له رقم 1 ليكون رقم وصل جديد لعملية بيع جديدة.
ويتم ذلك عن طريق كتابة الكود التالي داخل حدث تحميل النموذج frmCashSale_Load بالشكل التالي:-
Dim daID As New OleDbDataAdapter
Dim dtID As New DataTable
daID = New OleDbDataAdapter("SELECT * FROM
tblBillID where ID = 1", con)
daID.Fill(dtID)
Dim LastID As Integer = dtID.Rows(0).Item("LastID")
Dim MaxID As Integer = LastID + 1
tbBillNo.Text = CStr(MaxID)
Dim daID As New OleDbDataAdapter
Dim dtID As New DataTable
daID = New OleDbDataAdapter("SELECT * FROM
tblBillID where ID = 1", con)
daID.Fill(dtID)
Dim LastID As Integer = dtID.Rows(0).Item("LastID")
Dim MaxID As Integer = LastID + 1
tbBillNo.Text = CStr(MaxID)
ثانياً: كومبوبوكس اليوم cbDay
يم عرض تاريخ اليوم الحالي كنص داخل هذه الاداة وعند النقر على هذه الاداة تظهر مجموعة ارقام من 1 - 31 وهي عدد ايام الشهر ليتم تحديد اليوم المراد طباعة او حفظ الوصل فيه.
ويتم ذلك عن طريق كتابة الكود التالي داخل حدث تحميل النموذج frmCashSale_Load بالشكل التالي:-
For d = 1 To 31
cbDay.Items.Add(d)
Next
cbDay.Text = Today.Day
For d = 1 To 31
cbDay.Items.Add(d)
Next
cbDay.Text = Today.Day
ثالثاً: كومبوبوكس الشهر cbMonth
يم عرض تاريخ الشهر الحالي كنص داخل هذه الاداة وعند النقر على هذه الاداة تظهر مجموعة ارقام من 1 - 12 وهي عدد الاشهر خلال السنة ليتم تحديد الشهر المراد طباعة او حفظ الوصل فيه.
ويتم ذلك عن طريق كتابة الكود التالي داخل حدث تحميل النموذج frmCashSale_Load بالشكل التالي:-
For m = 1 To 12
cbMonth.Items.Add(m)
Next
cbMonth.Text = Today.Month
For m = 1 To 12
cbMonth.Items.Add(m)
Next
cbMonth.Text = Today.Month
رابعاً: كومبوبوكس السنة cbYear
يم عرض تاريخ السنة الحالية كنص داخل هذه الاداة وعند النقر على هذه الاداة تظهر مجموعة ارقام مثلا من 2020 - 2050 وهي عدد السنوات التي يحددها المستخدم ليتم تحديد السنة المراد طباعة او حفظ الوصل فيها.
ويتم ذلك عن طريق كتابة الكود التالي داخل حدث تحميل النموذج frmCashSale_Load بالشكل التالي:-
For y = 2020 To 2050
cbYear.Items.Add(y)
Next
cbYear.Text
= Today.Year
For y = 2020 To 2050
cbYear.Items.Add(y)
Next
cbYear.Text
= Today.Year
خامساً: مربع نص البحث عن مادة tbFindItem
عن طريق هذا المربع نص نستطيع البحث عن اي اسم مادة مخزنة داخل قاعدة البيانات وبطريقة مباشرة. اي ان البحث يكون اثناء الكتابة، حيث يتم وضع الكود داخل حدث TextChanged لمربع النص الخاص بالبحث وكما موضح بالكود التالي:
ويتم ذلك عن طريق كتابة الكود التالي داخل حدث TextChanged لمربع النص الخاص بالبحث بالشكل التالي:-
Private Sub
tbFindItem_TextChanged(sender As Object, e As EventArgs) Handles tbFindItem.TextChanged
Try
Dim da As New OleDbDataAdapter("Select ItemName, SellingPrice From
QueryItemsProfit where
ItemName like '%" & tbFindItem.Text & "%' ", con)
Dim dt As New DataTable
dt.Clear()
da.Fill(dt)
dgvItems.DataSource = dt
Catch ex As Exception
End Try
End Sub
Private Sub
tbFindItem_TextChanged(sender As Object, e As EventArgs) Handles tbFindItem.TextChanged
Try
Dim da As New OleDbDataAdapter("Select ItemName, SellingPrice From
QueryItemsProfit where
ItemName like '%" & tbFindItem.Text & "%' ", con)
Dim dt As New DataTable
dt.Clear()
da.Fill(dt)
dgvItems.DataSource = dt
Catch ex As Exception
End Try
End Sub
Private Sub frmCashSale_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim da As New OleDbDataAdapter("Select ItemName, SellingPrice From
QueryItemsProfit order
by ID", con)
Dim dt As New DataTable
dt.Clear()
da.Fill(dt)
dgvItems.DataSource = dt
With dgvItems
.Columns("ItemName").HeaderText = "اسم المادة"
.Columns("ItemName").Width = 300
.Columns("ItemName").HeaderCell.Style.Alignment
= DataGridViewContentAlignment.MiddleCenter
.Columns("SellingPrice").HeaderText = "سعر البيع "
.Columns("SellingPrice").Width = 100
.Columns("SellingPrice").DefaultCellStyle.Alignment
= DataGridViewContentAlignment.MiddleCenter
.Columns("SellingPrice").HeaderCell.Style.Alignment
= DataGridViewContentAlignment.MiddleCenter
End With
Dim daID As New OleDbDataAdapter
Dim dtID As New DataTable
daID = New OleDbDataAdapter("SELECT * FROM
tblBillID where ID = 1", con)
daID.Fill(dtID)
Dim LastID As Integer = dtID.Rows(0).Item("LastID")
Dim MaxID As Integer = LastID + 1
tbBillNo.Text = CStr(MaxID)
For d = 1 To 31
cbDay.Items.Add(d)
Next
cbDay.Text = Today.Day
For m = 1 To 12
cbMonth.Items.Add(m)
Next
cbMonth.Text = Today.Month
For y = 2020 To 2050
cbYear.Items.Add(y)
Next
cbYear.Text = Today.Year
End Sub
Private Sub frmCashSale_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim da As New OleDbDataAdapter("Select ItemName, SellingPrice From
QueryItemsProfit order
by ID", con)
Dim dt As New DataTable
dt.Clear()
da.Fill(dt)
dgvItems.DataSource = dt
With dgvItems
.Columns("ItemName").HeaderText = "اسم المادة"
.Columns("ItemName").Width = 300
.Columns("ItemName").HeaderCell.Style.Alignment
= DataGridViewContentAlignment.MiddleCenter
.Columns("SellingPrice").HeaderText = "سعر البيع "
.Columns("SellingPrice").Width = 100
.Columns("SellingPrice").DefaultCellStyle.Alignment
= DataGridViewContentAlignment.MiddleCenter
.Columns("SellingPrice").HeaderCell.Style.Alignment
= DataGridViewContentAlignment.MiddleCenter
End With
Dim daID As New OleDbDataAdapter
Dim dtID As New DataTable
daID = New OleDbDataAdapter("SELECT * FROM
tblBillID where ID = 1", con)
daID.Fill(dtID)
Dim LastID As Integer = dtID.Rows(0).Item("LastID")
Dim MaxID As Integer = LastID + 1
tbBillNo.Text = CStr(MaxID)
For d = 1 To 31
cbDay.Items.Add(d)
Next
cbDay.Text = Today.Day
For m = 1 To 12
cbMonth.Items.Add(m)
Next
cbMonth.Text = Today.Month
For y = 2020 To 2050
cbYear.Items.Add(y)
Next
cbYear.Text = Today.Year
End Sub
يمكنكم متابعة الدرس عن طريق اليوتيوب
بارك الله فيك استاذ
ردحذف