// Refactorizado para SQLite public ArrayList getProductosInventariados() { string sql = "SELECT co_producto,co_laboratorio,in_prod_fraccionado,nu_anaquel,nu_anaquel_concat,va_fraccion,ca_entero,ca_fraccion FROM ProductoInventario"; SQLiteCommand command = new SQLiteCommand(sql, Connection.getConexion()); SQLiteDataReader reader = command.ExecuteReader(); ArrayList list = new ArrayList(); while (true) { if (!reader.Read()) { reader.Close(); reader = null; command.Dispose(); command = null; return(list); } ProductoLaboratorio laboratorio = new ProductoLaboratorio(); laboratorio.setCoProducto((string)reader["co_producto"]); laboratorio.setCoLaboratorio((string)reader["co_laboratorio"]); laboratorio.setInProdFraccionado((string)reader["in_prod_fraccionado"]); laboratorio.setNuAnaquel((string)reader["nu_anaquel"]); laboratorio.setNuAnaquelConcant((string)reader["nu_anaquel_concat"]); laboratorio.setVaFraccion(int.Parse(reader["va_fraccion"].ToString())); laboratorio.setCaEntero(int.Parse(reader["ca_entero"].ToString())); laboratorio.setCaFraccion(int.Parse(reader["ca_fraccion"].ToString())); list.Add(laboratorio); } }
public string getNuAnaquelConcatInventario(ProductoLaboratorio producto) { string sql = "SELECT nu_anaquel_concat FROM ProductoInventario WHERE co_producto = '" + producto.getCoProducto() + "'"; SQLiteCommand command = new SQLiteCommand(sql, Connection.getConexion()); SQLiteDataReader reader = command.ExecuteReader(); String nuAnaquelConcat = ""; try { while (true) { if (!reader.Read()) { reader.Close(); reader = null; command.Dispose(); command = null; break; } nuAnaquelConcat = reader.GetString(0); } } catch (SQLiteException e) { throw e; } //return nuAnaquelConcat; return(nuAnaquelConcat); }
private void grid_Click(object sender, EventArgs e) { if (!ReferenceEquals(this.listaProductos, null)) { DataGrid grid = (DataGrid)sender; ProductoLaboratorio producto = (ProductoLaboratorio)this.listaProductos[grid.CurrentRowIndex]; this.chequeador.setFrmParent(this); this.chequeador.procesarProducto(producto); } }
public void procesarProducto(ProductoLaboratorio producto) { this.rp.getDatosProductoInventario(producto); FrmCantidad cantidad = new FrmCantidad(); cantidad.setProductoLaboratorio(producto); cantidad.setChequeador(this); cantidad.setFrmParent(this.frmParent); cantidad.ejecutar(); cantidad.Show(); }
// Refactorizado para SQLite public void insertProductoInventario(ProductoLaboratorio producto) { string sql = "INSERT INTO ProductoInventario(CO_PRODUCTO, CO_LABORATORIO, IN_PROD_FRACCIONADO, NU_ANAQUEL, NU_ANAQUEL_CONCAT, VA_FRACCION, CA_ENTERO, CA_FRACCION) " + "VALUES('" + producto.getCoProducto() + "', '" + producto.getCoLaboratorio() + "', '" + producto.getInProdFraccionado() + "', '" + producto.getNuAnaquel() + "', '" + producto.getNuAnaquel() + "', " + producto.getVaFraccion() + ", " + producto.getCaEntero() + ", " + producto.getCaFraccion() + ")"; using (SQLiteTransaction sqlTransaction = Connection.getConexion().BeginTransaction()) { SQLiteCommand command = new SQLiteCommand(sql, Connection.getConexion()); command.ExecuteNonQuery(); sqlTransaction.Commit(); } }
public void updateAnaquelConcat(ProductoLaboratorio producto) { string sql = "UPDATE ProductoInventario SET " + "nu_anaquel_concat= '" + producto.getNuAnaquelConcat() + "' " + " WHERE co_producto='" + producto.getCoProducto() + "' "; using (SQLiteTransaction sqlTransaction = Connection.getConexion().BeginTransaction()) { SQLiteCommand command = new SQLiteCommand(sql, Connection.getConexion()); command.ExecuteNonQuery(); sqlTransaction.Commit(); } }
private void gridProductos_KeyPress(object sender, KeyPressEventArgs e) { if (!ReferenceEquals(this.listaProductos, null)) { DataGrid grid = (DataGrid)sender; this.txtCodigo.Focus(); if (grid.CurrentRowIndex != -1) { ProductoLaboratorio producto = (ProductoLaboratorio)this.listaProductos[grid.CurrentRowIndex]; this.chequeador.setFrmParent(this); this.chequeador.procesarProducto(producto); this.abrirOtraVentana = true; } } }
// Refactorizado para SQLite public ArrayList getProductos(string codigo, int tipo) { string sql; string body = "SELECT p.co_producto,p.de_producto,p.de_unidad,p.de_unidad_fraccion,p.in_prod_fraccionado,p.va_fraccion,p.co_laboratorio,p.de_laboratorio FROM "; string case1 = "Producto p WHERE p.co_producto='" + codigo + "' "; string case2 = "Producto p WHERE p.de_producto like '%" + codigo + "%' "; string case3 = "productoBarra b, producto p where b.co_barra='" + codigo + "' and p.co_producto=b.co_producto"; if (tipo == 1) { sql = body + case1; } else if (tipo != 2) { sql = body + case2; } else { sql = body + case3; } SQLiteCommand command = new SQLiteCommand(sql, Connection.getConexion()); SQLiteDataReader reader = command.ExecuteReader(); ArrayList list = new ArrayList(); while (true) { if (!reader.Read()) { reader.Close(); reader = null; command.Dispose(); command = null; return(list); } ProductoLaboratorio laboratorio = new ProductoLaboratorio(); laboratorio.setCoProducto((string)reader["co_producto"]); laboratorio.setDeProducto((string)reader["de_producto"]); laboratorio.setDeUnidad((string)reader["de_unidad"]); laboratorio.setDeUnidadFraccion((string)reader["de_unidad_fraccion"]); laboratorio.setVaFraccion(int.Parse(reader["va_fraccion"].ToString())); laboratorio.setCoLaboratorio((string)reader["co_laboratorio"]); laboratorio.setDeLaboratorio((string)reader["de_laboratorio"]); laboratorio.setInProdFraccionado((string)reader["in_prod_fraccionado"]); list.Add(laboratorio); } }
public void guardar(ProductoLaboratorio producto) { try { if (producto.isNuevo()) { this.rp.insertProductoInventario(producto); } else { // Validación para concatenar anaqueles sin que se repita un anaquel que ya existe string[] nuAnaquelConcat = this.rp.getNuAnaquelConcatInventario(producto).Split(','); if (nuAnaquelConcat != null) { for (int i = 0; i < nuAnaquelConcat.Length; i++) { if (nuAnaquelConcat.GetValue(i).Equals(producto.getNuAnaquel())) { producto.setNuAnaquelConcant(string.Join(",", nuAnaquelConcat)); break; } else { producto.setNuAnaquelConcant(string.Join(",", nuAnaquelConcat) + "," + producto.getNuAnaquel()); } } } else { producto.setNuAnaquelConcant(producto.getNuAnaquel()); } this.rp.updateProductoInventario(producto); } } catch (Exception e) { MessageBox.Show("Error al actualizar Productos", "Mensaje del sistema", MessageBoxButtons.OK, MessageBoxIcon.Hand, MessageBoxDefaultButton.Button1); Console.WriteLine("Error: " + e); } }
// Refactorizado para SQLite public void getDatosProductoInventario(ProductoLaboratorio productoLaboratorio) { string sql = "SELECT ca_entero, ca_fraccion, nu_anaquel FROM ProductoInventario where co_producto='" + productoLaboratorio.getCoProducto() + "'"; SQLiteCommand command = new SQLiteCommand(sql, Connection.getConexion()); SQLiteDataReader reader = command.ExecuteReader(); while (true) { if (!reader.Read()) { reader.Close(); reader = null; command.Dispose(); command = null; return; } productoLaboratorio.setCaEntero(reader.GetInt32(0)); productoLaboratorio.setCaFraccion(reader.GetInt32(1)); productoLaboratorio.setNuAnaquel((string)reader["nu_anaquel"]); productoLaboratorio.setNuevo(false); } }
public void updateAnaquelConcat(ProductoLaboratorio producto, string oldAnaquel) { try { string[] nuAnaquelConcat = this.rp.getNuAnaquelConcatInventario(producto).Split(','); if (nuAnaquelConcat != null) { for (int i = 0; i < nuAnaquelConcat.Length; i++) { if (nuAnaquelConcat.GetValue(i).Equals(producto.getNuAnaquel())) { string anaquel = string.Join(",", nuAnaquelConcat); anaquel = anaquel.Replace(nuAnaquelConcat.Length == 1 ? oldAnaquel : oldAnaquel + ",", ""); producto.setNuAnaquelConcant(anaquel); break; } else { string anaquel = string.Join(",", nuAnaquelConcat); anaquel = anaquel.Replace(oldAnaquel, producto.getNuAnaquel()); producto.setNuAnaquelConcant(anaquel); } } } else { producto.setNuAnaquelConcant(producto.getNuAnaquel()); } this.rp.updateProductoInventario(producto); } catch (Exception e) { MessageBox.Show("Error al actualizar el anaquel", "Mensaje del sistema", MessageBoxButtons.OK, MessageBoxIcon.Hand, MessageBoxDefaultButton.Button1); Console.WriteLine("Error: " + e); } }
public bool procesarProducto(string codigo) { ArrayList list = this.rp.getProductos(codigo, this.orden); if (list.Count <= 0) { return(false); } else { IEnumerator enumerator = list.GetEnumerator(); try { if (enumerator.MoveNext()) { ProductoLaboratorio current = (ProductoLaboratorio)enumerator.Current; this.rp.getDatosProductoInventario(current); FrmCantidad cantidad = new FrmCantidad(); cantidad.setProductoLaboratorio(current); cantidad.setChequeador(this); cantidad.setFrmParent(this.frmParent); cantidad.ejecutar(); cantidad.Show(); } } finally { IDisposable objA = enumerator as IDisposable; if (!ReferenceEquals(objA, null)) { objA.Dispose(); } } } return(true); }
public void setProductoLaboratorio(ProductoLaboratorio producto) { this.producto = producto; }
private DataTable buscarProductos(string codigo) { DataTable table = new DataTable("Productos"); DataColumn column = new DataColumn { DataType = System.Type.GetType("System.String"), ColumnName = "Producto", AutoIncrement = false, Caption = "Producto", ReadOnly = true, Unique = false }; table.Columns.Add(column); column = new DataColumn { DataType = System.Type.GetType("System.String"), ColumnName = "Unidad", AutoIncrement = false, Caption = "Unidad", ReadOnly = false, Unique = false }; table.Columns.Add(column); column = new DataColumn { DataType = System.Type.GetType("System.String"), ColumnName = "Laboratorio", AutoIncrement = false, Caption = "Laboratorio", ReadOnly = false, Unique = false }; table.Columns.Add(column); if (codigo.Length > 2) { this.chequeador.setOrden(3); this.listaProductos = this.chequeador.obtenerLista(codigo); bool flag = this.listaProductos.Count <= 0; if (flag) { MessageBox.Show("Producto no encontrado"); } else { IEnumerator enumerator = this.listaProductos.GetEnumerator(); try { while (true) { flag = enumerator.MoveNext(); if (!flag) { break; } ProductoLaboratorio current = (ProductoLaboratorio)enumerator.Current; DataRow row = table.NewRow(); row["Producto"] = current.getDeProducto(); row["Unidad"] = current.getDeUnidad(); row["Laboratorio"] = current.getDeLaboratorio(); table.Rows.Add(row); } } finally { IDisposable objA = enumerator as IDisposable; if (!ReferenceEquals(objA, null)) { objA.Dispose(); } } } } else { MessageBox.Show("ingrese 3 caracteres"); return(table); } return(table); }