private void frmMasterListManage_Load(object sender, EventArgs e) { if (SaleID > 0) { //do some logic var sales = Database.Sales.Where(x => x.ID == SaleID); foreach (var s in sales) { txtSINO.Text = s.SIOR; txtPaymentType.Text = s.PaymentType; txtCustomer.Text = s.CustomerName; txtRemarks.Text = s.Remarks; dtDate.Value = s.CreatedDate.Value; } var details = Database.SaleDetails.Where(x => x.SaleID == SaleID); foreach (var d in details) { var pro = Database.Products.SingleOrDefault(x => x.ID == d.ProductID); var net = (d.Qty.Value * d.Price.Value); var gross = net - (d.Qty.Value * pro.Cost.Value); grv.Rows.Add(d.ID, pro.Code, d.Qty.Value.ToString("N"), d.Price.Value.ToString("N"), pro.Cost.Value.ToString("N"), net.ToString("N"), gross.ToString("N")); TotalGross += gross; TotalNet += net; } txtTotalNet.Text = TotalNet.ToString("N"); txtTotalGross.Text = TotalGross.ToString("N"); } }
private void btnVoid_Click(object sender, EventArgs e) { if (grv.SelectedRows.Count != 0) { frmVoidQty manage = new frmVoidQty(decimal.Parse(grv.CurrentRow.Cells[2].Value.ToString())); manage.StartPosition = FormStartPosition.CenterParent; manage.ShowDialog(); if (manage.Confirm) { Database = new DatabaseDataContext(); long detail_id = long.Parse(grv.CurrentRow.Cells[0].Value.ToString()); var pro = Database.Products.SingleOrDefault(x => x.Code == grv.CurrentRow.Cells[1].Value.ToString()); decimal return_void_qty = decimal.Parse(manage.txtQty.Text); decimal current_qty = decimal.Parse(grv.CurrentRow.Cells[2].Value.ToString()); //ibabalik sa stock yung qty and product ID Database.ProductStockInVOID(pro.ID, return_void_qty, Helper.FULLNAME, txtCustomer.Text); if (return_void_qty == current_qty)//delete { Database.SaleDetails.DeleteOnSubmit(Database.SaleDetails.SingleOrDefault(x => x.ID == detail_id)); Database.SubmitChanges(); } else//update { var detail_update = Database.SaleDetails.SingleOrDefault(x => x.ID == detail_id); detail_update.Qty = detail_update.Qty - return_void_qty; Database.SubmitChanges(); } //remove or update on the sale detail foreach (DataGridViewRow item in this.grv.SelectedRows) { DataGridViewRow row = this.grv.SelectedRows[0]; TotalNet -= decimal.Parse(row.Cells[5].Value.ToString()); txtTotalNet.Text = TotalNet.ToString("N"); TotalGross -= decimal.Parse(row.Cells[6].Value.ToString()); txtTotalGross.Text = TotalGross.ToString("N"); // grv.Rows.RemoveAt(item.Index); } //-----update grid Database = new DatabaseDataContext(); var grid_update = Database.SaleDetails.SingleOrDefault(x => x.ID == detail_id); var net = (grid_update.Qty.Value * grid_update.Price.Value); var gross = net - (grid_update.Qty.Value * pro.Cost.Value); grv.Rows.Add(detail_id, pro.Code, (grid_update.Qty.Value).ToString("N"), grid_update.Price.Value.ToString("N"), pro.Cost.Value.ToString("N"), net.ToString("N"), gross.ToString("N")); } } }