private void btnSearchNumber_Click(object sender, EventArgs e) { try { if (txtNumber.Text != string.Empty && IsNumeric(txtNumber.Text)) { OrderList.Clear(); Order = null; string[] names = Settings.Default.EmployeeName.ToString().Split(' '); string firstName = names[0]; string lastName = names[1]; Employee OrderEmployee = EmployeeFactory.RetrieveByName(firstName, lastName); if (Settings.Default.AccessLevel.Equals("S")) { Order = PurchaseOrderFactory.RetrieveByNumberSupervisor(Convert.ToInt32(txtNumber.Text), OrderEmployee.Id); if (Order == null) { MessageBox.Show("Purchase order cannot be found or Supervisor does not have permission to view order."); txtNumber.Focus(); txtNumber.SelectAll(); return; } } else { Order = PurchaseOrderFactory.RetrieveByNumber(Convert.ToInt32(txtNumber.Text), OrderEmployee.Id); if (Order == null) { MessageBox.Show("Purchase order cannot be found or Employee does not have permission to view order."); txtNumber.Focus(); txtNumber.SelectAll(); return; } } List <PurchaseOrder> singleOrderList = new List <PurchaseOrder> { Order }; dgvOrders.DataSource = singleOrderList; ModifyPODataGrid(); dgvOrders.Visible = true; btnSelect.Visible = true; btnCancelSearch.Visible = true; lblPurchaseOrders.Visible = true; txtNumber.Clear(); txtNumber.Focus(); grpSearchOther.Enabled = false; grpSearchNumber.Enabled = false; for (int i = 0; i < singleOrderList.Count; i++) { PurchaseOrder tmpOrder = singleOrderList[i]; if (!tmpOrder.Status.Equals("Pending")) { dgvOrders.Rows[i].DefaultCellStyle.BackColor = Color.Gray; } } } else { MessageBox.Show("Please enter a valid purchase order number."); txtNumber.Focus(); txtNumber.SelectAll(); } } catch (Exception ex) { MessageBox.Show(ex.Message, "An error has occurred"); txtNumber.Focus(); txtNumber.SelectAll(); } }