private void gvDetalle_CellValueChanged(object sender, CellValueChangedEventArgs e) { VwNotadebitoclidet item = (VwNotadebitoclidet)gvDetalle.GetFocusedRow(); TipoMantenimiento tipoMnt = item.Idnotadebitoclidet <= 0 ? TipoMantenimiento.Nuevo : TipoMantenimiento.Modificar; switch (tipoMnt) { case TipoMantenimiento.Nuevo: //item.Createdby = UsuarioAutenticado.UsuarioSel.Idusuario; //item.Creationdate = DateTime.Now; break; case TipoMantenimiento.Modificar: //item.Modifiedby = UsuarioAutenticado.UsuarioSel.Idusuario; //item.Lastmodified = DateTime.Now; break; } switch (e.Column.FieldName) { case "Cantidad": case "Preciounitario": case "Descuento1": case "Descuento2": case "Descuento3": case "Descuento4": CalculaItem1(item); SumarTotales(); break; case "Importetotal": CalculaItem2(item); SumarTotales(); break; case "Porcentajepercepcion": SumarTotales(); break; } if (gvDetalle.FocusedColumn.FieldName == "Cantidad") { //VwOrdendeventadet vwOrdendeventadet = Service.GetVwOrdendeventadet(x => x.IdOrdendeventadet == item.IdOrdendeventadet); //decimal cantidadAnterior = vwOrdendeventadet.Cantidad; //if (item.IdOrdendeventadet > 0 // && Service.CantidadReferenciasItemOrdendeventa(item.IdOrdendeventadet) > 0) //{ // XtraMessageBox.Show("El item tiene referencia en salida de almacen no puede modificar el valor.", "Atención", MessageBoxButtons.OK, // MessageBoxIcon.Exclamation); // item.Cantidad = cantidadAnterior; // gvDetalle.RefreshRowCell(gvDetalle.FocusedRowHandle, gvDetalle.FocusedColumn); // CalculaItem1(item); // SumarTotales(); // //gvDetalle.RefreshRowCell(gvDetalle.FocusedRowHandle, gvDetalle.FocusedColumn); //} } }
private void CalculaItem1(VwNotadebitoclidet item) { //VwOrdendeventadet item = (VwOrdendeventadet)gvDetalle.GetFocusedRow(); decimal precioUnitarioNeto = item.Preciounitario * (1 - item.Descuento1 / 100) * (1 - item.Descuento2 / 100) * (1 - item.Descuento3 / 100) * (1 - item.Descuento4 / 100); item.Preciounitarioneto = precioUnitarioNeto; item.Importetotal = Decimal.Round(item.Cantidad * precioUnitarioNeto, 2); item.DataEntityState = DataEntityState.Modified; }
public NotadebitocliMntItemFrm(TipoMantenimiento tipoMnt, VwNotadebitoclidet vwNotadebitoclidetMnt) { InitializeComponent(); _errorProvider = new DXErrorProvider(); var styleController = new StyleController(); WinFormUtils.SetStyleController(this, styleController); TipoMnt = tipoMnt; VwNotadebitoclidet = vwNotadebitoclidetMnt; }
private void CalculaItem2(VwNotadebitoclidet item) { //VwOrdendeventadet item = (VwOrdendeventadet)gvDetalle.GetFocusedRow(); item.Preciounitarioneto = item.Cantidad == 0 ? 0 : item.Importetotal / item.Cantidad; decimal precioUnitario = item.Preciounitarioneto * 100 / (100 - item.Descuento4); precioUnitario = precioUnitario * 100 / (100 - item.Descuento3); precioUnitario = precioUnitario * 100 / (100 - item.Descuento2); precioUnitario = precioUnitario * 100 / (100 - item.Descuento1); item.Preciounitario = precioUnitario; item.Importetotal = Decimal.Round(item.Cantidad * item.Preciounitario, 2); item.DataEntityState = DataEntityState.Modified; }
private void bmItemsDetalle_ItemClick(object sender, ItemClickEventArgs e) { var subMenu = e.Item as BarSubItem; if (subMenu != null) { return; } TipoMantenimiento tipoMantenimientoItem; NotadebitocliMntItemFrm cpventaMntItemFrm; VwNotadebitoclidet vwCpventadetMntItem; switch (e.Item.Name) { case "btnAddItem": //Asignar el siguiente item vwCpventadetMntItem = new VwNotadebitoclidet(); //Asignar el siguiente item var sgtItem = VwNotadebitoclidetList.Where(w => w.DataEntityState != DataEntityState.Deleted) .OrderByDescending(t => t.Numeroitem) .FirstOrDefault(); vwCpventadetMntItem.Numeroitem = sgtItem == null ? 1 : sgtItem.Numeroitem + 1; tipoMantenimientoItem = TipoMantenimiento.Nuevo; cpventaMntItemFrm = new NotadebitocliMntItemFrm(tipoMantenimientoItem, vwCpventadetMntItem); cpventaMntItemFrm.ShowDialog(); if (cpventaMntItemFrm.DialogResult == DialogResult.OK) { VwNotadebitoclidetList.Add(vwCpventadetMntItem); SumarTotales(); if (!gvDetalle.IsLastRow) { gvDetalle.MoveLastVisible(); gvDetalle.Focus(); gvDetalle.FocusedColumn = gvDetalle.Columns["Cantidad"]; } } break; case "btnEditItem": if (gvDetalle.RowCount == 0) { break; } //itemSel = (VwOrdendeventadet)gvDetalle.GetFocusedRow(); //if (itemSel.IdOrdendeventadet > 0 //&& Service.CantidadReferenciasItemOrdendeventa(itemSel.IdOrdendeventadet) > 0) //{ // XtraMessageBox.Show("El item tiene referencia en salida de almacen no puede modificar el valor.", "Atención", MessageBoxButtons.OK, // MessageBoxIcon.Exclamation); // return; //} vwCpventadetMntItem = (VwNotadebitoclidet)gvDetalle.GetFocusedRow(); tipoMantenimientoItem = TipoMantenimiento.Modificar; cpventaMntItemFrm = new NotadebitocliMntItemFrm(tipoMantenimientoItem, vwCpventadetMntItem); cpventaMntItemFrm.ShowDialog(); if (cpventaMntItemFrm.DialogResult == DialogResult.OK) { SumarTotales(); } break; case "btnDelItem": if (gvDetalle.RowCount == 0) { break; } //itemSel = (VwOrdendeventadet)gvDetalle.GetFocusedRow(); //if (itemSel.IdOrdendeventadet > 0 //&& Service.CantidadReferenciasItemOrdendeventa(itemSel.IdOrdendeventadet) > 0) //{ // XtraMessageBox.Show("El item tiene referencia en salida de almacen no puede eliminar.", "Atención", MessageBoxButtons.OK, // MessageBoxIcon.Exclamation); // return; //} if (DialogResult.Yes == XtraMessageBox.Show("¿Desea eliminar el item seleccionado?", "Eliminar producto", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1)) { vwCpventadetMntItem = (VwNotadebitoclidet)gvDetalle.GetFocusedRow(); vwCpventadetMntItem.DataEntityState = DataEntityState.Deleted; if (!gvDetalle.IsFirstRow) { gvDetalle.MovePrev(); } SumarTotales(); ListarCpVentaReferencia(); } break; } }
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 = VwNotadebitoclidetList.Where(w => w.DataEntityState != DataEntityState.Deleted) .OrderByDescending(t => t.Numeroitem) .FirstOrDefault(); var sgtItem = maxItem == null ? 1 : maxItem.Numeroitem + 1; foreach (var item in _vwCpventaimpndList.Where(x => x.Itemseleccionado)) { VwNotadebitoclidet vwNotadebitooclidet = new VwNotadebitoclidet(); vwNotadebitooclidet.Numeroitem = sgtItem; vwNotadebitooclidet.Idarticulo = item.Idarticulo; vwNotadebitooclidet.Codigoarticulo = item.Codigoarticulo; vwNotadebitooclidet.Codigoproveedor = item.Codigoproveedor; vwNotadebitooclidet.Idunidadmedida = item.Idunidadmedida; vwNotadebitooclidet.Idalmacen = item.Idalmacen; vwNotadebitooclidet.Nombremarca = item.Nombremarca; vwNotadebitooclidet.Nombrearticulo = item.Nombrearticulo; vwNotadebitooclidet.Cantidad = item.Cantidadaimportar; vwNotadebitooclidet.Idunidadmedida = item.Idunidadmedida; vwNotadebitooclidet.Abrunidadmedida = item.Abrunidadmedida; vwNotadebitooclidet.Preciounitario = item.Preciounitarioneto; vwNotadebitooclidet.Especificacion = item.Especificacion; vwNotadebitooclidet.Descuento1 = 0; vwNotadebitooclidet.Descuento2 = 0; vwNotadebitooclidet.Descuento3 = 0; vwNotadebitooclidet.Descuento4 = 0; vwNotadebitooclidet.Preciounitarioneto = 0; vwNotadebitooclidet.Importetotal = 0; vwNotadebitooclidet.Idimpuesto = item.Idimpuesto; vwNotadebitooclidet.Idcentrodecosto = item.Idcentrodecosto; vwNotadebitooclidet.Descripcioncentrodecosto = item.Descripcioncentrodecosto; vwNotadebitooclidet.Porcentajepercepcion = 0; vwNotadebitooclidet.Idarea = item.Idarea; vwNotadebitooclidet.Nombrearea = item.Nombrearea; vwNotadebitooclidet.Idproyecto = item.Idproyecto; vwNotadebitooclidet.Nombreproyecto = item.Nombreproyecto; vwNotadebitooclidet.Idcpventadet = item.Idcpventadet; vwNotadebitooclidet.Seriecpventa = item.Seriecpventa; vwNotadebitooclidet.Numerocpventa = item.Numerocpventa; vwNotadebitooclidet.Serienumerocpventa = item.Serienumerocp; vwNotadebitooclidet.Idtipoafectacionigv = item.Idtipoafectacionigv; vwNotadebitooclidet.Gravado = item.Gravado; vwNotadebitooclidet.Exonerado = item.Exonerado; vwNotadebitooclidet.Inafecto = item.Inafecto; vwNotadebitooclidet.Exportacion = item.Exportacion; vwNotadebitooclidet.DataEntityState = DataEntityState.Added; //vwNotacreditoclidet.Createdby = UsuarioAutenticado.UsuarioSel.Idusuario; //vwNotacreditoclidet.Creationdate = DateTime.Now; //vwNotacreditoclidet.Modifiedby = null; //vwNotacreditoclidet.Lastmodified = null; sgtItem++; VwNotadebitoclidetList.Add(vwNotadebitooclidet); } VwCpventaSel = (VwCpventa)gvConsulta.GetFocusedRow(); DialogResult = DialogResult.OK; break; case "btnCancelarItem": DialogResult = DialogResult.Cancel; break; case "btnConsultar": if (!ValidacionDatosConsulta()) { return; } CargarCpVenta(); break; case "btnCerrar": DialogResult = DialogResult.OK; break; } }