code: public int edit() throws DBException
      {
          int iErrorCode = super.edit();
          this.getCurrentTable().getRecord().setEditMode(this.getBaseRecord().getEditMode());    // In case the screen has this.
          return iErrorCode;
      }
docs: Lock the current record.
  This method responds differently depending on what open mode the record is in:
  OPEN_DONT_LOCK - A physical lock is not done. This is usually where deadlocks are possible
  (such as screens) and where transactions are in use (and locks are not needed).
  OPEN_LOCK_ON_EDIT - Holds a lock until an update or close. (Update crucial data, or hold records for processing)
  Returns false is someone alreay has a lock on this record.
  OPEN_WAIT_FOR_LOCK - Don't return from edit until you get a lock. (ie., Add to the total).
  Returns false if someone has a hard lock or time runs out.
  @return true if successful, false is lock failed.
  @exception DBException FILE_NOT_OPEN
  @exception DBException INVALID_RECORD - Record not current.