update method

Future update()

Implementation

Future update() async {
  if (_serverSide) {
    throw 'La tabla ha sido instanciada por el api de lado del servidor, no puede ejecutar el metodo update';
  }
  if (_pause_assure) return;

  try {
    valid();
  } catch (e) {
    throw error(e.toString());
  }

  //  pausa el enviado de cache
  _pause_assure = true;

  //  cancela cualquier envio pendiente
  cancelEventByName('send-assure-data');

  //  objtiene los cambios
  Map<String, dynamic> data = {};
  if (!changes(data)) return;
  data['key'] = id.original;
  String? error_msg;
  try {
    var r = await _request('/$module/$alias/update', data: data);
    resetTo(value: r);
    for (var list in onUpdateRequestLists) {
      list.request();
    }
  } catch (e) {
    error_msg = e.toString().split(':').last;
  }

  //  recibe los resultados
  _pause_assure = false;
  if (error_msg != null) {
    error(error_msg);
    throw error_msg;
  }
  return;
}