Private Sub alert()
Dim dt As New DataTable
gSQL = "select *from Products where QTY<=3 "
With cmd
.CommandText = gSQL
.CommandType = CommandType.Text
.Connection = cnn
dr = .ExecuteReader
dr.Read()
If dr.HasRows Then
dt.Load(dr)
MessageBox.Show("สินค้าใกล้หมดแล้ว")
Else
End If
dr.Close()
End With
End Sub
จากนั้นก็มาดูกันครับในช่องจำนวน
ว่ามันมีเท่าไหร่ หาก มีหลาย rows ก็ for ไล่เช็คทีละแถวแบบบ้านๆเช่นกัน
Code (VB.NET)
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
For i As Integer = 0 To 20
DataGridView1.Rows.Add("TOR Detail 1" & i, "TOR Detail 2" & i, New Random().Next(0, 20))
System.Threading.Thread.Sleep(100)
Next
'ด้านบนไม่ต้องไปสนใจมันครับ แค่ Add Rows เฉยๆ
'ข้างล่างนี่น่าสนใจกว่าครับ
For i As Integer = 0 To DataGridView1.RowCount - 1
If Convert.ToInt16(DataGridView1(2, i).Value) < 3 Then
DataGridView1(2, i).Style.BackColor = Color.Red 'ต้องสั่งซื้อโดยด่วน
ElseIf Convert.ToInt16(DataGridView1(2, i).Value) >= 3 And Convert.ToInt16(DataGridView1(2, i).Value) <= 10 Then
DataGridView1(2, i).Style.BackColor = Color.Yellow 'ไม่ต้องรีบซื้อก็ได้ 5555
ElseIf Convert.ToInt16(DataGridView1(2, i).Value) > 10 Then
DataGridView1(2, i).Style.BackColor = Color.Aqua 'ใช้มันเข้าไปเลยยังเหลืออีกเยอะ 555
End If
Next
End Sub
Public Class Form1
Dim list As List(Of String) = New List(Of String) 'เอามาเก็บค่า
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
For i As Integer = 0 To 20
DataGridView1.Rows.Add("TOR Detail 1" & i, "TOR Detail 2" & i, New Random().Next(0, 20))
System.Threading.Thread.Sleep(100)
Next
Alert()
End Sub
Sub Alert()
For i As Integer = 0 To DataGridView1.RowCount - 1
'เช็คดูว่า <=3 และ ต้องไม่มีใน list
If Convert.ToInt16(DataGridView1(2, i).Value) <= 3 And list.Contains(DataGridView1(0, i).Value) = False Then
If MessageBox.Show(DataGridView1(0, i).Value & "count <= 3", "ปิด Error", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.Yes Then
'เมื่อ Dialog Yes ก็จะบันทึกลงใน list ไม่บันทึก No
list.Add(DataGridView1(0, i).Value)
End If
End If
Next
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Alert()
End Sub
End Class