private void btnSubProdOrderReceive_Click(object sender, EventArgs e) { if (InitExcel("SubProdOrderReceive") == false) return; UnitOfWork uow = new UnitOfWork(); int row = 2; uow.BeginTransaction(); while (ExcelHelper.GetCellStringValue(xlSht, row, 1) != "") { SubProdOrder prodOrder = SubProdOrder.Find(uow, ExcelHelper.GetCellStringValue(xlSht, row, 1)); if (prodOrder != null) { SubProdOrderReceive poReceive = new SubProdOrderReceive(uow); poReceive.SubProdOrder = prodOrder; poReceive.Date = ExcelHelper.GetCellDateTimeValue(xlSht, row, 2); poReceive.Qty = ExcelHelper.GetCellFloatValue(xlSht, row, 3); poReceive.DefectQty = ExcelHelper.GetCellFloatValue(xlSht, row, 4); poReceive.OrderStatus = SubProdOrderReceive.ReceiveStatus.Complete; } else { xlSht.Cells[row, 5] = "no ProdOrder"; } row++; } uow.CommitTransaction(); xlWb.Save(); ReleaseExcel(); }
private void btnIssue_Click(object sender, EventArgs e) { float Qty = 0; float DefectQty = 0; float NWDefectQty = 0; float LostQty = 0; try { Qty = float.Parse(txtQty.Text); DefectQty = float.Parse(txtDefectQty.Text); NWDefectQty = float.Parse(txtNWDefectQty.Text); LostQty = float.Parse(txtLostQty.Text); } catch { XtraMessageBox.Show("请输入正确的良品数, 来料不良数 及 本厂不良数"); return; } if (LostQty > 0) { DialogResult result = XtraMessageBox.Show(string.Format("请确定是否有遗失数{0}只.", LostQty ), "注意", MessageBoxButtons.YesNo, MessageBoxIcon.Warning); if (result == DialogResult.No) { txtLostQty.SelectAll(); txtLostQty.Focus(); return; } } if (float.Parse(txtBalQty.Text) < Qty + DefectQty + NWDefectQty + LostQty) { XtraMessageBox.Show("入仓数不能大于余数 !!!"); return; } if (Qty == 0 && DefectQty == 0 && NWDefectQty == 0 && LostQty == 0) { XtraMessageBox.Show("请输入正确的良品数及不良品数"); return; } if (float.Parse(txtBalQty.Text) > Qty + DefectQty + NWDefectQty + LostQty ) { DialogResult result = XtraMessageBox.Show(string.Format("良品数 + 不良品数({0})少于余数({1}), 请确认是否入仓????", Qty + DefectQty + NWDefectQty + LostQty, txtBalQty.Text), "注意", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation); if (result == DialogResult.No) { txtQty.Focus(); return; } } UnitOfWork uow = new UnitOfWork(); uow.BeginTransaction(); SubProdOrder subProdOrder = SubProdOrder.Find(uow, txtProdOrderNo.Text); SubProdOrderReceive receive = new SubProdOrderReceive(uow); receive.SubProdOrder = subProdOrder; receive.Qty = Qty; receive.DefectQty = DefectQty; receive.NWDefectQty = NWDefectQty; receive.LostQty = LostQty; receive.Post(); receive.Save(); subProdOrder.SubItem.UpdateQty(); subProdOrder.SubItem.updateTimeStamp = false; subProdOrder.SubItem.Save(); uow.CommitChanges(); XPCollection<SubProdOrderReceive> subProdOrderReceives = new XPCollection<SubProdOrderReceive>(uow); subProdOrderReceives.Criteria = DevExpress.Data.Filtering.CriteriaOperator.Parse(string.Format("Date = '{0}'", DateTime.Today)); gridProdOrder.DataSource = subProdOrderReceives; clear(); initLUE(); lueProdOrder.Focus(); }
private void btnIssue_Click(object sender, EventArgs e) { float Qty = 0; float DefectQty = 0; try { Qty = float.Parse(txtQty.Text); DefectQty = float.Parse(txtDefectQty.Text); } catch { XtraMessageBox.Show("请输入正确的良品数及不良品数"); return; } if (float.Parse(txtBalQty.Text) < Qty + DefectQty) { XtraMessageBox.Show("入仓数不能大于余数 !!!"); return; } if (Qty == 0 && DefectQty == 0) { XtraMessageBox.Show("请输入正确的良品数及不良品数"); return; } UnitOfWork uow = new UnitOfWork(); uow.BeginTransaction(); SubProdOrder subProdOrder = SubProdOrder.Find(uow, txtProdOrderNo.Text); SubProdOrderReceive receive = new SubProdOrderReceive(uow); receive.SubProdOrder = subProdOrder; receive.Qty = Qty; receive.DefectQty = DefectQty; receive.Post(); receive.Save(); subProdOrder.SubItem.UpdateQty(); subProdOrder.SubItem.updateTimeStamp = false; subProdOrder.SubItem.Save(); uow.CommitChanges(); XPCollection<SubProdOrderReceive> subProdOrderReceives = new XPCollection<SubProdOrderReceive>(uow); subProdOrderReceives.Criteria = DevExpress.Data.Filtering.CriteriaOperator.Parse(string.Format("Date = '{0}'", DateTime.Today)); gridProdOrder.DataSource = subProdOrderReceives; /* gridView2.AddNewRow(); gridView2.SetRowCellValue(0, "Date", receive.Date); gridView2.SetRowCellValue(0, "OrderNo", receive.SubProdOrder.OrderNo); gridView2.SetRowCellValue(0, "Index", receive.Index); gridView2.SetRowCellValue(0, "SubItem.ItemNo", receive.SubProdOrder.SubItem.ItemNo); gridView2.SetRowCellValue(0, "Qty", receive.Qty); gridView2.SetRowCellValue(0, "DefectQty", receive.DefectQty); */ clear(); txtProdOrderNo.SelectAll(); txtProdOrderNo.Focus(); }
private void CreateProdOrderEntry(UnitOfWork uow) { SubProdOrder prodOrder = new SubProdOrder(uow); SubItem subItem = uow.FindObject<SubItem>(new BinaryOperator("Oid", poLine.SubItem.Oid)); prodOrder.ProdOrderType = poLine.PurchOrderLineType; prodOrder.SubItem = subItem; prodOrder.Qty = float.Parse(txtDefectQty.Text); prodOrder.OrderStatus = SubProdOrder.ProdOrderStatus.Active; prodOrder.Save(); SubProdOrderReceive prodOrderReceive = new SubProdOrderReceive(uow); prodOrderReceive.SubProdOrder = prodOrder; prodOrderReceive.DefectQty = prodOrder.Qty; prodOrderReceive.Save(); prodOrderReceive.Post(); }