edit method

void edit()

Implementation

void edit() {
  if (_state == TDataSetState.dsEdit || _state == TDataSetState.dsInsert) {
    return;
  }
  checkBrowseMode();
  if (!canModify) {
    databaseError(SDatasetReadOnly, this);
  }
  if (_recordCount == 0) {
    append();
    return;
  }
  doBeforeEdit();
  if (!tryDoing(internalEdit, onEditError)) return;
  getCalcFields(activeBuffer()!);
  setState(TDataSetState.dsEdit);
  dataEvent(TDataEvent.deRecordChange, 0);
  doAfterEdit();
}