private void button1_Click(object sender, EventArgs e) { bool cheack = true; foreach (DataGridViewRow r in dataGridView1.Rows) { for (int i = 2; i <= 9; i++) { if (r.Cells[i].Value == null) { cheack = false; } } } if (cheack == true) { project.Estado = "Terminado"; Broker b = new Broker(); b.UpdateEstadoProyecto(project); for (int i = 0; i < cmbLosas.Items.Count; i++) { DatabaseLosa.Carga caga = new DatabaseLosa.Carga(); cmbLosas.SelectedIndex = i; int HiX = Convert.ToString(dataGridView1.Rows[cmbLosas.SelectedIndex].Cells[2].Value).IndexOf("X"); int HiY = Convert.ToString(dataGridView1.Rows[cmbLosas.SelectedIndex].Cells[2].Value).IndexOf("Y"); if (HiX == -1) { caga.Hinclinacion = Convert.ToDouble(Convert.ToString(dataGridView1.Rows[cmbLosas.SelectedIndex].Cells[2].Value).Substring(0, HiY - 1)); caga.Xy = Convert.ToString(dataGridView1.Rows[cmbLosas.SelectedIndex].Cells[2].Value).Substring(HiY); } else { caga.Hinclinacion = Convert.ToDouble(Convert.ToString(dataGridView1.Rows[cmbLosas.SelectedIndex].Cells[2].Value).Substring(0, HiX - 1)); caga.Xy = Convert.ToString(dataGridView1.Rows[cmbLosas.SelectedIndex].Cells[2].Value).Substring(HiX); } caga.Carga_viva = Convert.ToInt32(dataGridView1.Rows[cmbLosas.SelectedIndex].Cells[5].Value); caga.Carga_adicional = Convert.ToInt32(dataGridView1.Rows[cmbLosas.SelectedIndex].Cells[6].Value); caga.Id_losa = cp.losas[cmbLosas.SelectedIndex].Id; b.InsertCarga(caga); } //MenuForm menu = new MenuForm(); VerProyectoForm vp = new VerProyectoForm(); vp.project = new DatabaseLosa.Proyecto(); vp.project = b.selectProyecto(project.Id); this.Hide(); vp.Show(); } else { MessageBox.Show("Aun hay cargas sin calcular", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
}//final las losas de proyectos //select lista de CARGAS public List <Carga> selectCargas(long idProyecto) { List <Carga> ListaCargas = new List <Carga>(); try { command.CommandText = "SELECT CARGA.ID_LOSA, CARGA.ID_CARGA, CARGA.XY, CARGA.HINCLINACION, CARGA.CARGA_ADICIONAL, CARGA.CARGA_VIVA FROM CARGA, LOSA WHERE LOSA.ID_LOSA = CARGA.ID_LOSA AND LOSA.ID_PROYECTO=" + Convert.ToString(idProyecto); command.CommandType = CommandType.Text; connection.Open(); OleDbDataReader reader = command.ExecuteReader(); while (reader.Read()) { Carga p = new Carga(); p.Id_losa = Convert.ToInt32(reader["ID_LOSA"].ToString()); p.Xy = reader["XY"].ToString(); p.Id_carga = Convert.ToInt32(reader["ID_CARGA"].ToString()); p.Hinclinacion = Convert.ToDouble(reader["HINCLINACION"].ToString()); p.Carga_viva = Convert.ToDouble(reader["CARGA_ADICIONAL"].ToString()); p.Carga_adicional = Convert.ToDouble(reader["CARGA_VIVA"].ToString()); ListaCargas.Add(p); } return(ListaCargas); } catch (Exception) { throw; } finally { if (connection != null) { connection.Close(); } } }//final las losas de proyectos
}//final insert public void InsertCarga(Carga c) { try { command.CommandText = "INSERT INTO CARGA (HINCLINACION, CARGA_ADICIONAL, XY, CARGA_VIVA, ID_LOSA) VALUES(" + Convert.ToString(c.Hinclinacion) + "," + Convert.ToString(c.Carga_adicional) + ",'" + c.Xy + "'," + Convert.ToString(c.Carga_viva) + "," + Convert.ToString(c.Id_losa) + ")"; command.CommandType = CommandType.Text; connection.Open(); command.ExecuteNonQuery(); } catch (Exception) { throw; } finally { if (connection != null) { connection.Close(); } } }//final insert
public CalculosProyecto(XmlDocument xmlDoc) { //inicializando variables de listas y proyectos proyecto = new Proyecto(); losas = new List <DatabaseLosa.Losa>(); cargas = new List <DatabaseLosa.Carga>(); calculosLosas = new List <CalculosLosa>(); calculosCargas = new List <CalculoCarga>(); proyecto.Id = Convert.ToInt64(DateTime.Now.ToString("yyMMddhhmm")); //asignando a id al proyecto exportado XmlNode projectNode = xmlDoc.SelectSingleNode("Proyecto"); //tomando nodo principal proyecto //tomando datos del nodo: nombre XmlNode nodeData = projectNode.SelectSingleNode("Nombre"); proyecto.Nombre = nodeData.InnerText; //tomando datos del nodo: Usuario nodeData = projectNode.SelectSingleNode("Usuario"); proyecto.Usuario = nodeData.InnerText; //tomando datos del nodo: Tipo_losa nodeData = projectNode.SelectSingleNode("Tipo_losa"); proyecto.Tipo_losa = nodeData.InnerText; //tomando datos del nodo: Pandereta nodeData = projectNode.SelectSingleNode("Pandereta"); proyecto.Pandereta = Convert.ToDouble(nodeData.InnerText); //tomando datos del nodo: Peso_concreto nodeData = projectNode.SelectSingleNode("Peso_concreto"); proyecto.Peso_concreto = Convert.ToDouble(nodeData.InnerText); //tomando datos del nodo: Peso_concreto nodeData = projectNode.SelectSingleNode("Terminacion"); proyecto.Terminacion = Convert.ToDouble(nodeData.InnerText); //tomando datos del nodo: Recubrimiento nodeData = projectNode.SelectSingleNode("Recubrimiento"); proyecto.Recubrimiento = Convert.ToDouble(nodeData.InnerText); //tomando datos del nodo: Fy nodeData = projectNode.SelectSingleNode("Fy"); proyecto.Fy = Convert.ToDouble(nodeData.InnerText); //tomando datos del nodo: Fc nodeData = projectNode.SelectSingleNode("Fc"); proyecto.Fc = Convert.ToDouble(nodeData.InnerText); //tomando datos del nodo: Estado nodeData = projectNode.SelectSingleNode("Estado"); proyecto.Estado = nodeData.InnerText; //tomando datos del nodo: Tipo_edificio nodeData = projectNode.SelectSingleNode("Tipo_edificio"); proyecto.Tipo_edificio = nodeData.InnerText; //tomando datos del nodo: Fecha nodeData = projectNode.SelectSingleNode("Fecha"); proyecto.Fecha = nodeData.InnerText; XmlNode nodeLosa = projectNode.SelectSingleNode("Losas"); XmlNodeList nodeLosas = nodeLosa.SelectNodes("losa"); foreach (XmlElement item in nodeLosas) { //variables para add to list DatabaseLosa.Losa losa = new DatabaseLosa.Losa(); DatabaseLosa.Carga carga = new DatabaseLosa.Carga(); //obteniendo datos de losa losa.Nombre = item.SelectSingleNode("Nombre").InnerText; losa.Lx = Convert.ToDouble(item.SelectSingleNode("Lx").InnerText); losa.Ly = Convert.ToDouble(item.SelectSingleNode("Ly").InnerText); losa.BordesY = Convert.ToInt32(item.SelectSingleNode("BordesY").InnerText); losa.Bordesx = Convert.ToInt32(item.SelectSingleNode("Bordesx").InnerText); //obteniendo datos de carga carga.Xy = item.SelectSingleNode("Xy").InnerText; carga.Hinclinacion = Convert.ToDouble(item.SelectSingleNode("Hinclinacion").InnerText); carga.Carga_viva = Convert.ToDouble(item.SelectSingleNode("Carga_viva").InnerText); carga.Carga_adicional = Convert.ToDouble(item.SelectSingleNode("Carga_adicional").InnerText); losas.Add(losa); cargas.Add(carga); } int x = 0; //calculando losas y cargas foreach (DatabaseLosa.Losa losa in losas) { CalculosLosa cl = new CalculosLosa(losa); CalculoCarga ccarg = new CalculoCarga(losa, cl, proyecto, cargas[x]); calculosLosas.Add(cl); calculosCargas.Add(ccarg); x++; } }