private void CargarDetalleRequerimiento() { VwRequerimiento vwRequerimientoSel = (VwRequerimiento)gvConsulta.GetFocusedRow(); if (vwRequerimientoSel != null) { Cursor = Cursors.WaitCursor; string where = string.Format("idrequerimiento = {0} and saldoaimportar > 0 and aprobado = '1'", vwRequerimientoSel.Idrequerimiento); VwRequerimientodetordservicioimpList = Service.GetAllVwRequerimientodetordservicioimp(where, "numeroitem"); foreach (var itemReq in VwRequerimientodetordservicioimpList) { var totalCantidadImporta = VwOrdenserviciodetList.Where(x => x.Idarticulo == itemReq.Idarticulo && x.Idrequerimientodet == itemReq.Idrequerimientodet && x.DataEntityState != DataEntityState.Deleted).Sum(x => x.Cantidad); if (totalCantidadImporta > 0) { itemReq.Cantidadimportada = totalCantidadImporta; itemReq.Saldoaimportar = itemReq.Cantidad - itemReq.Cantidadimportada; } } var itemsARemover = VwRequerimientodetordservicioimpList.Where(x => x.Saldoaimportar <= 0).ToList(); foreach (var itemToRemove in itemsARemover) { VwRequerimientodetordservicioimpList.Remove(itemToRemove); } //Borrar gcDetalleImp.BeginUpdate(); gcDetalleImp.DataSource = VwRequerimientodetordservicioimpList; gcDetalleImp.EndUpdate(); gvDetalleImp.BestFitColumns(); Cursor = Cursors.Default; } }
private bool Validaciones() { if (gvConsulta.RowCount == 0 || gvDetalleImp.RowCount == 0) { XtraMessageBox.Show("No hay información requerimientos, verifique", "Atención", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return(false); } int cantidadItemsSeleccionados = VwRequerimientodetordservicioimpList.Count(x => x.Itemseleccionado); if (cantidadItemsSeleccionados == 0) { XtraMessageBox.Show("Debe seleccionar los items a importar", "Atención", MessageBoxButtons.OK, MessageBoxIcon.Warning); return(false); } switch (cboBuscarPor.SelectedIndex) { case 0: //Todos return(true); case 1: //Requerimiento if (string.IsNullOrEmpty(iNumeroreq.Text)) { XtraMessageBox.Show("Ingrese el numero de requerimiento.", "Atención", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); iNumeroreq.Focus(); return(false); } break; } return(true); }
private void bmMntItems_ItemClick(object sender, ItemClickEventArgs e) { var subMenu = e.Item as BarSubItem; if (subMenu != null) { return; } switch (e.Item.Name) { case "btnImportar": if (!Validaciones()) { return; } var maxItem = VwOrdenserviciodetList.Where(w => w.DataEntityState != DataEntityState.Deleted) .OrderByDescending(t => t.Numeroitem) .FirstOrDefault(); var sgtItem = maxItem == null ? 1 : maxItem.Numeroitem + 1; foreach (var item in VwRequerimientodetordservicioimpList.Where(x => x.Itemseleccionado)) { VwOrdenserviciodet vwOrdenserviciodet = new VwOrdenserviciodet(); vwOrdenserviciodet.Numeroitem = sgtItem; vwOrdenserviciodet.Idarticulo = item.Idarticulo; vwOrdenserviciodet.Codigoarticulo = item.Codigoarticulo; vwOrdenserviciodet.Codigoproveedor = item.Codigoproveedor; vwOrdenserviciodet.Idunidadinventario = item.Idunidadmedida; vwOrdenserviciodet.Nombremarca = item.Nombremarca; vwOrdenserviciodet.Nombrearticulo = item.Nombrearticulo; vwOrdenserviciodet.Cantidad = item.Cantidadaimportar; vwOrdenserviciodet.Idunidadmedida = item.Idunidadmedida; vwOrdenserviciodet.Abrunidadmedida = item.Abrunidadmedida; vwOrdenserviciodet.Preciounitario = item.Preciounitario; vwOrdenserviciodet.Especificacion = item.Especificacion; vwOrdenserviciodet.Descuento1 = 0m; vwOrdenserviciodet.Descuento2 = 0m; vwOrdenserviciodet.Descuento3 = 0m; vwOrdenserviciodet.Descuento4 = 0m; vwOrdenserviciodet.Preciounitarioneto = 0m; vwOrdenserviciodet.Importetotal = 0m; vwOrdenserviciodet.Pesoarticulo = item.Pesoarticulo; vwOrdenserviciodet.Pesototalkg = Math.Round(vwOrdenserviciodet.Cantidad * vwOrdenserviciodet.Pesoarticulo, 2); vwOrdenserviciodet.Idimpuesto = item.Idimpuesto; vwOrdenserviciodet.Idtipoafectacionigv = item.Idtipoafectacionigv; vwOrdenserviciodet.Gravado = item.Gravado; vwOrdenserviciodet.Exonerado = item.Exonerado; vwOrdenserviciodet.Inafecto = item.Inafecto; vwOrdenserviciodet.Exportacion = item.Exportacion; vwOrdenserviciodet.Idcentrodecosto = item.Idcentrodecosto; vwOrdenserviciodet.Descripcioncentrodecosto = item.Descripcioncentrodecosto; vwOrdenserviciodet.Porcentajepercepcion = 0m; vwOrdenserviciodet.Idarea = item.Idarea; vwOrdenserviciodet.Nombrearea = item.Nombrearea; vwOrdenserviciodet.Idproyecto = item.Idproyecto; vwOrdenserviciodet.Nombreproyecto = item.Nombreproyecto; vwOrdenserviciodet.Idrequerimientodet = item.Idrequerimientodet; vwOrdenserviciodet.Serienumeroreq = item.Serienumeroreq; vwOrdenserviciodet.Codigocptooperacion = item.Codigocptooperacion; vwOrdenserviciodet.Nombrecptooperacion = item.Nombrecptooperacion; vwOrdenserviciodet.DataEntityState = DataEntityState.Added; TipoMnt = vwOrdenserviciodet.Idordenserviciodet <= 0 ? TipoMantenimiento.Nuevo : TipoMantenimiento.Modificar; switch (TipoMnt) { case TipoMantenimiento.Nuevo: vwOrdenserviciodet.Createdby = SessionApp.UsuarioSel.Idusuario; vwOrdenserviciodet.Creationdate = DateTime.Now; break; case TipoMantenimiento.Modificar: vwOrdenserviciodet.Modifiedby = SessionApp.UsuarioSel.Idusuario; vwOrdenserviciodet.Lastmodified = DateTime.Now; break; } sgtItem++; VwOrdenserviciodetList.Add(vwOrdenserviciodet); VwRequerimientoSel = (VwRequerimiento)gvConsulta.GetFocusedRow(); } DialogResult = DialogResult.OK; break; case "btnCancelarItem": DialogResult = DialogResult.Cancel; break; case "btnConsultar": if (!ValidacionDatosConsulta()) { return; } CargarRequerimientos(); break; case "btnCerrar": DialogResult = DialogResult.Cancel; break; } }