//manejados de caja de texto lectura actual private void txtLecturaActual_TextChanged(object sender, TextChangedEventArgs e) //se activa cuando cambia el texto de la caja { float.TryParse(txtLecturaActual.Text, out float FLecturaActual); //convertir en número decimal la información ingresada en el texto if (FLecturaActual > Obj.Anterior) //si el valor ingresado es mayor a la lectura anterior { Obj.Calcular(); //lama al método calcular de la clase clslectura txtConsumo.Text = Obj.Consumo.ToString(); //mostrar variable consumo en caja de texto txtBasico.Text = Obj.Basico.ToString(); //mostrar variable basico en caja de texto txtExceso.Text = Obj.Exceso.ToString(); //mostrar variable exceso en caja de texto TxtTotal.Text = Obj.Total.ToString(); //mostrar variable total en caja de texto } }
//guardar una nueva lectura public async Task <string> SaveAsync(ClsLectura ObjLectura)//recibe un objeto de la clase clslectura { try { ObjLectura.Estado = "0"; //se guardo por defecto con el estado 0, porque no está sincronizado ObjLectura.Calcular(); //llamada a método calcular await App.Database.SaveLecturaAsync(ObjLectura); // return("ok"); } catch (Exception ex) { return(ex.Message); } }
//manejador del botón guardar private async void ButGuardar_Clicked(object sender, EventArgs e) { try { var res = ""; if (ObjLectura.Observacion == null) { ObjLectura.Observacion = "s/n"; } if (ObjLectura.Image == null) { ObjLectura.StrImagen = ""; } if (!string.IsNullOrWhiteSpace(LblNombres.Text) && !string.IsNullOrWhiteSpace(lblNumero.Text) && !string.IsNullOrWhiteSpace(txtConsumo.Text) //validación de no nulos ) { if (txtCedula.Text.Length == 10 && ObjLectura.Actual >= 0)//validación cedula con 10 caracteres { ObjLectura.Calcular(); if (ObjLectura.Consumo >= 0) { string ObjLecturaGuardada = null; //declaramos una variable tipo string, que se inicializa en nulo if (nuevo) //si nuevo es verdadero, entonces haga la linea 217, caso contrario haga 219 { ObjLecturaGuardada = await manager.SaveAsync(ObjLectura); //llamada a método que inserta un nuevo registro } else { ObjLecturaGuardada = await manager.UpdateAsync(ObjLectura); } if (ObjLecturaGuardada != null) { res = ObjLecturaGuardada;//respuesta positiva } else { res = null;//respuesta negativa si no se realizó correctamente } } else { await DisplayAlert("Mensaje", "El consumo no puede ser negativo", "ok"); res = null; } } else { await DisplayAlert("Mensaje", "Faltan Datos Necesarios", "ok"); res = null; } } else { await DisplayAlert("Mensaje", "Faltan Datos", "ok"); res = null; } if (res != null) { await DisplayAlert("Mensaje", "Datos guardados correctamente", "ok"); ButGuardar.IsEnabled = false; } } catch (Exception ex) { await DisplayAlert("Mensaje", ex.Message, "ok"); } }