public List<Cotizacion> CotizacionPorEjecutivo(int IdEjecutivo, string FechaInicio, string FechaFin) { InicializaConexion(); List<Cotizacion> listaCotizaciones = new List<Cotizacion>(); sqlDataAdapter.SelectCommand = new SqlCommand("ReporteCotizaciones", sqlConnection); sqlDataAdapter.SelectCommand.CommandType = CommandType.StoredProcedure; sqlDataAdapter.SelectCommand.Parameters.Add("@ID", SqlDbType.Int).Value = IdEjecutivo; sqlDataAdapter.SelectCommand.Parameters["@ID"].Direction = ParameterDirection.Input; sqlDataAdapter.SelectCommand.Parameters.Add("@Oper", SqlDbType.Int).Value = 1; sqlDataAdapter.SelectCommand.Parameters["@Oper"].Direction = ParameterDirection.Input; if (FechaInicio == "") { sqlDataAdapter.SelectCommand.Parameters.Add("@Fecha_Ini", SqlDbType.DateTime).Value = DBNull.Value; sqlDataAdapter.SelectCommand.Parameters["@Fecha_Ini"].Direction = ParameterDirection.Input; } else { sqlDataAdapter.SelectCommand.Parameters.Add("@Fecha_Ini", SqlDbType.DateTime).Value = Convert.ToDateTime(FechaInicio+" 00:00"); sqlDataAdapter.SelectCommand.Parameters["@Fecha_Ini"].Direction = ParameterDirection.Input; } if (FechaFin == "") { sqlDataAdapter.SelectCommand.Parameters.Add("@Fecha_Fin", SqlDbType.DateTime).Value = DBNull.Value; sqlDataAdapter.SelectCommand.Parameters["@Fecha_Fin"].Direction = ParameterDirection.Input; } else { sqlDataAdapter.SelectCommand.Parameters.Add("@Fecha_Fin", SqlDbType.DateTime).Value = Convert.ToDateTime(FechaFin+" 23:59"); sqlDataAdapter.SelectCommand.Parameters["@Fecha_Fin"].Direction = ParameterDirection.Input; } sqlDataAdapter.Fill(ds, "ReporteCotizaciones"); foreach (DataRow dr in ds.Tables["ReporteCotizaciones"].Rows) { Cotizacion tmp = new Cotizacion(); tmp.IdCotizacion = Convert.ToString(dr["Id_Cotiza"]); tmp.NoSocio= Convert.ToString(dr["No_Socio"]); tmp.NombreSocio = Convert.ToString(dr["Socio"]); tmp.Marca = Convert.ToString(dr["Marca"]); tmp.Modelo = Convert.ToString(dr["Modelo"]); tmp.Ano = Convert.ToString(dr["Ano"]); tmp.Fecha = Convert.ToString(dr["Fecha_Cot"]); tmp.Status = Convert.ToString(dr["Estado"]); listaCotizaciones.Add(tmp); } FinalizaConexion(); return listaCotizaciones; }
private void rptArticulosApartados_ItemClick(object sender, ItemClickEventArgs e) { Cotizacion dsCotizacion=new Cotizacion(); var art = new EmpeñosDC(new clsConeccionDB().StringConn()).DetalleVentas.Where( v => v.Venta.Estado == "Apartado") .Select( vta => new { vta.CveArticulo, vta.Articulo.Descripcion, vta.Articulo.Kilates, vta.Articulo.Peso, vta.PrecioCompra, Abonos = vta.Venta.PagosVentas.Sum(pg => (decimal?)pg.Abono)??0, SaldoActual = vta.Venta.Saldo - (vta.Venta.PagosVentas.Where(pg=>pg.Estado).Sum(pg => (decimal?)pg.Abono) ?? 0), registro=vta.Venta.Usuario.Nombre, });//.Select(vta => vta.Saldo - (vta.PagosVentas.Where(pv => pv.Estado).Sum(pv => pv.Abono))).Sum(); foreach (var dt in art) { dsCotizacion.Tables["ArticulosApartados"].Rows.Add(new object[] {dt.CveArticulo, dt.Descripcion, dt.Peso, dt.Kilates, dt.PrecioCompra, dt.SaldoActual, dt.registro}); } if (art.Any()) { XrptArticulosApartados articulos = new XrptArticulosApartados { DataSource = dsCotizacion.Tables["ArticulosApartados"], SaldoArticulosPartados = { Value = art.Sum(s => s.SaldoActual) } }; articulos.ShowPreviewDialog(); } else XtraMessageBox.Show("No hay suficientes datos para mostrar el reporte", "Registros 0"); }