public Anexo ConsultarAnexo(string numAnexo, Almacen almacen) { var anexoConsulta = AnexoDao.ConsultaAnexo(numAnexo, almacen); if (anexoConsulta != null)//Existe { var anexosDetalleConsulta = anexoConsulta.AnexoDetalle; anexoConsulta.AnexoDetalle = new List<AnexoDetalle>(); //Seteamos las propiedas de la vista foreach (var anexoDetalleConsulta in anexosDetalleConsulta) { var anexoDetalle = new AnexoDetalle { IdAnexoDetalle = anexoDetalleConsulta.IdAnexoDetalle, RenglonAnexo = anexoDetalleConsulta.RenglonAnexo, Articulo = anexoDetalleConsulta.Articulo, CveArt = anexoDetalleConsulta.Articulo.Id.CveArt, DescripcionArt = anexoDetalleConsulta.Articulo.DesArticulo, UnidadArt = anexoDetalleConsulta.Articulo.Unidad, CantidadMinimo = anexoDetalleConsulta.CantidadMinimo, CantidadMaximo = anexoDetalleConsulta.CantidadMaximo }; anexoConsulta.AnexoDetalle.Add(anexoDetalle); } } return anexoConsulta; }
private void CargarExcel(string fileName,Contrato contrato) { var lines = File.ReadAllLines(fileName).Select(a => a.Split(',')); var numeroLinea = 1; foreach (var line in lines) { int clave; int minimo = -1; int maximo; if (!int.TryParse(line[0], out clave)) throw new Exception("Ocurrio un error en el formato de la clave linea " + numeroLinea); if (contrato == Contrato.ABIERTO) { if (!int.TryParse(line[1], out minimo)) throw new Exception("Ocurrio un error en el formato del minimo linea " + numeroLinea); } if (!int.TryParse(line[2], out maximo)) throw new Exception("Ocurrio un error en el formato del maximo linea " + numeroLinea); if (PartidaActual == null) throw new Exception("No ha seleccionado partida"); var almacen = cbxAlmacen.SelectedValue as Almacen; var articulo = AnexoService.ArticuloDao.ArticuloPartida(clave, almacen, PartidaActual); if (articulo == null) throw new Exception("No existe la clave linea " + numeroLinea); if (contrato == Contrato.ABIERTO) { if (minimo > maximo) throw new Exception("El minimo es mayor que el maximo linea " + numeroLinea); } var list = bsAnexoDetalle.DataSource as List<AnexoDetalle>; var anexoDetalle = new AnexoDetalle(); anexoDetalle.RenglonAnexo = (short) numeroLinea; anexoDetalle.Articulo = articulo; anexoDetalle.CveArt = clave; anexoDetalle.DescripcionArt = articulo.DesArticulo; anexoDetalle.UnidadArt = articulo.Unidad; anexoDetalle.CantidadMaximo = maximo; if (contrato == Contrato.ABIERTO) anexoDetalle.CantidadMinimo = minimo; else if(contrato == Contrato.CERRADO) anexoDetalle.CantidadMinimo = null; list.Add(anexoDetalle); bsAnexoDetalle.DataSource = list; gvAnexoDetalle.RefreshData(); ++numeroLinea; } }