private void InitializeGrid() { System.Collections.ArrayList list = new System.Collections.ArrayList(); CommonUtils.ConexionBD.AbrirConexion(); string sql = "SELECT Insumo.InsumoId, Insumo.Cantidad, Insumo.CostoUnidad, Insumo.Nombre, Insumo.Presentacion, Insumo.Marca, Insumo.Unidad,Receta_Insumo.Cantidad AS Expr1, Receta.RecetaId, Receta.Nombre AS Expr2, Receta.CostoReceta FROM Receta_Insumo INNER JOIN Insumo ON Insumo.InsumoId = Receta_Insumo.InsumoId INNER JOIN Receta ON Receta.RecetaId = Receta_Insumo.RecetaId ORDER BY Receta.RecetaId"; SqlDataReader reader = CommonUtils.ConexionBD.EjecutarConsultaReader(sql); if (reader.HasRows) { CommonUtils.Receta receta = new CommonUtils.Receta(); CommonUtils.RecetaInsumo recetaInsumo; int idReceta = -1; while (reader.Read()) { int idActual = (int)reader.GetDecimal(8); if (idActual != idReceta) { if (idReceta != -1) { receta = new CommonUtils.Receta(); } receta.idReceta = idActual; receta.nombre = reader.GetString(9); receta.costoReceta = (float)reader.GetDouble(10); list.Add(receta); idReceta = idActual; } CommonUtils.Insumo insumo = new CommonUtils.Insumo(); recetaInsumo = new CommonUtils.RecetaInsumo(); insumo.idInsumo = (int)reader.GetDecimal(0); insumo.cantidad = (float)reader.GetDouble(1); insumo.costoUnidad = (float)reader.GetDouble(2); insumo.nombre = reader.GetString(3); insumo.presentacion = reader.GetString(4); insumo.marca = reader.GetString(5); insumo.unidad = reader.GetString(6); recetaInsumo.insumo = insumo; recetaInsumo.Nombre = insumo.nombre; recetaInsumo.cantidad = (float)reader.GetDouble(7); receta.listaInsumos.Add(recetaInsumo); gridViewListaRecetas.SetMasterRowExpanded(0, false); } } gridControlListaRecetas.ShowOnlyPredefinedDetails = true; // gridControlListaRecetas.MainView. ColumnViewOptionsBehavior.AutoPopulateColumns gridControlListaRecetas.DataSource = null; gridControlListaRecetas.DataSource = list;//CommonUtils.ConexionBD.EjecutarConsulta("Select * from Receta"); ((DevExpress.XtraGrid.Views.Grid.GridView)gridControlListaRecetas.Views[0]).Columns[0].FieldName = "idReceta"; ((DevExpress.XtraGrid.Views.Grid.GridView)gridControlListaRecetas.Views[0]).Columns[1].FieldName = "nombre"; ((DevExpress.XtraGrid.Views.Grid.GridView)gridControlListaRecetas.Views[0]).Columns[2].FieldName = "costoReceta"; CommonUtils.ConexionBD.CerrarConexion(); }
private void InitializeGrid() { System.Collections.ArrayList list = new System.Collections.ArrayList(); CommonUtils.ConexionBD.AbrirConexion(); string sql="SELECT Insumo.InsumoId, Insumo.Cantidad, Insumo.CostoUnidad, Insumo.Nombre, Insumo.Presentacion, Insumo.Marca, Insumo.Unidad,Receta_Insumo.Cantidad AS Expr1, Receta.RecetaId, Receta.Nombre AS Expr2, Receta.CostoReceta FROM Receta_Insumo INNER JOIN Insumo ON Insumo.InsumoId = Receta_Insumo.InsumoId INNER JOIN Receta ON Receta.RecetaId = Receta_Insumo.RecetaId ORDER BY Receta.RecetaId"; SqlDataReader reader = CommonUtils.ConexionBD.EjecutarConsultaReader(sql); if (reader.HasRows) { CommonUtils.Receta receta=new CommonUtils.Receta(); CommonUtils.RecetaInsumo recetaInsumo; int idReceta =-1; while (reader.Read()) { int idActual = (int)reader.GetDecimal(8); if (idActual != idReceta) { if (idReceta != -1) { receta = new CommonUtils.Receta(); } receta.idReceta = idActual; receta.nombre = reader.GetString(9); receta.costoReceta = (float)reader.GetDouble(10); list.Add(receta); idReceta=idActual; } CommonUtils.Insumo insumo = new CommonUtils.Insumo(); recetaInsumo = new CommonUtils.RecetaInsumo(); insumo.idInsumo = (int)reader.GetDecimal(0); insumo.cantidad = (float)reader.GetDouble(1); insumo.costoUnidad = (float)reader.GetDouble(2); insumo.nombre = reader.GetString(3); insumo.presentacion = reader.GetString(4); insumo.marca = reader.GetString(5); insumo.unidad = reader.GetString(6); recetaInsumo.insumo = insumo; recetaInsumo.Nombre = insumo.nombre; recetaInsumo.cantidad = (float)reader.GetDouble(7); receta.listaInsumos.Add(recetaInsumo); gridViewListaRecetas.SetMasterRowExpanded(0, false); } } gridControlListaRecetas.ShowOnlyPredefinedDetails = true; // gridControlListaRecetas.MainView. ColumnViewOptionsBehavior.AutoPopulateColumns gridControlListaRecetas.DataSource = null; gridControlListaRecetas.DataSource = list;//CommonUtils.ConexionBD.EjecutarConsulta("Select * from Receta"); ((DevExpress.XtraGrid.Views.Grid.GridView)gridControlListaRecetas.Views[0]).Columns[0].FieldName = "idReceta"; ((DevExpress.XtraGrid.Views.Grid.GridView)gridControlListaRecetas.Views[0]).Columns[1].FieldName = "nombre"; ((DevExpress.XtraGrid.Views.Grid.GridView)gridControlListaRecetas.Views[0]).Columns[2].FieldName = "costoReceta"; CommonUtils.ConexionBD.CerrarConexion(); }
private void SaveProduct() { if (receta == null) { string Sql = "INSERT INTO Receta( " + " Nombre,CostoReceta)" + " VALUES ('" + CommonUtils.StringUtils.EscapeSQL(txtNombreReceta.Text) + "', " + txtCostoReceta.Text + " ) "; try { decimal value = CommonUtils.ConexionBD.ActualizarRetornandoId(Sql);// CommonUtils.ConexionBD.ObtenerUltimoId("Select @@IDENTITY"); receta = new CommonUtils.Receta(); receta.idReceta = (int)value; receta.nombre = txtNombreReceta.Text; for (int i = 0; i < dataGridViewListInsumoReceta.Rows.Count; i++) { string cantidad = dataGridViewListInsumoReceta.Rows[i].Cells[3].Value.ToString(); if (rowPosition == i && cantidadInsumo != -1) { cantidad = cantidadInsumo.ToString(); } Sql = "INSERT INTO Receta_Insumo (RecetaId,InsumoId,Cantidad) VALUES ('" + value + "','" + dataGridViewListInsumoReceta.Rows[i].Cells[0].Value.ToString() + "','" + /*dataGridViewListInsumoReceta.Rows[i].Cells[3].Value.ToString()*/ cantidad + "')"; CommonUtils.ConexionBD.Actualizar(Sql); CommonUtils.RecetaInsumo recetaInsumo = new CommonUtils.RecetaInsumo(); recetaInsumo.insumo = listaInsumosReceta[int.Parse(dataGridViewListInsumoReceta.Rows[i].Cells[0].Value.ToString())]; recetaInsumo.cantidad = float.Parse(dataGridViewListInsumoReceta.Rows[i].Cells[3].Value.ToString()); receta.listaInsumos.Add(recetaInsumo); } MessageBarValue = "La receta " + txtNombreReceta.Text + " fue creado (a) satisfactoriamente."; this.ResetFields(); } catch (Exception ex) { log.Error(ex.Message, ex); MessageBarValue = "No se pudo Crear la receta. Hubo un error: " + ex.Message; } finally { alertControlNuevaReceta.Show(this.FindForm(), "Creación Receta.", MessageBarValue, Image); } } else { try { string Sql = "UPDATE Receta set Nombre='" + CommonUtils.StringUtils.EscapeSQL(txtNombreReceta.Text) + "',CostoReceta=" + txtCostoReceta.Text + " where RecetaId=" + receta.idReceta; CommonUtils.ConexionBD.Actualizar(Sql); Sql = "DELETE from Receta_Insumo WHERE RecetaId=" + receta.idReceta; CommonUtils.ConexionBD.Actualizar(Sql); for (int i = 0; i < dataGridViewListInsumoReceta.Rows.Count; i++) { string cantidad = dataGridViewListInsumoReceta.Rows[i].Cells[3].Value.ToString(); if (rowPosition == i && cantidadInsumo != -1) { cantidad = cantidadInsumo.ToString(); } Sql = "INSERT INTO Receta_Insumo (RecetaId,InsumoId,Cantidad) VALUES ('" + receta.idReceta + "','" + dataGridViewListInsumoReceta.Rows[i].Cells[0].Value.ToString() + "','" + /*dataGridViewListInsumoReceta.Rows[i].Cells[3].Value.ToString()*/ cantidad + "')"; CommonUtils.ConexionBD.Actualizar(Sql); } MessageBarValue = "La receta " + txtNombreReceta.Text + " fue modificada (a) satisfactoriamente."; actualizarGrid(); } catch (Exception ex) { log.Error(ex.Message, ex); MessageBarValue = "No se pudo Modificar la receta. Hubo un error: " + ex.Message; } finally { alertControlNuevaReceta.Show(this.FindForm(), "Actualización Receta.", MessageBarValue, Image); } } }
private void SaveProduct() { if (receta == null) { string Sql = "INSERT INTO Receta( " + " Nombre,CostoReceta)" + " VALUES ('" +CommonUtils.StringUtils.EscapeSQL( txtNombreReceta.Text )+ "', " + txtCostoReceta.Text + " ) "; try { decimal value = CommonUtils.ConexionBD.ActualizarRetornandoId(Sql);// CommonUtils.ConexionBD.ObtenerUltimoId("Select @@IDENTITY"); receta = new CommonUtils.Receta(); receta.idReceta = (int)value; receta.nombre = txtNombreReceta.Text; for (int i = 0; i < dataGridViewListInsumoReceta.Rows.Count; i++) { string cantidad = dataGridViewListInsumoReceta.Rows[i].Cells[3].Value.ToString(); if (rowPosition == i && cantidadInsumo != -1) { cantidad = cantidadInsumo.ToString(); } Sql = "INSERT INTO Receta_Insumo (RecetaId,InsumoId,Cantidad) VALUES ('" + value + "','" + dataGridViewListInsumoReceta.Rows[i].Cells[0].Value.ToString() + "','" + /*dataGridViewListInsumoReceta.Rows[i].Cells[3].Value.ToString()*/cantidad + "')"; CommonUtils.ConexionBD.Actualizar(Sql); CommonUtils.RecetaInsumo recetaInsumo = new CommonUtils.RecetaInsumo(); recetaInsumo.insumo = listaInsumosReceta[int.Parse(dataGridViewListInsumoReceta.Rows[i].Cells[0].Value.ToString())]; recetaInsumo.cantidad = float.Parse(dataGridViewListInsumoReceta.Rows[i].Cells[3].Value.ToString()); receta.listaInsumos.Add(recetaInsumo); } MessageBarValue = "La receta " + txtNombreReceta.Text + " fue creado (a) satisfactoriamente."; this.ResetFields(); } catch (Exception ex) { log.Error(ex.Message, ex); MessageBarValue = "No se pudo Crear la receta. Hubo un error: " + ex.Message; } finally { alertControlNuevaReceta.Show(this.FindForm(), "Creación Receta.",MessageBarValue , Image); } } else { try { string Sql = "UPDATE Receta set Nombre='" + CommonUtils.StringUtils.EscapeSQL(txtNombreReceta.Text) + "',CostoReceta=" + txtCostoReceta.Text + " where RecetaId=" + receta.idReceta; CommonUtils.ConexionBD.Actualizar(Sql); Sql = "DELETE from Receta_Insumo WHERE RecetaId=" + receta.idReceta; CommonUtils.ConexionBD.Actualizar(Sql); for (int i = 0; i < dataGridViewListInsumoReceta.Rows.Count; i++) { string cantidad = dataGridViewListInsumoReceta.Rows[i].Cells[3].Value.ToString(); if (rowPosition == i && cantidadInsumo != -1) { cantidad = cantidadInsumo.ToString(); } Sql = "INSERT INTO Receta_Insumo (RecetaId,InsumoId,Cantidad) VALUES ('" + receta.idReceta + "','" + dataGridViewListInsumoReceta.Rows[i].Cells[0].Value.ToString() + "','" + /*dataGridViewListInsumoReceta.Rows[i].Cells[3].Value.ToString()*/cantidad + "')"; CommonUtils.ConexionBD.Actualizar(Sql); } MessageBarValue ="La receta " + txtNombreReceta.Text + " fue modificada (a) satisfactoriamente."; actualizarGrid(); } catch (Exception ex) { log.Error(ex.Message, ex); MessageBarValue = "No se pudo Modificar la receta. Hubo un error: " + ex.Message; } finally { alertControlNuevaReceta.Show(this.FindForm(), "Actualización Receta.",MessageBarValue , Image); } } }