예제 #1
0
        public ActionResult Edit(int?id, [Bind(Include = "obj_Id, obj_Pantalla,obj_Referencia,obj_UsuarioCrea,obj_FechaCrea,obj_UsuarioModifica,obj_FechaModifica,obj_Estado")] tbObjeto tbObjeto)
        {
            //if (db.tbObjeto.Any(a => a.obj_Pantalla == tbObjeto.obj_Pantalla))
            //{
            //    ModelState.AddModelError("", "Ya existe esta pantalla, Favor registrar otra");
            //}
            if (db.tbObjeto.Any(a => a.obj_Pantalla == tbObjeto.obj_Pantalla && a.obj_Id != tbObjeto.obj_Id))
            {
                ModelState.AddModelError("", "Ya existe una pantalla con el mismo nombre");
            }
            if (ModelState.IsValid)
            {
                try
                {
                    tbObjeto             obj  = db.tbObjeto.Find(id);
                    IEnumerable <object> list = null;
                    var MsjError = "";
                    list = db.UDP_Acce_tbObjeto_Update(tbObjeto.obj_Id,
                                                       tbObjeto.obj_Pantalla,
                                                       tbObjeto.obj_Referencia
                                                       , tbObjeto.obj_UsuarioCrea
                                                       , tbObjeto.obj_FechaCrea
                                                       , Function.GetUser()
                                                       , Function.DatetimeNow());
                    foreach (UDP_Acce_tbObjeto_Update_Result obje in list)
                    {
                        MsjError = obje.MensajeError;
                    }

                    if (MsjError.StartsWith("-1"))
                    {
                        Function.InsertBitacoraErrores("Objeto/Edit", MsjError, "Edit");
                        ModelState.AddModelError("", "No se pudo actualizar el registro, favor contacte al administrador.");
                        ViewBag.obj_UsuarioModifica = new SelectList(db.tbUsuario, "usu_Id", "usu_NombreUsuario", tbObjeto.obj_UsuarioModifica);
                        ViewBag.obj_UsuarioCrea     = new SelectList(db.tbUsuario, "usu_Id", "usu_NombreUsuario", tbObjeto.obj_UsuarioCrea);
                        return(View(tbObjeto));
                    }
                    else
                    {
                        return(RedirectToAction("Index"));
                    }
                }
                catch (Exception Ex)
                {
                    Function.InsertBitacoraErrores("Objeto/Create", Ex.Message.ToString(), "Create");
                    ModelState.AddModelError("", "No se pudo actualizar el registro, favor contacte al administrador.");
                    ViewBag.obj_UsuarioModifica = new SelectList(db.tbUsuario, "usu_Id", "usu_NombreUsuario", tbObjeto.obj_UsuarioModifica);
                    ViewBag.obj_UsuarioCrea     = new SelectList(db.tbUsuario, "usu_Id", "usu_NombreUsuario", tbObjeto.obj_UsuarioCrea);
                    return(View(tbObjeto));
                }
            }

            ViewBag.obj_UsuarioModifica = new SelectList(db.tbUsuario, "usu_Id", "usu_NombreUsuario", tbObjeto.obj_UsuarioModifica);
            ViewBag.obj_UsuarioCrea     = new SelectList(db.tbUsuario, "usu_Id", "usu_NombreUsuario", tbObjeto.obj_UsuarioCrea);
            return(View(tbObjeto));
        }