public ActionResult RefreshData()
        {
            try { this.GastosProgramadosProxy = new ADESCOMBUSINESS.Areas.Egresos.Methods.GastosProgramadosBusiness((ADESCOMBUSINESS.DataAccess.Models.LoginRS)Session["InfoUser"]); }
            catch (Exception ex) { return(RedirectToAction("SesionExpired", "Inicio", new { Area = "", Mensaje = ex.Message })); }

            List <ADESCOMBUSINESS.Areas.Egresos.Models.VwEGR_GastosProgramados> Lista = new List <ADESCOMBUSINESS.Areas.Egresos.Models.VwEGR_GastosProgramados>();

            Lista = GastosProgramadosProxy.GetActive(0);
            return(View(Lista));
        }
        public ActionResult Crear(ADESCOMBUSINESS.Areas.Egresos.Models.EGR_GastosProgramados Registro)
        {
            try { this.GastosProgramadosProxy = new ADESCOMBUSINESS.Areas.Egresos.Methods.GastosProgramadosBusiness((ADESCOMBUSINESS.DataAccess.Models.LoginRS)Session["InfoUser"]); } catch (Exception ex) { return(RedirectToAction("SesionExpired", "Inicio", new { Area = "", Mensaje = ex.Message })); }

            if (Registro.TipoGasto_ID <= 0)
            {
                ModelState.AddModelError("TipoGasto_ID", "Campo Requerido");
            }

            if (String.IsNullOrEmpty(Registro.GPR_Descripcion))
            {
                ModelState.AddModelError("GPR_Descripcion", "Campo Requerido");
            }

            if (Registro.GPR_Monto <= 0)
            {
                ModelState.AddModelError("GPR_Monto", "Campo Requerido");
            }

            if (Registro.Cuenta_ID <= 0)
            {
                ModelState.AddModelError("Cuenta_ID", "Campo Requerido");
            }

            if (Registro.GPR_Recurrente == false)
            {
                if (Registro.GPR_FechaAplicacion == null || Registro.GPR_FechaAplicacion.Date <= DateTime.Now.Date)
                {
                    ModelState.AddModelError("GPR_FechaAplicacion", "La fecha debe ser mayor o igual a " + DateTime.Now.AddDays(1).ToString("dd-MMM-yyyy"));
                }
            }

            if (ModelState.IsValid)
            {
                try
                {
                    Registro.BS_Activo       = true;
                    OBJEGR_GastosProgramados = new ADESCOMBUSINESS.Areas.Egresos.Models.EGR_GastosProgramados();
                    OBJEGR_GastosProgramados = GastosProgramadosProxy.Crear(Registro);
                    if (OBJEGR_GastosProgramados.GastoProgramado_ID == 0)
                    {
                        return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                    }
                    ViewBag.Error = "OK";
                }
                catch (Exception ex)
                {
                    ViewBag.Error = ex.Message;
                }
            }

            ViewBag.TipoGasto_ID = new SelectList(GetTipoGastos(0), "TipoGasto_ID", "TGA_Descripcion", OBJEGR_GastosProgramados.TipoGasto_ID);
            ViewBag.Cuenta_ID    = new SelectList(GetCuentas(0), "Cuenta_ID", "CTA_Alias", OBJEGR_GastosProgramados.Cuenta_ID);
            return(View(Registro));
        }
        public ActionResult Editar(int GastoProgramado_ID)
        {
            try { this.GastosProgramadosProxy = new ADESCOMBUSINESS.Areas.Egresos.Methods.GastosProgramadosBusiness((ADESCOMBUSINESS.DataAccess.Models.LoginRS)Session["InfoUser"]); } catch (Exception ex) { return(RedirectToAction("SesionExpired", "Inicio", new { Area = "", Mensaje = ex.Message })); }
            OBJEGR_GastosProgramados = GastosProgramadosProxy.GetByID(GastoProgramado_ID);

            if (OBJEGR_GastosProgramados == null)
            {
                return(HttpNotFound());
            }

            ViewBag.TipoGasto_ID = new SelectList(GetTipoGastos(0), "TipoGasto_ID", "TGA_Descripcion", OBJEGR_GastosProgramados.TipoGasto_ID);
            ViewBag.Cuenta_ID    = new SelectList(GetCuentas(0), "Cuenta_ID", "CTA_Alias", OBJEGR_GastosProgramados.Cuenta_ID);

            if (OBJEGR_GastosProgramados.GPR_Aplicado)
            {
                return(View("Detalle", OBJEGR_GastosProgramados));
            }
            else
            {
                return(View(OBJEGR_GastosProgramados));
            }
        }