private void btnAceptar_Click(object sender, EventArgs e) { if (!CamposFaltantes) { Interface = new InterfaceUsuario(this); if (Interface.RegistrarMaterial(ObtenerRegistro)) { string Mensaje = ""; if (!ActualizarProMat(out Mensaje)) { MessageBox.Show("Material registrado con éxito", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { Validar.MensajeErrorOK("El material se registró sin embargo hubo un problema al asociar los productos, favor de cambiar los parámetros modificando el material en su opción correspondiente\n\n" + Mensaje); } Close(); } else { RegistroMaterial[] temp = Interface.BuscarUnMaterial(new RegistroMaterial(ObtenerRegistro.Clave, "", -1, -1)); if (temp?[0]?.Clave == ObtenerRegistro.Clave) { Validar.MensajeErrorOK("El número clave ya ha sido usado anteriormente y no puede repetirse"); } else { temp = Interface.BuscarUnMaterial(new RegistroMaterial(-1, tbNombre.Text, -1, -1)); bool Existe = false; for (int i = 0; i < temp?.Length && !Existe; i++) { if (temp?[i]?.Nombre == tbNombre.Text) { Existe = true; } } if (temp?[0]?.Nombre == ObtenerRegistro.Nombre) { Validar.MensajeErrorOK("El nombre ya ha sido usado anteriormente y no puede repetirse"); } else { Validar.MensajeErrorBaseDeDatos(); } } } } }
private void LlenarData(Búsqueda Tipo) { int Col = 0, Ren = 0; if (dgvMateriales.SelectedCells.Count > 0) { DataGridViewCell Cell = dgvMateriales.SelectedCells[0]; Col = Cell.ColumnIndex; Ren = Cell.RowIndex; } dgvMateriales.Rows.Clear(); RegistroMaterial[] temp = null; if (Tipo == Búsqueda.Total) { temp = Interface.ObtenerMateriales(); } else { if (Tipo == Búsqueda.Clave) { temp = Interface.BuscarUnMaterial(new RegistroMaterial(Convert.ToInt32(tbClave.Text), "", -1, -1)); } else if (Tipo == Búsqueda.Personalizada) { temp = Interface.BuscarUnMaterial(new RegistroMaterial(-1, tbNombre.Text, string.IsNullOrWhiteSpace(tbPrecio.Text) ? -1 : Convert.ToInt32(tbPrecio.Text), -1)); } } dgvMateriales.RowCount = temp?.Length ?? 0; if (temp != null) { for (int i = 0; i < temp.Length; i++) { dgvMateriales.Rows[i].DefaultCellStyle.BackColor = temp[i].Activo == 1 ? Color.LightGreen : Color.LightSalmon; dgvMateriales[0, i].Value = temp[i].Clave; dgvMateriales[1, i].Value = temp[i].Nombre; dgvMateriales[2, i].Value = "$" + temp[i].Precio.ToString("N2"); } } if (dgvMateriales.SelectedCells.Count > 0) { dgvMateriales.CurrentCell = dgvMateriales[Col > dgvMateriales.ColumnCount ? 0 : Col, Ren > dgvMateriales.RowCount ? 0 : Ren]; dgvMateriales.Focus(); } }
public RegistroMaterial PedirMaterial(out bool Cancelado) { InterfaceUsuario Interface = new InterfaceUsuario(this); Validacion = new Validar(this); pbIcono.BackgroundImage = Properties.Resources.IconoMaterial; tbNumEmpleado.MaxLength = 8; lblInfo.Text = "Ingrese clave del material a eliminar"; Text = lblPedir.Text = lblTitulo.Text = "#material"; AlinearCentroHorizontal(lblInfo, lblPedir); bool Cerrado = true; tbNumEmpleado.KeyPress += delegate(object sender, KeyPressEventArgs e) { if (e.KeyChar == 13 || e.KeyChar == Convert.ToChar(Keys.Escape)) { if (!Validacion.ValidarTextBox(tbNumEmpleado)) { Close(); Cerrado = false; } if (e.KeyChar == Convert.ToChar(Keys.Escape)) { Close(); Cerrado = true; } } else { if (!char.IsDigit(e.KeyChar) && e.KeyChar != '\b') { e.Handled = true; } } }; ShowDialog(); Cancelado = Cerrado; RegistroMaterial [] temp = null; if (!Cerrado) { temp = Interface.BuscarUnMaterial(new RegistroMaterial(Convert.ToInt32(tbNumEmpleado.Text == "" ? "-2" : tbNumEmpleado.Text), "", -1, -1)); } return(temp?[0] ?? null); }
protected override void InitializeComponent3() { base.InitializeComponent3(); Interface = new InterfaceUsuario(this); RegistroProducto[] Productos = Interface.ObtenerProductos(); tbClave.Enabled = true; tbClave.Text = Productos?.Length > 0 ? (Productos?[Productos.Length - 1]?.Clave + 1)?.ToString() : "0"; RegistroMaterial[] Materiales = Interface.BuscarUnMaterial(new RegistroMaterial(-1, "", -1, -1)); for (int i = 0; i < Materiales?.Length; i++) { if (Materiales[i].Activo == 1) { int j = dgvMateriales.RowCount; dgvMateriales.RowCount += 1; dgvMateriales[0, j].Value = Materiales[i].Clave; dgvMateriales[2, j].Value = Materiales[i].Nombre; dgvMateriales[3, j].Value = Materiales[i].Precio; } } }
private void btnActualizar_Click(object sender, EventArgs e) { if (!CamposFaltantes) { Interface = new InterfaceUsuario(this); RegistroMaterial Modificar = ObtenerRegistro; Modificar.Clave = Convert.ToInt32(tbClave.Text); if (Interface.ActualizarMaterial(Modificar)) { RegistroMaterial[] temp = Interface.BuscarUnMaterial(new RegistroMaterial(-1, tbNombre.Text, -1, -1)); bool Repetido = false; for (int i = 0; i < temp.Length && !Repetido; i++) { if (temp[i].Clave != Modificar.Clave && tbNombre.Text.ToUpper() == temp[i].Nombre.ToUpper()) { Repetido = true; } } if (!Repetido) { string Mensaje = ""; if (!ActualizarProMat(out Mensaje)) { MessageBox.Show("Material actualizado con éxito", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { Validar.MensajeErrorBaseDeDatos(); } LlamarEventoCerrar(); Close(); } else { Validar.MensajeErrorOK("El nombre de " + tbNombre.Text + " ya se encuentra registrado en la base de datos como otro material"); } } } }