public void ChangeSalesOrderItem(int salesOrderDetailID, short orderQty) { //Change an existing order detail item //Create the TransactionScope to execute the commands, guaranteeing that both commands can commit or roll back as a single unit of work using (TransactionScope scope = new TransactionScope()) { //update the sales order item and update the sales order if (this.mUseTableBased) { new SalesOrderDetailTableGateway().UpdateSalesOrderDetail(salesOrderDetailID, orderQty); Recordset.SalesOrderDetailTableRow salesOrderDetail = new SalesOrderDetailTableGateway().ReadSalesOrderDetail(salesOrderDetailID); int salesOrderID = salesOrderDetail.SalesOrderID; Recordset.SalesOrderTableRow salesOrder = new SalesOrderTableGateway().ReadSalesOrder(salesOrderID); decimal lineTotal = orderQty * salesOrderDetail.UnitPrice * (1 - salesOrderDetail.UnitPriceDiscount); decimal subTotal = salesOrder.SubTotal + lineTotal; decimal taxAmt = salesOrder.TaxAmt + (0.05M * lineTotal); decimal freight = salesOrder.Freight; new SalesOrderTableGateway().UpdateSalesOrder(salesOrderID, subTotal, taxAmt, freight); } else { SalesOrderDetailRowGateway salesOrderDetail = SalesOrderDetailRowGateway.ReadSalesOrderDetail(salesOrderDetailID); salesOrderDetail.OrderQty = orderQty; salesOrderDetail.Update(); SalesOrderRowGateway salesOrder = SalesOrderRowGateway.ReadSalesOrder(salesOrderDetail.SalesOrderID); decimal lineTotal = orderQty * salesOrderDetail.UnitPrice * (1 - salesOrderDetail.UnitPriceDiscount); salesOrder.SubTotal = salesOrder.SubTotal + lineTotal; salesOrder.TaxAmt = salesOrder.TaxAmt + (0.05M * lineTotal); salesOrder.Freight = salesOrder.Freight; salesOrder.Update(); } //Commits the transaction; if an exception is thrown, Complete is not called and the transaction is rolled back scope.Complete(); } }
public void RemoveSalesOrderItem(int salesOrderDetailID) { //Delete an existing order detail item; update the sales order //Create the TransactionScope to execute the commands, guaranteeing that both commands can commit or roll back as a single unit of work using (TransactionScope scope = new TransactionScope()) { //remove the sales order item and update the sales order if (this.mUseTableBased) { //delete the sales order detail and update the sales order new SalesOrderDetailTableGateway().DeleteSalesOrderDetail(salesOrderDetailID); Recordset.SalesOrderDetailTableRow salesOrderDetail = new SalesOrderDetailTableGateway().ReadSalesOrderDetail(salesOrderDetailID); int salesOrderID = salesOrderDetail.SalesOrderID; Recordset.SalesOrderTableRow salesOrder = new SalesOrderTableGateway().ReadSalesOrder(salesOrderID); decimal subTotal = salesOrder.SubTotal - salesOrderDetail.LineTotal; decimal taxAmt = salesOrder.TaxAmt - (0.05M * salesOrderDetail.LineTotal); decimal freight = salesOrder.Freight; new SalesOrderTableGateway().UpdateSalesOrder(salesOrderID, subTotal, taxAmt, freight); } else { SalesOrderDetailRowGateway salesOrderDetail = SalesOrderDetailRowGateway.ReadSalesOrderDetail(salesOrderDetailID); salesOrderDetail.Delete(); int salesOrderID = salesOrderDetail.SalesOrderID; SalesOrderRowGateway salesOrder = SalesOrderRowGateway.ReadSalesOrder(salesOrderID); salesOrder.SubTotal = salesOrder.SubTotal - salesOrderDetail.LineTotal; salesOrder.TaxAmt = salesOrder.TaxAmt - (0.05M * salesOrderDetail.LineTotal); salesOrder.Freight = salesOrder.Freight; salesOrder.Update(); } //Commits the transaction; if an exception is thrown, Complete is not called and the transaction is rolled back scope.Complete(); } }
public void ChangeSalesOrderItem(int salesOrderDetailID,short orderQty) { //Change an existing order detail item //Create the TransactionScope to execute the commands, guaranteeing that both commands can commit or roll back as a single unit of work using(TransactionScope scope = new TransactionScope()) { //update the sales order item and update the sales order if(this.mUseTableBased) { new SalesOrderDetailTableGateway().UpdateSalesOrderDetail(salesOrderDetailID,orderQty); Recordset.SalesOrderDetailTableRow salesOrderDetail = new SalesOrderDetailTableGateway().ReadSalesOrderDetail(salesOrderDetailID); int salesOrderID = salesOrderDetail.SalesOrderID; Recordset.SalesOrderTableRow salesOrder = new SalesOrderTableGateway().ReadSalesOrder(salesOrderID); decimal lineTotal = orderQty * salesOrderDetail.UnitPrice * (1 - salesOrderDetail.UnitPriceDiscount); decimal subTotal = salesOrder.SubTotal + lineTotal; decimal taxAmt = salesOrder.TaxAmt + (0.05M * lineTotal); decimal freight = salesOrder.Freight; new SalesOrderTableGateway().UpdateSalesOrder(salesOrderID,subTotal,taxAmt,freight); } else { SalesOrderDetailRowGateway salesOrderDetail = SalesOrderDetailRowGateway.ReadSalesOrderDetail(salesOrderDetailID); salesOrderDetail.OrderQty = orderQty; salesOrderDetail.Update(); SalesOrderRowGateway salesOrder = SalesOrderRowGateway.ReadSalesOrder(salesOrderDetail.SalesOrderID); decimal lineTotal = orderQty * salesOrderDetail.UnitPrice * (1 - salesOrderDetail.UnitPriceDiscount); salesOrder.SubTotal = salesOrder.SubTotal + lineTotal; salesOrder.TaxAmt = salesOrder.TaxAmt + (0.05M * lineTotal); salesOrder.Freight = salesOrder.Freight; salesOrder.Update(); } //Commits the transaction; if an exception is thrown, Complete is not called and the transaction is rolled back scope.Complete(); } }
private void OnSalesOrderSelected(object sender,EventArgs e) { if(this.grdSalesOrders.SelectedRows.Count > 0) { int id = Convert.ToInt32(this.grdSalesOrders.SelectedRows[0].Cells[0].Value); Recordset rs = new SalesOrderDetailTableGateway().ReadSalesOrderDetails(id); this.mRecordset.SalesOrderDetailTable.Clear(); this.mRecordset.SalesOrderDetailTable.Merge(rs.SalesOrderDetailTable); } }
private void OnSalesOrderSelected(object sender, EventArgs e) { if (this.grdSalesOrders.SelectedRows.Count > 0) { int id = Convert.ToInt32(this.grdSalesOrders.SelectedRows[0].Cells[0].Value); Recordset rs = new SalesOrderDetailTableGateway().ReadSalesOrderDetails(id); this.mRecordset.SalesOrderDetailTable.Clear(); this.mRecordset.SalesOrderDetailTable.Merge(rs.SalesOrderDetailTable); } }
public void RemoveSalesOrderItem(int salesOrderDetailID) { //Delete an existing order detail item; update the sales order //Create the TransactionScope to execute the commands, guaranteeing that both commands can commit or roll back as a single unit of work using(TransactionScope scope = new TransactionScope()) { //remove the sales order item and update the sales order if(this.mUseTableBased) { //delete the sales order detail and update the sales order new SalesOrderDetailTableGateway().DeleteSalesOrderDetail(salesOrderDetailID); Recordset.SalesOrderDetailTableRow salesOrderDetail = new SalesOrderDetailTableGateway().ReadSalesOrderDetail(salesOrderDetailID); int salesOrderID = salesOrderDetail.SalesOrderID; Recordset.SalesOrderTableRow salesOrder = new SalesOrderTableGateway().ReadSalesOrder(salesOrderID); decimal subTotal = salesOrder.SubTotal - salesOrderDetail.LineTotal; decimal taxAmt = salesOrder.TaxAmt - (0.05M * salesOrderDetail.LineTotal); decimal freight = salesOrder.Freight; new SalesOrderTableGateway().UpdateSalesOrder(salesOrderID,subTotal,taxAmt,freight); } else { SalesOrderDetailRowGateway salesOrderDetail = SalesOrderDetailRowGateway.ReadSalesOrderDetail(salesOrderDetailID); salesOrderDetail.Delete(); int salesOrderID = salesOrderDetail.SalesOrderID; SalesOrderRowGateway salesOrder = SalesOrderRowGateway.ReadSalesOrder(salesOrderID); salesOrder.SubTotal = salesOrder.SubTotal - salesOrderDetail.LineTotal; salesOrder.TaxAmt = salesOrder.TaxAmt - (0.05M * salesOrderDetail.LineTotal); salesOrder.Freight = salesOrder.Freight; salesOrder.Update(); } //Commits the transaction; if an exception is thrown, Complete is not called and the transaction is rolled back scope.Complete(); } }