private void uibtndescontabilizar_Click(object sender, EventArgs e) { try { if (!MetodosForm.preguntar("Esta seguro de revertir contabilizar todas las partidas de borrador?")) { return; } manejadorData.descontabilizarPartida(_datasistema.empresa.ID, _datasistema.periodo); MetodosForm.mensajeInfo("Notificacion", "Operacion realizada con exito", _datasistema); } catch (Exception ex) { MetodosForm.mensajeErrorDefault(ex.Message, _datasistema); } }
public void procesarSalida() { try { if (uigridview.FocusedRowHandle < 0) { return; } _datasistema.conectarInventario(); INV_ENCA_AJUS p = (from u in _datasistema.ContextoInventario.INV_ENCA_AJUS where u.ID == int.Parse(UIID.Text) select u).First(); if (p.CD_ESTA_DOCUMENTO == 'D') { if (MetodosForm.preguntar("¿Quiere efectuar la salida?")) { foreach (var item in lista_deta) { try { INV_ARTICULO art = (from u in _datasistema.ContextoInventario.INV_ARTICULO where u.ID == item.ID_ARTICULO select u).First(); if ((from u in _datasistema.ContextoInventario.INV_EXISTENCIA where u.ID_EMPRESA == _datasistema.empresa.ID && u.NM_EJERCICIO == _datasistema.periodo.NM_EJERCICIO && u.NM_PERIODO == _datasistema.periodo.NM_PERIODO && u.ID_BODEGA == p.ID_UBICACION_BODEGA && u.ID_ARTICULO == item.ID_ARTICULO select u).Count() <= 0 && art.FLG_INVENTARIABLE == 'S') { MetodosForm.mensajeInfo("Revisar", "No hay existencias del " + item.DS_NOMBRE + " para despacharlo", _datasistema); return; } INV_EXISTENCIA exist = (from u in _datasistema.ContextoInventario.INV_EXISTENCIA where u.ID_EMPRESA == _datasistema.empresa.ID && u.NM_EJERCICIO == _datasistema.periodo.NM_EJERCICIO && u.NM_PERIODO == _datasistema.periodo.NM_PERIODO && u.ID_BODEGA == p.ID_UBICACION_BODEGA && u.ID_ARTICULO == item.ID_ARTICULO select u).First(); if (exist.NM_CANT_ACTUAL < item.NM_CANTIDAD && art.FLG_INVENTARIABLE == 'S') { MetodosForm.mensajeInfo("Revisar", "No hay suficiente existencia del " + item.DS_NOMBRE + " para despacharlo", _datasistema); return; } //INV_DETA_AJUS req = (from u in _datasistema.ContextoInventario.INV_DETA_AJUS // where u.ID == item.ID_DETA_AJUS // select u).First(); //if (item.NM_CANTIDAD > req.NM_CANTIDAD - req.NM_CANT_DESP && item.FLG_DESP != 'S') //{ // MetodosForm.mensajeInfo("Revisar", "El articulo " + item.DS_NOMBRE + " solo tiene pendiente de despachar " + (req.NM_CANTIDAD - req.NM_CANT_DESP).ToString(), _datasistema); // return; //} } catch (Exception except) { MetodosForm.mensajeErrorDefault(except.Message, _datasistema); return; } } foreach (var item in lista_deta) { if (item.FLG_PROC != 'S') { INV_ARTICULO art = (from u in _datasistema.ContextoInventario.INV_ARTICULO where u.ID == item.ID_ARTICULO select u).First(); int? error = 0; string msj = string.Empty; if (art.FLG_INVENTARIABLE == 'S') { _datasistema.ContextoInventario.PR_INV_PROC_DESPACHO(_datasistema.empresa.ID, p.ID_UBICACION_BODEGA, p.NM_EJERCICIO, p.NM_PERIODO, item.ID_ARTICULO, item.NM_CANTIDAD, p.ID, p.ID_TIPO_DOCUMENTO, p.CD_SERIE + p.CD_NUMERO.ToString(), ref error, ref msj); } if (error == 0) { INV_DETA_AJUS d = (from u in _datasistema.ContextoInventario.INV_DETA_AJUS where u.ID == item.ID select u).First(); d.FLG_PROC = 'S'; _datasistema.ContextoInventario.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues); _datasistema.ContextoInventario.SubmitChanges(); } } } if ((from u in _datasistema.ContextoInventario.INV_DETA_AJUS where u.ID_AJUS == p.ID && u.FLG_PROC != 'S' select u).Count() > 0) { MetodosForm.mensajeErrorDefault("Hay productos que no salieron", _datasistema); return; } p.CD_ESTA_DOCUMENTO = 'A'; _datasistema.ContextoInventario.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues); _datasistema.ContextoInventario.SubmitChanges(); consultar(); MetodosForm.seleccionarFila(uigridview, "ID", p.ID); } } } catch (Exception ex) { MetodosForm.mensajeErrorDefault(ex.Message, _datasistema); } }