public void clbOrderNumbers_ItemCheck(object sender, ItemCheckEventArgs e) { PurchaseOrdersObj purchaseorder = PurchaseOrders.GetByID((int)clbOrderNumbers.Items[e.Index]); if (e.NewValue == CheckState.Checked) { foreach (PurchaseOrderDetailsObj item in PurchaseOrderDetails.GetByPONumber(purchaseorder.PONumber).FindAll(m => m.QuantityRemaining != 0)) { bs.Add(item); } foreach (POHistoryobj item in POHistory.GetReceivedItems(purchaseorder.PONumber)) { rbs.Add(item); } foreach (POLogObj item in POLog.GetAll(Convert.ToInt32(cbSupplier.SelectedValue),purchaseorder.PONumber).FindAll(m=>m.IsUpdated == false)) { nbs.Add(item); } } else { foreach (PurchaseOrderDetailsObj item in purchaseorderdetailslist.FindAll(m => m.PONumber == purchaseorder.PONumber)) { bs.Remove(item); } foreach (POHistoryobj item in ReceivingList.FindAll(m => m.PONumber == purchaseorder.PONumber)) { rbs.Remove(item); } foreach (POLogObj item in NotReceivingList.FindAll(m => m.PONumber == purchaseorder.PONumber)) { nbs.Remove(item); } } }
private void btnUpdate_Click(object sender, EventArgs e) { int x = 1; int q = 0; frmMain.receivedreport.ReportDataSet.Clear(); for (int i = 0; i < dgvReceiving.Rows.Count; i++) { POHistoryobj poh = new POHistoryobj(); ReceiveObj rcv = ReceivingList[i]; poh.Cost = rcv.Cost; poh.EnteredBy = txtOperationName.Text; poh.ItemNumber = rcv.ItemNumber; poh.LocalSKU = rcv.LocalSKU; poh.PONumber = rcv.PONumber; poh.Quantity = rcv.QtyReceived; poh.SuppliersSKU = rcv.SupplierSKU; POHistory.Insert(poh); Inv.UpdatePrice(rcv.LocalSKU, rcv.Price, rcv.Price2, rcv.Price3, rcv.QtyReceived); string res = ""; InventoryRecord ir = Inv.GetData(rcv.LocalSKU, rcv.LocalSKU, ref res); ReportDataSet.InventoryRow r = frmMain.receivedreport.ReportDataSet.Inventory.NewInventoryRow(); r.Barcode = ir.Barcode; r.BarcodeImage = "file:///" + Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "//SIO//BI//" + ir.Barcode + ".jpg"; r.ID = x; r.ItemName = ir.ProductName; r.Location = ir.Location; r.Price = "$" + Math.Round(ir.Price, 2).ToString(); r.Price3 = "$" + Math.Round(ir.Price3, 2).ToString(); r.Qty = rcv.QtyReceived; q += rcv.QtyReceived; r.SKU = ir.SKU; r.OrderNumber = rcv.OrderNumber.ToString(); frmMain.receivedreport.ReportDataSet.Tables[0].Rows.Add(r); if (checkBox1.Checked) { dgvReceiving_CellContentClick(dgvReceiving, new DataGridViewCellEventArgs(dgvReceiving.Columns["clm2QuickPrint"].Index, i)); } } frmMain.receivedreport.WindowState = FormWindowState.Normal; frmMain.receivedreport.StartPosition = FormStartPosition.CenterScreen; frmMain.receivedreport.reportViewer1.RefreshReport(); foreach (POLogObj item in pologlist) { POLog.Update(item.POLogID); } frmMain.receivedreport.ShowDialog(); ResetAll((Control)cbSupplier); }
public void Receive(string SKU, int Quantity, int PONumber = 0) { PurchaseOrderDetailsObj pod; if (PONumber == 0) { pod = purchaseorderdetailslist.FirstOrDefault(m => m.LocalSKU.ToLower() == SKU.ToLower()); } else { pod = purchaseorderdetailslist.FirstOrDefault(m => m.LocalSKU.ToLower() == SKU.ToLower() && m.PONumber == PONumber); } if (pod != null) { ReceiveObj rcv = ReceivingList.FirstOrDefault(m => m.PONumber == pod.PONumber && m.LocalSKU.ToLower() == pod.LocalSKU.ToLower()); if (rcv == null) { string res = ""; InventoryRecord InvR = Inv.GetData(SKU, SKU, ref res); ReceiveObj Newrcv = new ReceiveObj(); Newrcv.ItemName = pod.ItemName; Newrcv.ItemNumber = pod.ItemNumber; Newrcv.Cost = Math.Round(pod.ExpectedCost, 4); Newrcv.LocalSKU = pod.LocalSKU; Newrcv.Location = InvR.Location; Newrcv.OrderNumber = InvR.OrderNumber; Newrcv.PONumber = pod.PONumber; Newrcv.Price = InvR.Price; Newrcv.Price2 = InvR.Price2; Newrcv.Price3 = InvR.Price3; if (Quantity > pod.QuantityRemaining) { Console.Beep(3800, 500); if (MessageBox.Show("The Selected Quantity is bigger than that expected. Do you want to receive more?", "Scan In&Out", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.No) { return; } Newrcv.QtyReceived = Quantity; } else { Newrcv.QtyReceived = Quantity; } Newrcv.SupplierSKU = pod.SuppliersSKU; rbs.Add(Newrcv); #region LOG POLogObj l = new POLogObj(); l.Cost = Newrcv.Cost; l.IsUpdated = false; l.ItemName = Newrcv.ItemName; l.ItemNumber = Newrcv.ItemNumber; l.Location = Newrcv.Location; l.OrderNumber = Newrcv.OrderNumber; l.PONumber = Newrcv.PONumber; l.Price = Newrcv.Price; l.Price2 = Newrcv.Price2; l.Price3 = Newrcv.Price3; l.QtyOrdered = pod.Ordered; l.QtyReceived = Newrcv.QtyReceived; l.QtyRemaining = pod.QuantityRemaining; l.SKU = Newrcv.LocalSKU; l.SupplierID = Convert.ToInt32(cbSupplier.SelectedValue); l.SupplierName = cbSupplier.Text; l.SupplierSKU = Newrcv.SupplierSKU; if (!RestoreMode) { POLog.Insert(l); } pologlist.Add(l); #endregion dgvReceiving.Refresh(); LastItem = Newrcv.PONumber.ToString() + "," + Newrcv.LocalSKU + "," + Quantity.ToString(); FileInfo fi = new FileInfo(System.Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "//SIO//BI//" + InvR.Barcode + ".jpg"); if (!fi.Exists) { Image i = Code128Rendering.MakeBarcodeImage(InvR.Barcode, 1, true); i.Save(fi.FullName); } } else { rcv.QtyReceived += Quantity; LastItem = rcv.PONumber.ToString() + "," + rcv.LocalSKU + "," + Quantity.ToString(); #region LOG POLogObj l = new POLogObj(); l.Cost = rcv.Cost; l.IsUpdated = false; l.ItemName = rcv.ItemName; l.ItemNumber = rcv.ItemNumber; l.Location = rcv.Location; l.OrderNumber = rcv.OrderNumber; l.PONumber = rcv.PONumber; l.Price = rcv.Price; l.Price2 = rcv.Price2; l.Price3 = rcv.Price3; l.QtyOrdered = pod.Ordered; l.QtyReceived = rcv.QtyReceived; l.QtyRemaining = pod.QuantityRemaining; l.SKU = rcv.LocalSKU; l.SupplierID = Convert.ToInt32(cbSupplier.SelectedValue); l.SupplierName = cbSupplier.Text; l.SupplierSKU = rcv.SupplierSKU; if (!RestoreMode) { POLog.Insert(l); } pologlist.Add(l); #endregion } Console.Beep(); dgvReceiving.Refresh(); if (pod.QuantityRemaining < Quantity) { pod.QuantityRemaining = 0; } else { pod.QuantityRemaining -= Quantity; } } else { Console.Beep(3800, 500); ReceiveObj rcv = ReceivingList.FirstOrDefault(m => m.LocalSKU.ToLower() == SKU.ToLower() && m.PONumber != 0); if (rcv != null) { if (MessageBox.Show(@"You have received the full quantity ordered for this item." + Environment.NewLine + "Do you want to receive more?", "Scan IN&OUT", MessageBoxButtons.YesNo) == DialogResult.Yes) { rcv.QtyReceived += Quantity; LastItem = rcv.PONumber.ToString() + "," + rcv.LocalSKU + "," + Quantity.ToString(); #region LOG POLogObj l = new POLogObj(); l.Cost = rcv.Cost; l.IsUpdated = false; l.ItemName = rcv.ItemName; l.ItemNumber = rcv.ItemNumber; l.Location = rcv.Location; l.OrderNumber = rcv.OrderNumber; l.PONumber = rcv.PONumber; l.Price = rcv.Price; l.Price2 = rcv.Price2; l.Price3 = rcv.Price3; l.QtyOrdered = rcv.QtyReceived; l.QtyReceived = rcv.QtyReceived; l.QtyRemaining = 0; l.SKU = rcv.LocalSKU; l.SupplierID = Convert.ToInt32(cbSupplier.SelectedValue); l.SupplierName = cbSupplier.Text; l.SupplierSKU = rcv.SupplierSKU; if (!RestoreMode) { POLog.Insert(l); } pologlist.Add(l); #endregion } } else { string res = ""; InventoryRecord InvR = Inv.GetData(SKU, SKU, ref res); if (InvR == null || string.IsNullOrWhiteSpace(InvR.SKU)) { MessageBox.Show("Item Not Found!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } rcv = ReceivingList.FirstOrDefault(m => m.LocalSKU.ToLower() == SKU.ToLower() && m.PONumber == 0); if (MessageBox.Show(@"This item is not listed on the selected PO(s)." + Environment.NewLine + "Do you want to receive it?", "Scan IN&OUT", MessageBoxButtons.YesNo) == DialogResult.Yes) { if (rcv == null) { rcv = new ReceiveObj(); rcv.Cost = 0; rcv.ItemName = InvR.ProductName; rcv.ItemNumber = ReceivingList.FindAll(m => m.PONumber == 0).Count + 1; rcv.LocalSKU = InvR.SKU; rcv.Location = InvR.Location; rcv.OrderNumber = 0; rcv.PONumber = 0; rcv.Price = InvR.Price; rcv.Price2 = InvR.Price2; rcv.Price3 = InvR.Price3; rcv.QtyReceived = Quantity; rcv.SupplierSKU = InvR.SupplierSKU; rbs.Add(rcv); LastItem = rcv.PONumber.ToString() + "," + rcv.LocalSKU + "," + Quantity.ToString(); FileInfo fi = new FileInfo(System.Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "//SIO//BI//" + InvR.Barcode + ".jpg"); if (!fi.Exists) { Image i = Code128Rendering.MakeBarcodeImage(InvR.Barcode, 1, true); i.Save(fi.FullName); } } else { rcv.QtyReceived += Quantity; LastItem = rcv.PONumber.ToString() + "," + rcv.LocalSKU + "," + Quantity.ToString(); } #region LOG POLogObj l = new POLogObj(); l.Cost = rcv.Cost; l.IsUpdated = false; l.ItemName = rcv.ItemName; l.ItemNumber = rcv.ItemNumber; l.Location = rcv.Location; l.OrderNumber = rcv.OrderNumber; l.PONumber = rcv.PONumber; l.Price = rcv.Price; l.Price2 = rcv.Price2; l.Price3 = rcv.Price3; l.QtyOrdered = 0; l.QtyReceived = rcv.QtyReceived; l.QtyRemaining = 0; l.SKU = rcv.LocalSKU; l.SupplierID = Convert.ToInt32(cbSupplier.SelectedValue); l.SupplierName = cbSupplier.Text; l.SupplierSKU = rcv.SupplierSKU; if (!RestoreMode) { POLog.Insert(l); } pologlist.Add(l); #endregion } } dgvReceiving.Refresh(); } purchaseorderdetailslist.RemoveAll(m => m.QuantityRemaining == 0); bs.ResetBindings(false); dgvEcpected.Refresh(); }