/// <summary> /// Propósito: Método Update. Actualiza una fila existente en la base de datos. /// </summary> /// <returns>True si tuvo éxito, sino genera una Exception. </returns> /// <remarks> /// Propiedades necesarias para este método: /// <UL> /// <LI>Id_Empresa</LI> /// <LI>Puntaje</LI> /// <LI>Comentario</LI> /// <LI>FK_idPersona</LI> /// <LI>FK_idEmpresa</LI> /// </UL> /// Propiedades actualizadas luego de una llamada exitosa a este método: /// <UL> /// <LI>CodError</LI> /// </UL> /// </remarks> public override bool Actualizar() { string operacion; //SeguridadSoapClient wsseg = new SeguridadSoapClient(); try { //Construir aqui el string a guardar en la bitacora. operacion = "Actualizar cIATCalificacionEmpresa;" + "Id_Empresa:" + Id_Empresa.ToString() + ";" + "Puntaje:" + Puntaje.ToString() + ";" + "Comentario:" + Comentario.ToString() + ";" + "FK_idPersona:" + FK_idPersona.ToString() + ";" + "FK_idEmpresa:" + FK_idEmpresa.ToString() + ";"; //wsseg.BitacoraRegistrarUso(_COD_APLICACIONBitacora, _COD_FUNCIONALIDADBitacora, _COD_SEDEBitacora, eTipoEventoBitacora.UsoFuncionalidad, _ID_USUARIOBitacora,operacion); return(base.Actualizar()); } catch (Exception ex) { //Construir el string a guardar en la bitácora en caso de error. operacion = "Error Actualizar cIATCalificacionEmpresa;" + ex.Message; //wsseg.BitacoraRegistrarUso(_COD_APLICACIONBitacora, _COD_FUNCIONALIDADBitacora, _COD_SEDEBitacora, eTipoEventoBitacora.Error, _ID_USUARIOBitacora,operacion); throw ex; } }
private async void Guardar() { IsEnabled = false; #region Miranda: Guardar Tabla #region Ciclo para Guardar en Persistencia if (Application.Current.Properties.ContainsKey("ContadorAcciones"))//verifico cuantos elementos tiene mi lista para saber cual es la psocion del nuevo elemento a agregar { Elementos = (int.Parse((Application.Current.Properties["ContadorAcciones"]) as string)); } else { Elementos = 0; } Application.Current.Properties["TipoAccion" + Elementos] = TipoAccion.ToString(); Application.Current.Properties["FechaAccion" + Elementos] = FechaAccion.ToString(); Application.Current.Properties["Responsable" + Elementos] = ResponsableAccion.ToString(); Application.Current.Properties["Comentario" + Elementos] = Comentario.ToString(); Application.Current.Properties["ContadorAcciones"] = (Elementos + 1).ToString(); await Application.Current.SavePropertiesAsync(); #endregion int filas; filas = Elementos + 1; HeighListView = 44 * filas;//actalizo mi heigh await Application.Current.MainPage.DisplayAlert("Notificación", "Usted Tiene hasta Ahora: " + filas + " Acciones", "Excelente"); IsEnabled = true; Acciones.Add(new Accion() { Comentario = Comentario.ToString(), FechaAccion = FechaAccion, TipoAccion = TipoAccion.ToString(), Responsable = ResponsableAccion.ToString(), }); AnMeliponarioCajaViewModel.GetInstance().AccionesCaja = Acciones; //asigno los datos de mi lista AnMeliponarioCajaViewModel.GetInstance().HeighListViewB = this.HeighListView; //actualizo el heigh de mi vista anterior await Application.Current.MainPage.Navigation.PopAsync(); #endregion TipoAccion = string.Empty; OrigenColonia = string.Empty; ResponsableAccion = string.Empty; Comentario = string.Empty; IsEnabled = true; }
async void Guardar() { isEnabled = false; if (string.IsNullOrEmpty(FechaEntrega.ToString())) { await Application.Current.MainPage.DisplayAlert("error", "Debe Llenar El Campo Fecha", "Excelente"); IsEnabled = true; return; } var fecha = FechaEntrega.ToString(); #region Limpiar Cache //borrar los datos existentes en persistencia if (Application.Current.Properties.ContainsKey("ContadorAcciones")) { Elementos = int.Parse((Application.Current.Properties["ContadorAcciones"]) as string); } else { Elementos = 0; } for (int j = 0; j < Elementos; j++) //Elementos va a representar el total de elementos o filas existentes en mi persistencia { if (Application.Current.Properties.ContainsKey("TipoAccion" + j)) { Application.Current.Properties.Remove("TipoAccion" + j); } if (Application.Current.Properties.ContainsKey("FechaAccion" + j)) { Application.Current.Properties.Remove("FechaAccion" + j); } if (Application.Current.Properties.ContainsKey("Responsable")) { Application.Current.Properties.Remove("Responsable"); } if (Application.Current.Properties.ContainsKey("Comentario")) { Application.Current.Properties.Remove("Comentario"); } } #endregion #region Ciclo para Guardar en Persistencia mi lista Actual i = 0; //inicio el contador de mis elementos o filas en (0) foreach (var action in AccionesCaja) { Application.Current.Properties["TipoAccion" + i] = action.TipoAccion.ToString(); Application.Current.Properties["FechaAccion" + i] = action.FechaAccion.ToString(); Application.Current.Properties["Responsable" + i] = action.Responsable.ToString(); Application.Current.Properties["Comentario" + i] = action.Comentario.ToString(); i++; Application.Current.Properties["ContadorAcciones"] = i.ToString(); await Application.Current.SavePropertiesAsync(); } #endregion int filas; filas = AccionesCaja.Count; Application.Current.Properties["ContadorAcciones"] = filas.ToString(); //hay que examinar esta linea, es de prueba porque creo que no se actualiza bien el contador en la otra viewmodel cuando se borran todos los registros y esta linea evita eso HeighListViewB = 44 * filas; //actalizo mi heigh ANAccionMeliponarioViewModel.GetInstance().Acciones = this.AccionesCaja; //asigno los datos de mi lista await Application.Current.MainPage.DisplayAlert("Notificación", "Usted Tiene hasta Ahora: " + filas + " Acciones en Persistencia", "Excelente"); await Application.Current.MainPage.DisplayAlert( "Hola", IdCaja + " " + Tipo + " " + Productor + " " + fecha + " " + Comentario + " " + Origen + " " + FloraNueva, "Aceptar"); #region Miranda: Guardar Tabla Cajas #region Ciclo para Guardar en Persistencia if (Application.Current.Properties.ContainsKey("Contadorcajas"))//verifico cuantos elementos tiene mi lista para saber cual es la psocion del nuevo elemento a agregar { ElementosCaja = (int.Parse((Application.Current.Properties["Contadorcajas"]) as string)); } else { ElementosCaja = 0; } if (FloraNueva) { activacaja = "No"; } else { activacaja = "Si"; } string fechaEntrega = FechaEntrega.ToString(); if (string.IsNullOrEmpty(Tipo)) { Tipo = ""; } if (string.IsNullOrEmpty(Comentario))//si no hago esto, se le pasan valores nulos a persistencia { Comentario = ""; } Application.Current.Properties["Idcaja" + ElementosCaja] = IdCaja.ToString(); Application.Current.Properties["Tipocaja" + ElementosCaja] = Tipo.ToString(); Application.Current.Properties["Fechaentregacaja" + ElementosCaja] = (FechaEntrega).ToString(); //revisar, cuando no se selecciona fecha esta linea manda error OJOO Application.Current.Properties["Activacaja" + ElementosCaja] = activacaja.ToString(); Application.Current.Properties["Comentariocaja" + ElementosCaja] = Comentario.ToString(); Application.Current.Properties["Contadorcajas"] = (ElementosCaja + 1).ToString(); await Application.Current.SavePropertiesAsync(); #endregion int filascaja; filascaja = ElementosCaja + 1; HeighListViewCaja = 44 * filascaja;//actalizo mi heigh await Application.Current.MainPage.DisplayAlert("Notificación", "Usted Tiene hasta Ahora: " + filascaja + " Cajas Registradas", "Excelente"); Cajas.Add(new Caja() { Activa = activacaja.ToString(), Comentario = Comentario.ToString(), FechaEntrega = FechaEntrega, IdCaja = IdCaja, //int TipoCaja = Tipo.ToString(), }); ANMeliponarioViewModel.GetInstance().CajasAN = this.Cajas; //asigno los datos de mi lista ANMeliponarioViewModel.GetInstance().HeighListViewAN = this.HeighListViewCaja; //actualizo el heigh de mi vista anterior IsEnabled = true; await Application.Current.MainPage.Navigation.PopAsync(); #endregion }