 |
|
สอบถามเรื่อง อยากให้ msgbox โชว์ เมื่อสินค้าในสต็อก db หมดครับ เกี่ยวเนื่อง 2 tb |
|
 |
|
|
 |
 |
|


นี้ เป็น โค๊ดบางส่วน ตอน บันทึก ครับ มันบันทึกได้ แต่ ค่า ในตาราง product มันติดลบครับ เลย อยาก เขียน ดัก ตอน กด ปุ่ม เพิ่ม ถ้าไม่สินค้าให้ msbox โชว์ ครับ
Code (VB.NET)
For i = 0 To dgvCal.RowCount - 1
strSql = "Insert into [Orders Details] Values(@OrderID, @ProductID, @OdUnitPrice, @Quantity, @Discount)"
Cmm.Parameters.Clear()
Cmm.Connection = conn
Cmm.CommandText = strSql 'Cmm.CommandText = strSql'เคลียค่า ในloop
Cmm.Parameters.AddWithValue("@OrderID", lblOrdersID.Text)
Cmm.Parameters.AddWithValue("@ProductID", dgvCal.Item(0, i).Value)
Cmm.Parameters.AddWithValue("@OdUnitPrice", dgvCal.Item(2, i).Value) 'คลอลัม 0 แถวที่ i
Cmm.Parameters.AddWithValue("@Quantity", dgvCal.Item(3, i).Value)
Cmm.Parameters.AddWithValue("@Discount", dgvCal.Item(4, i).Value)
r = Cmm.ExecuteNonQuery
strSql = "update Products,[Orders Details] set Products.UnitsInStock = Products.UnitsInStock - @Quantity " & _
" Where ProductID = @ProductID and Products.UnitsInStock > [Orders Details].Quantity " 'ตัดสต็อก
Cmm.CommandText = strSql
r = Cmm.ExecuteNonQuery
Tag : .NET, Ms SQL Server 2005, VS 2008 (.NET 3.x)
|
|
 |
 |
 |
 |
Date :
2012-02-09 20:20:28 |
By :
kanokpong |
View :
1620 |
Reply :
4 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
บันทึกได้แต่ค่าติดลบ ครับ เลยอยากแก้ ตรงปุ่ม add ของ รูป ที่ 1 ข้างบน

|
 |
 |
 |
 |
Date :
2012-02-09 20:30:16 |
By :
kanokpong |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
วิธีการคือ ใน method ที่ตอนกดเพิ่ม
ให้ทำการตรวจสอบ จำนวนที่กรอกกับใน stock ถ้าไม่พอ ให้แสดง massage box แล้วไม่ต้องเพิ่มในรายการคับ
|
 |
 |
 |
 |
Date :
2012-02-09 20:43:45 |
By :
pjgunner.com |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอบคุณครับ แต่ พอมี sample ให้ดูไหมครับ > < ไม่ค่อยเข้าใจเกี่ยวกับ เอา syntax ไปเปรียบเทียบกับ sql
|
 |
 |
 |
 |
Date :
2012-02-09 21:48:15 |
By :
kanokpong |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ได้แล้วครับ กว่าจะได คิดไปซะไกล ขอบคุณครับ > <
Code (VB.NET)
Dim Uis As Integer
Try
strSql = "Select UnitsInStock from Products Where ProductID = @ID" 'เลือก UnitsInStock จากProducts
Cmm = New SqlCommand(strSql, conn)
Cmm.Parameters.AddWithValue("@ID", txtProductID.Text)
Dr = Cmm.ExecuteReader
Dr.Read()
Uis = Dr("UnitsInStock")
If Uis < Val(txtQuantity.Text) Then
MessageBox.Show("จำนวนสินค้าไม่พอที่จะขาย ", "Error...", MessageBoxButtons.OK, MessageBoxIcon.Error)
Dr.Close()
Exit Sub
End If
Catch
MessageBox.Show("มีข้อผิดพลาดกรุณาเลือก ค้นหาสินค้าใหม่ หรือ จำนวนสินค้าไม่พอที่จะขาย", "Error...", MessageBoxButtons.OK, MessageBoxIcon.Warning)
End Try
Dr.Close()
|
 |
 |
 |
 |
Date :
2012-02-10 00:09:24 |
By :
kanokpong |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|