Private Sub BT_ADD_P_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BT_ADD_P.Click
'=====DateTime_Start====='
Dim years, days, dates_ST As String
years = Date_Start.Value.ToString("yyyy") - 543 'change format year 2556-543 to 2013
days = Date_Start.Value.ToString("M-dd") 'chang format to Month-day
dates_ST = years + "-" + days
'=====DateTime_Stop====='
Dim year, day, dates_FN As String
year = Date_Stop.Value.ToString("yyyy") - 543 'change format year 2556-543 to 2013
day = Date_Stop.Value.ToString("M-dd") 'chang format to Month-day
dates_FN = year + "-" + day
Dim Test As Integer = 0
Dim Test2 As Integer = 0
Dim G As Integer
Dim I As Integer
'Dim TR As Integer
With DataGrid_H
For G = 0 To .Rows.Count - 1
If ((TXT_ID_Pro.Text = .Rows(G).Cells(0).Value)) Then
Dim M As Integer = CInt(TXT_Old_Price.Text)
Dim J As Integer = CInt(TXT_New_Price.Text)
Dim O As Integer = .Rows(G).Cells(4).Value
Dim F As Integer = CInt(TXT_DOnut_Amount.Text)
Dim P As Integer = CInt(TXT_Pro_Amount.Text)
TXT_Pro_Amount.Text = O + F
.Rows(G).Cells(4).Value = TXT_Pro_Amount.Text
.Rows(G).Cells(5).Value = TXT_New_Price.Text
Test = 1
Exit For
End If
Next
If Test = 0 Then
If (Date_Start.Value.Date() > Date_Stop.Value.Date()) Then
MsgBox("กรุณาระบุวันที่ให้ถูกต้อง")
DataGrid_H.Rows.Add(New String() {TXT_ID_Pro.Text, TXT_Pro_Name.Text, Date_Start.Text, Date_Stop.Text, TXT_Pro_Amount.Text, TXT_New_Price.Text})
End If
End If
End With
'+++++++++++++++++++ DataGrid_D +++++++++++++++++++++'
With DataGrid_D
For I = 0 To .Rows.Count - 1
If ((Did_DN = .Rows(I).Cells(0).Value)) Then
Dim W As Integer = .Rows(I).Cells(2).Value
Dim X As Integer = CInt(TXT_DOnut_Amount.Text)
Dim Q As Integer
Q = W + X
.Rows(I).Cells(2).Value = Q
Test2 = 1
Exit For
End If
Next
If Test2 = 0 Then
DataGrid_D.Rows.Add(New String() {Did_DN, DonutName, TXT_DOnut_Amount.Text, TXT_Old_Price.Text})
End If
End With
If ((TXT_ID_Pro.Text = .Rows(G).Cells(0).Value)) Then
Dim M As Integer = CInt(TXT_Old_Price.Text)
Dim J As Integer = CInt(TXT_New_Price.Text)
Dim O As Integer = .Rows(G).Cells(4).Value
Dim F As Integer = CInt(TXT_DOnut_Amount.Text)
Dim P As Integer = CInt(TXT_Pro_Amount.Text)
TXT_Pro_Amount.Text = O + F
.Rows(G).Cells(4).Value = TXT_Pro_Amount.Text
.Rows(G).Cells(5).Value = TXT_New_Price.Text
Test = 1 ----->>> มีการปรับค่า Test ให้เป็น 1
Exit For
End If
Next
If Test = 0 Then ----->>> ถ้า Test เป็น 0 ให้ตรวจสอบ บรรทัดนี้ กับตัวบน ที่ปรับค่า Test ให้เป็น 1 ขัดแย้งกันไหมครับ
If (Date_Start.Value.Date() > Date_Stop.Value.Date()) Then ----->>> อันนี้ตัองเปลี่ยนเป็น เท่ากับ ไหมครับ หรือว่าเช็คแค่ว่า ถ้าวันที่เริ่ม มากกว่า วันสิ้นสุดก็พอ
MsgBox("กรุณาระบุวันที่ให้ถูกต้อง") ----->>> เข้าใจว่าปัญหาน่าจะอยู่ตรงนี้
----->>> ถ้าคุณทำให้ข้อความนี้โชว์ได้ สิ่งที่ต้องทำต่อไปคือ ทำให้โปรแกรมมันหยุดทำงานครับ
----->>> อาจจะใช้ Exit Sub ไปเลยก็ได้ครับ ง่ายดี ^___^
----->>> อย่างแรกพยายามทำให้ข้อความนี้โชว์ขึ้นมาก่อนครับ เพื่อให้รู้ว่า มันทำงานได้
DataGrid_H.Rows.Add(New String() {TXT_ID_Pro.Text, TXT_Pro_Name.Text, Date_Start.Text, Date_Stop.Text, TXT_Pro_Amount.Text, TXT_New_Price.Text})
End If
End If
End With