// EVENTO BOTONES MODIFICAR public void eventoBotonesModificar(object sender, EventArgs e) { Button btnSeleccionado = (Button)sender; if (btnSeleccionado.Name.Equals("btnBorrar")) { if (lvLineas.SelectedItems.Count > 0) { ListViewItem listItem = lvLineas.SelectedItems[0]; lvLineas.Items.Remove(listItem); Linea lnBorrada = new Linea(); foreach (Linea ln in lineasArray) { if (ln.getProducto().ToString().Equals(listItem.SubItems[2].Text)) { lnBorrada = ln; } } totalImporte -= Convert.ToDouble(lnBorrada.getCantidad()) * Convert.ToDouble(lnBorrada.getPrecio_Unitario()); this.txtImporte.Text = ""; this.txtImporte.Text = totalImporte.ToString() + " €"; //calcularImporteAlbaran(); // BORRO DEL ARRAYLIST DE LINEAS lineasArray.Remove(lnBorrada); // BORRO DE LA BBDD // DELETE FROM Lineas WHERE descripcion_producto = 'MANZANAS' AND idAlbaran = 12; conexion.borrarLinea(listItem.SubItems[2].Text, alModificar.getIdAlbaran().ToString()); limpiarTextbox(); MessageBox.Show("Linea " + listItem.SubItems[2].Text + " Borrado/a Correctamente en el Albaran " + alModificar.getIdAlbaran().ToString(), "Informacion", MessageBoxButtons.OK, MessageBoxIcon.Information); // PROBLEMA PREGUNTAR SI QUIERES MODIFICAR EL IMPORTE UNA VEZ BORRADA LA LINEA } else { MessageBox.Show("Selecciona una Linea/Producto en el Listado", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else if (btnSeleccionado.Name.Equals("btnModificarLinea")) { if (lvLineas.SelectedItems.Count > 0) { ListViewItem listItem = lvLineas.SelectedItems[0]; // CODIGO PARA MODIFICAR LINEA // COMPRUEBO QUE EL PRODUCTO NO SEA REPETIDO try { foreach (Linea ln in lineasArray) { if (ln.getProducto().Equals(listItem.SubItems[2].Text)) { ln.setCantidad(Convert.ToDouble(this.txtCantidad.Text.Replace('.', ','))); ln.setUnidad(this.txtUnidad.Text); ln.setProducto(this.txtProducto.Text.ToUpper()); ln.setPrecio_Unitario(Convert.ToDouble(this.txtPrecio.Text.Replace('.', ','))); ln.setImporte(Convert.ToDouble(this.txtCantidad.Text.Replace('.', ',')) * Convert.ToDouble(this.txtPrecio.Text.Replace('.', ','))); //UPDATE Lineas SET cantidad = 2.3, unidad = 'GR', descripcion_producto = 'MANZANAS', precio_unitario = 0.50, importe = 23 WHERE descripcion_producto = 'ÑOKIS' AND idAlbaran = 12; conexion.modificarLinea(this.txtCantidad.Text.Replace(',', '.'), this.txtUnidad.Text.ToUpper(), this.txtProducto.Text.ToUpper(), this.txtPrecio.Text.Replace(',', '.'), Convert.ToString(Convert.ToDouble(this.txtCantidad.Text.Replace('.', ',')) * Convert.ToDouble(this.txtPrecio.Text.Replace('.', ','))).Replace(',', '.'), listItem.SubItems[2].Text, alModificar.getIdAlbaran().ToString()); calcularImporteAlbaran(); cargarLineasLV(); } } } catch (FormatException) { MessageBox.Show("Valores Introducidos No Validos", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("Selecciona una Linea/Producto en el Listado", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else if (btnSeleccionado.Name.Equals("btnModificarLineasAlbaran")) { String salidaLinea = ""; foreach (Linea ln in lineasNuevasArray) { salidaLinea += "CANTIDAD: " + ln.getCantidad().ToString() + " UNIDAD: " + ln.getUnidad() + " PRODUCTO: " + ln.getProducto() + " PRECIO_UNITARIO: " + ln.getPrecio_Unitario().ToString() + " IMPORTE: " + ln.getImporte().ToString() + "€\n"; } DialogResult resultLineas = MessageBox.Show(salidaLinea, "DATOS LINEAS ALBARAN " + alModificar.getIdAlbaran().ToString(), MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation); if (resultLineas == DialogResult.OK) { foreach (Linea ln in lineasNuevasArray) { conexion.insertarLinea(ln.getCantidad().ToString().Replace(',', '.'), ln.getUnidad().ToString(), ln.getProducto().ToString(), ln.getPrecio_Unitario().ToString().Replace(',', '.'), ln.getImporte().ToString().Replace(',', '.'), alModificar.getIdAlbaran()); } // MENSAJE INSERTO CORRECTAMENTE MessageBox.Show("Albaran: " + alModificar.getIdAlbaran().ToString() + " y " + lineasNuevasArray.Count.ToString() + " Lineas Insertado/as Correctamente", "Informacion", MessageBoxButtons.OK, MessageBoxIcon.Information); } } }
// BOTON BORRAR LINEA private void btnBorrarLinea_Click(object sender, EventArgs e) { //RECOGO EL ITEM PULSADO if (lvLineas.SelectedItems.Count > 0) { ListViewItem listItem = lvLineas.SelectedItems[0]; lvLineas.Items.Remove(listItem); Linea lnBorrada = new Linea(); foreach (Linea ln in lineasArray) { if (ln.getProducto().ToString().Equals(listItem.SubItems[2].Text)) { lnBorrada = ln; } } totalImporte -= Convert.ToDouble(lnBorrada.getCantidad()) * Convert.ToDouble(lnBorrada.getPrecio_Unitario()); this.txtImporte.Text = ""; this.txtImporte.Text = totalImporte.ToString() + " €"; // BORRO DEL ARRAYLIST DE LINEAS lineasArray.Remove(lnBorrada); // OCULTO EL BOTON BORRAR this.btnBorrarLinea.Visible = false; } else { MessageBox.Show("Selecciona una Linea/Producto en el Listado", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }