09-05-17, 04:59 PM
انا تابعت دورة الاستاذ خالد السعداني في دورة المبيعات
بس هو مكملش ازاي اخصم من المخزن
ممكن يا جماعة تساعدوني
انا اسف
ده كود حفظ الفاتورة
Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
If state = "add" Then
Dim StrInser As String = "Insert Into TBL_ORDERS (order_date, SalesMan, Des, ID_Customer) values(@order_date, @SalesMan , @Des, @ID_Customer)"
cmd = New OleDb.OleDbCommand(StrInser, con)
cmd.Parameters.Add(New OleDb.OleDbParameter("@order_date", OleDb.OleDbType.Date)).Value = DtOrder.Value.Date
cmd.Parameters.Add(New OleDb.OleDbParameter("@SalesMan", OleDb.OleDbType.VarChar)).Value = txtSalesMan.Text
cmd.Parameters.Add(New OleDb.OleDbParameter("@Des", OleDb.OleDbType.VarChar)).Value = txtDes.Text
cmd.Parameters.Add(New OleDb.OleDbParameter("@ID_Customer", OleDb.OleDbType.Integer)).Value = txtCustId.Text
con.Open()
cmd.ExecuteNonQuery()
cmd = New OleDb.OleDbCommand("select max (id) from TBL_ORDERS", con)
Dim dr As OleDb.OleDbDataReader = cmd.ExecuteReader
dr.Read()
Dim Id_Order As Integer = dr(0)
dr.Close()
''''''''
Dim ID_Product, Qty As Integer
Dim Price2, Amount As Double
StrInser = "Insert into TBL_ORDER_DETALIS (ID_Product, id_order, qty, price2, amount) values (@ID_Product, @id_order, @qty, @price2, @amount) "
For i As Integer = 0 To DGVProduct.RowCount - 2
ID_Product = DGVProduct.Rows(i).Cells(0).Value
Qty = DGVProduct.Rows(i).Cells(2).Value
Price2 = DGVProduct.Rows(i).Cells(3).Value
Amount = DGVProduct.Rows(i).Cells(4).Value
cmd = New OleDb.OleDbCommand(StrInser, con)
cmd.Parameters.Add(New OleDb.OleDbParameter("@ID_Product", OleDb.OleDbType.Integer)).Value = ID_Product
cmd.Parameters.Add(New OleDb.OleDbParameter("@id_order", OleDb.OleDbType.Integer)).Value = Id_Order
cmd.Parameters.Add(New OleDb.OleDbParameter("@qty", OleDb.OleDbType.Integer)).Value = Qty
cmd.Parameters.Add(New OleDb.OleDbParameter("@price2", OleDb.OleDbType.Currency)).Value = Price2
cmd.Parameters.Add(New OleDb.OleDbParameter("@amount", OleDb.OleDbType.Currency)).Value = Amount
cmd.ExecuteNonQuery()
Next
con.Close()
MsgBox("تمت الإضافة بنجاح", MsgBoxStyle.Information, "الإضافة")
Else
Dim strUbdate As String = "update tbl_orders set order_date = @order_date, salesman = @salesman, des = @des, id_customer = @id_customer where ID = " & Me.ID_ORDER
cmd = New OleDb.OleDbCommand(strUbdate, con)
cmd.Parameters.Add(New OleDb.OleDbParameter("@order_date", OleDb.OleDbType.Date)).Value = DtOrder.Value.Date
cmd.Parameters.Add(New OleDb.OleDbParameter("@SalesMan", OleDb.OleDbType.VarChar)).Value = txtSalesMan.Text
cmd.Parameters.Add(New OleDb.OleDbParameter("@Des", OleDb.OleDbType.VarChar)).Value = txtDes.Text
cmd.Parameters.Add(New OleDb.OleDbParameter("@ID_Customer", OleDb.OleDbType.Integer)).Value = txtCustId.Text
con.Open()
cmd.ExecuteNonQuery()
cmd = New OleDb.OleDbCommand("select max (id) from TBL_ORDERS", con)
Dim dr As OleDb.OleDbDataReader = cmd.ExecuteReader
dr.Read()
Dim Id_Order As Integer = dr(0)
dr.Close()
cmd = New OleDb.OleDbCommand("Delete from TBL_ORDER_DETALIS where id_order = " & Id_Order, con)
cmd.ExecuteNonQuery()
''''''''
Dim ID_Product, Qty As Integer
Dim Price2, Amount As Double
strUbdate = "Insert into TBL_ORDER_DETALIS (ID_Product, id_order, qty, price2, amount) values (@ID_Product, @id_order, @qty, @price2, @amount) "
For i As Integer = 0 To DGVProduct.RowCount - 2
ID_Product = DGVProduct.Rows(i).Cells(0).Value
Qty = DGVProduct.Rows(i).Cells(2).Value
Price2 = DGVProduct.Rows(i).Cells(3).Value
Amount = DGVProduct.Rows(i).Cells(4).Value
cmd = New OleDb.OleDbCommand(strUbdate, con)
cmd.Parameters.Add(New OleDb.OleDbParameter("@ID_Product", OleDb.OleDbType.Integer)).Value = ID_Product
cmd.Parameters.Add(New OleDb.OleDbParameter("@id_order", OleDb.OleDbType.Integer)).Value = Id_Order
cmd.Parameters.Add(New OleDb.OleDbParameter("@qty", OleDb.OleDbType.Integer)).Value = Qty
cmd.Parameters.Add(New OleDb.OleDbParameter("@price2", OleDb.OleDbType.Currency)).Value = Price2
cmd.Parameters.Add(New OleDb.OleDbParameter("@amount", OleDb.OleDbType.Currency)).Value = Amount
cmd.ExecuteNonQuery()
Next
con.Close()
MsgBox("تمت عملية التعديل بنجاح", MsgBoxStyle.Information, "التعديل")
End If
End Sub
بس هو مكملش ازاي اخصم من المخزن
ممكن يا جماعة تساعدوني
انا اسف
ده كود حفظ الفاتورة
Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
If state = "add" Then
Dim StrInser As String = "Insert Into TBL_ORDERS (order_date, SalesMan, Des, ID_Customer) values(@order_date, @SalesMan , @Des, @ID_Customer)"
cmd = New OleDb.OleDbCommand(StrInser, con)
cmd.Parameters.Add(New OleDb.OleDbParameter("@order_date", OleDb.OleDbType.Date)).Value = DtOrder.Value.Date
cmd.Parameters.Add(New OleDb.OleDbParameter("@SalesMan", OleDb.OleDbType.VarChar)).Value = txtSalesMan.Text
cmd.Parameters.Add(New OleDb.OleDbParameter("@Des", OleDb.OleDbType.VarChar)).Value = txtDes.Text
cmd.Parameters.Add(New OleDb.OleDbParameter("@ID_Customer", OleDb.OleDbType.Integer)).Value = txtCustId.Text
con.Open()
cmd.ExecuteNonQuery()
cmd = New OleDb.OleDbCommand("select max (id) from TBL_ORDERS", con)
Dim dr As OleDb.OleDbDataReader = cmd.ExecuteReader
dr.Read()
Dim Id_Order As Integer = dr(0)
dr.Close()
''''''''
Dim ID_Product, Qty As Integer
Dim Price2, Amount As Double
StrInser = "Insert into TBL_ORDER_DETALIS (ID_Product, id_order, qty, price2, amount) values (@ID_Product, @id_order, @qty, @price2, @amount) "
For i As Integer = 0 To DGVProduct.RowCount - 2
ID_Product = DGVProduct.Rows(i).Cells(0).Value
Qty = DGVProduct.Rows(i).Cells(2).Value
Price2 = DGVProduct.Rows(i).Cells(3).Value
Amount = DGVProduct.Rows(i).Cells(4).Value
cmd = New OleDb.OleDbCommand(StrInser, con)
cmd.Parameters.Add(New OleDb.OleDbParameter("@ID_Product", OleDb.OleDbType.Integer)).Value = ID_Product
cmd.Parameters.Add(New OleDb.OleDbParameter("@id_order", OleDb.OleDbType.Integer)).Value = Id_Order
cmd.Parameters.Add(New OleDb.OleDbParameter("@qty", OleDb.OleDbType.Integer)).Value = Qty
cmd.Parameters.Add(New OleDb.OleDbParameter("@price2", OleDb.OleDbType.Currency)).Value = Price2
cmd.Parameters.Add(New OleDb.OleDbParameter("@amount", OleDb.OleDbType.Currency)).Value = Amount
cmd.ExecuteNonQuery()
Next
con.Close()
MsgBox("تمت الإضافة بنجاح", MsgBoxStyle.Information, "الإضافة")
Else
Dim strUbdate As String = "update tbl_orders set order_date = @order_date, salesman = @salesman, des = @des, id_customer = @id_customer where ID = " & Me.ID_ORDER
cmd = New OleDb.OleDbCommand(strUbdate, con)
cmd.Parameters.Add(New OleDb.OleDbParameter("@order_date", OleDb.OleDbType.Date)).Value = DtOrder.Value.Date
cmd.Parameters.Add(New OleDb.OleDbParameter("@SalesMan", OleDb.OleDbType.VarChar)).Value = txtSalesMan.Text
cmd.Parameters.Add(New OleDb.OleDbParameter("@Des", OleDb.OleDbType.VarChar)).Value = txtDes.Text
cmd.Parameters.Add(New OleDb.OleDbParameter("@ID_Customer", OleDb.OleDbType.Integer)).Value = txtCustId.Text
con.Open()
cmd.ExecuteNonQuery()
cmd = New OleDb.OleDbCommand("select max (id) from TBL_ORDERS", con)
Dim dr As OleDb.OleDbDataReader = cmd.ExecuteReader
dr.Read()
Dim Id_Order As Integer = dr(0)
dr.Close()
cmd = New OleDb.OleDbCommand("Delete from TBL_ORDER_DETALIS where id_order = " & Id_Order, con)
cmd.ExecuteNonQuery()
''''''''
Dim ID_Product, Qty As Integer
Dim Price2, Amount As Double
strUbdate = "Insert into TBL_ORDER_DETALIS (ID_Product, id_order, qty, price2, amount) values (@ID_Product, @id_order, @qty, @price2, @amount) "
For i As Integer = 0 To DGVProduct.RowCount - 2
ID_Product = DGVProduct.Rows(i).Cells(0).Value
Qty = DGVProduct.Rows(i).Cells(2).Value
Price2 = DGVProduct.Rows(i).Cells(3).Value
Amount = DGVProduct.Rows(i).Cells(4).Value
cmd = New OleDb.OleDbCommand(strUbdate, con)
cmd.Parameters.Add(New OleDb.OleDbParameter("@ID_Product", OleDb.OleDbType.Integer)).Value = ID_Product
cmd.Parameters.Add(New OleDb.OleDbParameter("@id_order", OleDb.OleDbType.Integer)).Value = Id_Order
cmd.Parameters.Add(New OleDb.OleDbParameter("@qty", OleDb.OleDbType.Integer)).Value = Qty
cmd.Parameters.Add(New OleDb.OleDbParameter("@price2", OleDb.OleDbType.Currency)).Value = Price2
cmd.Parameters.Add(New OleDb.OleDbParameter("@amount", OleDb.OleDbType.Currency)).Value = Amount
cmd.ExecuteNonQuery()
Next
con.Close()
MsgBox("تمت عملية التعديل بنجاح", MsgBoxStyle.Information, "التعديل")
End If
End Sub