private void button1_Click(object sender, EventArgs e) { if (txtMATERIAL.Text == "") { MessageBox.Show("Debe seleccionar un material para poder graficar"); return; } if (dtpDESDE.Value == dtpHASTA.Value) { MessageBox.Show("No se puede graficar si las fechas comparadas son la misma"); return; } if (grafico == true) { MessageBox.Show("Ya hay una grafica con este material"); return; } exportar = true; grafico = true; dgvORDENESVENTA.DataSource = null; listCompra = cOccantmat.SuperFiltro(dtpDESDE.Value, dtpHASTA.Value, txtMATERIAL.Text); // istVentaCargada = cOccantmatVenta.SuperFiltroVenta(dtpDESDE.Value, dtpHASTA.Value, txtMATERIAL.Text); listVenta = cOccantmatVenta.SuperFiltroVenta(dtpDESDE.Value, dtpHASTA.Value, txtMATERIAL.Text); //foreach (var item in listVentaCargada) //{ // if (listVentaCargada.LongCount()==0) // { // listVenta.Add(item); // } // foreach (var item2 in listVenta) // { // if (item.venta.Fecha.ToString("yy/MM/dd") == item2.venta.Fecha.ToString("yy/MM/dd")) // { // item.cantidadmat.cantidad_base_venta += item2.cantidadmat.cantidad_base_venta; // } // if (item.venta.Fecha.ToString("yy/MM/dd") != item2.venta.Fecha.ToString("yy/MM/dd")) // { // listVenta.Add(item); // } // } //} if (listCompra.Count() >= listVenta.Count()) { foreach (var item in listCompra) { omagic = new MODELO.magiafinal(); //omagic.Fecha = ""; //omagic.cantVenta = 0; //omagic.cantCompra = 0; omagic.Fecha = item.ordercompra.Fecha.ToString("yy/MM/dd"); omagic.cantCompra = item.cantidadmat.cantidad_base; foreach (var itemV in listVenta) { if (itemV.venta.Fecha.ToString("yy/MM/dd") == omagic.Fecha) { omagic.cantVenta += itemV.cantidadmat.cantidad_base_venta; //omagic.diferencia = omagic.cantVenta - omagic.cantCompra; } else { //omagic.cantVenta = 0; } } listFinal.Add(omagic); } } else { foreach (var item in listVenta) { omagic = new MODELO.magiafinal(); //omagic.Fecha = ""; //omagic.cantVenta = 0; //omagic.cantCompra = 0; omagic.Fecha = item.venta.Fecha.ToString("yy/MM/dd"); omagic.cantVenta = item.cantidadmat.cantidad_base_venta; foreach (var itemV in listCompra) { if (itemV.ordercompra.Fecha.ToString("yy/MM/dd") == omagic.Fecha) { omagic.cantCompra += itemV.cantidadmat.cantidad_base; //omagic.diferencia = omagic.cantCompra - omagic.cantVenta; } else { //omagic.cantCompra = 0; } } listFinal.Add(omagic); } }//CREO QUE LO AGREGAMSO MUCHAS VECES. foreach (var item in listFinal) { int count = 0; if (listFinality.LongCount() < 1) { listFinality.Add(item); } foreach (var item2 in listFinality) { if (item.Fecha != item2.Fecha) { count++; } } if (listFinality.LongCount() == count) { listFinality.Add(item); } else { //listFinality.Remove(item); foreach (var item2 in listFinality) { if (item.Fecha == item2.Fecha) { item.cantVenta += item2.cantVenta; } } listFinality.Add(item); } } foreach (var item in listFinality) { omagic = item; foreach (var item2 in listFinality) { if (item.Fecha == item2.Fecha && item.cantVenta < item2.cantVenta) { omagic = item2; } } listDefinitiva.Add(omagic); } foreach (var item in listDefinitiva) { omagic = item; foreach (var item2 in listDefinitiva) { if (item.Fecha == item2.Fecha && item.cantCompra < item2.cantCompra) { omagic = item2; } } listDefinitivaSuperSaiain2.Add(omagic); } foreach (var item in listDefinitivaSuperSaiain2) { if (!listDefinitivaSuperSaiain.Contains(item)) { listDefinitivaSuperSaiain.Add(item); } } dgvORDENESVENTA.DataSource = listDefinitivaSuperSaiain; for (int i = 0; i < dgvORDENESVENTA.Rows.Count; i++) { this.chart1.Series["Compras"].Points.AddXY(dgvORDENESVENTA.Rows[i].Cells[0].Value.ToString(), Convert.ToDecimal(dgvORDENESVENTA.Rows[i].Cells[1].Value.ToString())); this.chart1.Series["Ventas"].Points.AddXY(dgvORDENESVENTA.Rows[i].Cells[0].Value.ToString(), Convert.ToDecimal(dgvORDENESVENTA.Rows[i].Cells[2].Value.ToString())); //chart1.Update(); } }