protected void UnloadData(Incidencia incidencia) { if (rdcDispositivo.SelectedValue != "") { dispositivo = CntLainsaSci.GetDispositivo(int.Parse(rdcDispositivo.SelectedValue), ctx); } if (rdpFechaPrevista.SelectedDate != null) { incidencia.FechaPrevista = (DateTime)rdpFechaPrevista.SelectedDate; } incidencia.Usuario = usuario; if (CntLainsaSci.FechaNula(incidencia.FechaApertura)) { incidencia.FechaApertura = DateTime.Now; } incidencia.Dispositivo = dispositivo; incidencia.Comentarios = txtComentarios.Text; incidencia.Operativo = !chkOperativo.Checked; dispositivo.Operativo = !chkOperativo.Checked; incidencia.SiguePlan = !chkSiguePlan.Checked; dispositivo.SiguePlan = incidencia.SiguePlan; incidencia.Estado = CntLainsaSci.GetEstado(int.Parse(rdcEstado.SelectedValue), ctx); incidencia.Prioridad = CntLainsaSci.GetPrioridad(int.Parse(rdcPrioridad.SelectedValue), ctx); incidencia.Responsable = CntLainsaSci.GetResponsable(int.Parse(rdcResponsable.SelectedValue), ctx); }
protected void Page_Init(object sender, EventArgs e) { // it gets an appropiate context (LainsaSciCTX -> web.config) ctx = new LainsaSci("LainsaSciCTX"); // verify if a Usuario is logged usuario = CntWinWeb.IsSomeoneLogged(this, ctx); if (usuario == null) { Response.Redirect("Default.aspx"); } else { Session["UsuarioId"] = usuario.UsuarioId; } // // si llega aquí está autorizado permiso = CntLainsaSci.GetPermiso(usuario.GrupoUsuario, "EstadoGrid", ctx); if (permiso == null) { RadNotification1.Text = String.Format("<b>{0}</b><br/>{1}", (string)GetGlobalResourceObject("ResourceLainsaSci", "Warning"), (string)GetGlobalResourceObject("ResourceLainsaSci", "NoPermissionsAssigned")); RadNotification1.Show(); RadAjaxManager1.ResponseScripts.Add("closeWindow();"); } btnAccept.Visible = permiso.Modificar; // Si esto no va antes de EstadoID tendrás problemas. if (Request.QueryString["Caller"] != null) { caller = Request.QueryString["Caller"]; caller = caller.Replace("'", ""); } // Is it a new record or not? if (Request.QueryString["EstadoId"] != null) { estado = CntLainsaSci.GetEstado(int.Parse(Request.QueryString["EstadoId"]), ctx); LoadData(estado); newRecord = false; } // control de skin if (Session["Skin"] != null) { RadSkinManager1.Skin = Session["Skin"].ToString(); } }
protected void RadGrid1_ItemCommand(object sender, GridCommandEventArgs e) { // we only process commands with a datasource (our image buttons) if (e.CommandSource == null) { return; } string typeOfControl = e.CommandSource.GetType().ToString(); if (typeOfControl.Equals("System.Web.UI.WebControls.ImageButton")) { int id = 0; ImageButton imgb = (ImageButton)e.CommandSource; if (imgb.ID != "New" && imgb.ID != "Exit") { id = (int)e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex][e.Item.OwnerTableView.DataKeyNames[0]]; } switch (imgb.ID) { case "Select": break; case "Edit": break; case "Delete": try { Estado estado = CntLainsaSci.GetEstado(id, ctx); CntLainsaSci.CTXEliminar(estado, ctx); CntLainsaSci.CTXGuardar(ctx); RefreshGrid(true); } catch (Exception ex) { ControlDeError(ex); } break; } } }
// lee secuancialmente las incidencias del fichero de terminal y las guarda en la base de datos private void GuardarIncidencias(SqlCeConnection conn, LainsaSci ctx) { IList <TIncidencia> lti = CntSciTerminal.GetTIncidencias(conn); Incidencia incidencia; foreach (TIncidencia ti in lti) { // no ha sufrido cambios if (ti.Abm == 0) { continue; } switch (ti.Abm) { case 1: // alta // comprobar que no se ha dado de alta previamente // es el caso de recarga del mismo fichero Incidencia inci = (from i in ctx.Incidencias where i.Dispositivo.DispositivoId == ti.TDispositivo.DispositivoId && i.FechaApertura == ti.FechaApertura && i.Comentarios == ti.Comentarios select i).FirstOrDefault <Incidencia>(); if (inci != null) { break; } incidencia = new Incidencia(); incidencia.FechaApertura = ti.FechaApertura; incidencia.FechaPrevista = ti.FechaPrevista; incidencia.FechaCierre = ti.FechaCierre; incidencia.Dispositivo = CntLainsaSci.GetDispositivo(ti.TDispositivo.DispositivoId, ctx); if (ti.TEstado != null) { incidencia.Estado = CntLainsaSci.GetEstado(ti.TEstado.EstadoId, ctx); } if (ti.TPrioridad != null) { incidencia.Prioridad = CntLainsaSci.GetPrioridad(ti.TPrioridad.PrioridadId, ctx); } if (ti.TResponsable != null) { incidencia.Responsable = CntLainsaSci.GetResponsable(ti.TResponsable.ResponsableId, ctx); } incidencia.Usuario = CntLainsaSci.GetUsuario(ti.TUsuario.UsuarioId, ctx); incidencia.Comentarios = ti.Comentarios; incidencia.Operativo = ti.Operativo; incidencia.SiguePlan = true; // hasta que no se cambie el programa de terminal para que contemple ese campo. ctx.Add(incidencia); ctx.SaveChanges(); // Si es un alta hay que verificar que las evoluciones asociadas se cree contra // la incidencia de servidor correcta. GuardarIncidenciaEvolucions(ti, incidencia, conn, ctx); break; case 2: incidencia = CntLainsaSci.GetIncidencia(ti.IncidenciaId, ctx); if (incidencia != null) { ctx.Delete(incidencia.IncidenciaEvolucions); ctx.SaveChanges(); ctx.Delete(incidencia); ctx.SaveChanges(); } break; case 3: incidencia = CntLainsaSci.GetIncidencia(ti.IncidenciaId, ctx); incidencia.FechaApertura = ti.FechaApertura; incidencia.FechaPrevista = ti.FechaPrevista; incidencia.FechaCierre = ti.FechaCierre; incidencia.Dispositivo = CntLainsaSci.GetDispositivo(ti.TDispositivo.DispositivoId, ctx); if (ti.TEstado != null) { incidencia.Estado = CntLainsaSci.GetEstado(ti.TEstado.EstadoId, ctx); } if (ti.TPrioridad != null) { incidencia.Prioridad = CntLainsaSci.GetPrioridad(ti.TPrioridad.PrioridadId, ctx); } if (ti.TResponsable != null) { incidencia.Responsable = CntLainsaSci.GetResponsable(ti.TResponsable.ResponsableId, ctx); } incidencia.Usuario = CntLainsaSci.GetUsuario(ti.TUsuario.UsuarioId, ctx); incidencia.Comentarios = ti.Comentarios; incidencia.Operativo = ti.Operativo; break; default: break; } ctx.SaveChanges(); } }