private void btnCantidad() { if (dgvGrilla.CurrentRow == null) { MostrarMensajeAdvertencia(Mensajes.SeleccionarItem); return; } var guid = dgvGrilla.CurrentRow.Cells["DETP_GUID"].Value.ToString(); DETALLE_PRESUPUESTO FilaSeleccionada = LineasEnGrilla.First(x => x.DETP_GUID == guid); var ingresaMedianteCodBarra = (bool)dgvGrilla.CurrentRow.Cells["INGRESAMEDIANTECODBARRA"].Value; if (FilaSeleccionada == null) return; TipoUnidad = Constantes.Unidad; if (FilaSeleccionada.PRO_ID != null) { if (FilaSeleccionada.PRODUCTO != null && FilaSeleccionada.PRODUCTO.PRO_GRANEL == false) { if (FilaSeleccionada.PRODUCTO.PRO_CODBALANZA != null) { MostrarMensajeInformativo("No se puede modificar la cantidad de un producto balanza o a un producto sin codigo"); return; } } TipoUnidad = FilaSeleccionada.PRODUCTO.TIPO_UNIDAD.TUNI_DESCRIPCION; } if (FilaSeleccionada.CAT_ID != null) { MostrarMensajeInformativo("No se puede modificar la cantidad a un producto sin codigo"); return; } //controlo si es envases if (FilaSeleccionada.ENV_ID != null) { //MostrarMensajeAdvertencia("No se puede modificar la cantidad de un Envase."); //return; } frmCANTIDAD frm = new frmCANTIDAD(TipoUnidad, "frmPRESUPUESTO", FilaSeleccionada.DETP_CANTIDAD); DialogResult dr = frm.ShowDialog(); if (dr == DialogResult.OK) { //controla la cantidad //if (!ControlaCantidad(FilaSeleccionada.PRODUCTO, cantidadProd)) //{ // MostrarMensajeAdvertencia(Mensajes.ProductoSinStock); // return; //} var totalvta = Convert.ToDecimal(txtTotal.Text); var precioVta = FilaSeleccionada.DETP_PRECIOUNIDAD; if (!ControlaSumaVenta(precioVta, cantidadProd, totalvta)) return; FilaSeleccionada.DETP_CANTIDAD = decimal.Round(cantidadProd, 3); FilaSeleccionada.DETP_TOTAL = decimal.Round(FilaSeleccionada.DETP_PRECIOUNIDAD * FilaSeleccionada.DETP_TOTAL, 3); LineasEnGrilla.First(x => x.DETP_GUID == guid).DETP_CANTIDAD = Convert.ToDecimal(FilaSeleccionada.DETP_CANTIDAD.ToString("0.000")); LineasEnGrilla.First(x => x.DETP_GUID == guid).DETP_TOTAL = Convert.ToDecimal(FilaSeleccionada.DETP_TOTAL.ToString("0.000")); LlenaLabelTotales(); } txtCodigoBarra.Text = string.Empty; txtCodigoBarra.Focus(); }
private void btnCantidad() { if (dgvGrilla.CurrentRow == null) { MostrarMensajeAdvertencia(Mensajes.SeleccionarItem); return; } var guid = dgvGrilla.CurrentRow.Cells["DDEV_GUID"].Value.ToString(); DETALLE_DEVOLUCION FilaSeleccionada = LineasEnGrilla.First(x => x.DDEV_GUID == guid); if (FilaSeleccionada == null) return; var cantadevolver = FilaSeleccionada.DDEV_CANTIDADDEVUELTA + FilaSeleccionada.DDEV_CANTIDADADEVOLVER; var cantidad = FilaSeleccionada.DDEV_CANTIDAD; if (cantidad <= cantadevolver) { MostrarMensajeInformativo("El producto seleccionado supera o ya fue devuelta su totalidad en dicha compra."); cantidadProd = 0; return; } TipoUnidad = Constantes.Unidad; if (FilaSeleccionada.PRO_ID != null) { if (FilaSeleccionada.PRODUCTO.PRO_CODBALANZA != null) { MostrarMensajeInformativo("Al ser un producto balanza se puede devolver la totalidad del producto."); FilaSeleccionada.DDEV_CANTIDADADEVOLVER = FilaSeleccionada.DDEV_CANTIDAD; FilaSeleccionada.DDEV_TOTAL = FilaSeleccionada.DDEV_TOTAL; LlenaLabelTotales(); return; } TipoUnidad = FilaSeleccionada.PRODUCTO.TIPO_UNIDAD.TUNI_DESCRIPCION; } if (FilaSeleccionada.CAT_ID != null) { MostrarMensajeInformativo("Al ser un producto balanza o sin codigo solo se puede devolver la totalidad del producto."); FilaSeleccionada.DDEV_CANTIDADADEVOLVER = FilaSeleccionada.DDEV_CANTIDAD; FilaSeleccionada.DDEV_TOTAL = FilaSeleccionada.DDEV_TOTAL; LlenaLabelTotales(); return; } //controlo si es envases if (FilaSeleccionada.ENV_ID != null) { //MostrarMensajeAdvertencia("No se puede modificar la cantidad de un Envase."); //return; } frmCANTIDAD frm = new frmCANTIDAD(TipoUnidad, "frmDEVOLUCION", FilaSeleccionada.DDEV_CANTIDADADEVOLVER); DialogResult dr = frm.ShowDialog(); if (dr == DialogResult.OK) { cantadevolver = FilaSeleccionada.DDEV_CANTIDADDEVUELTA + cantidadProd; //cantidad = Convert.ToDecimal(FilaSeleccionada["Cantidad"]); if (cantidad < (cantadevolver)) { MostrarMensajeInformativo("El producto seleccionado supera o ya fue devuelta su totalidad en dicha compra."); cantidadProd = 0; return; } LineasEnGrilla.First(x => x.DDEV_GUID == guid).DDEV_CANTIDADADEVOLVER = Convert.ToDecimal(((decimal)cantadevolver).ToString("0.000")); LineasEnGrilla.First(x => x.DDEV_GUID == guid).DDEV_TOTAL = Convert.ToDecimal(FilaSeleccionada.DDEV_TOTAL.ToString("0.000")); LlenaLabelTotales(); } //txtNroTicket.Text = ""; //txtNroTicket.Focus(); }
public static frmCANTIDAD ObtenerInstancia(string tUnidad, string frm, decimal cant) { if (_instancia == null) _instancia = new frmCANTIDAD(tUnidad, frm, cant); if (_instancia.IsDisposed) _instancia = new frmCANTIDAD(tUnidad, frm, cant); return _instancia; }