finalise(aborted: Boolean) updating, protected; vars msg : String; file : DbFile; begin // Just before we finish, provide the user with some backup information. if aborted then msg := "Database Backup Aborted"; else msg := "Database Backup Completed"; endif; if backupManager <> null then // Attempt to explicitly share lock our backupManager instance. // In case the site runs with a very low default lock timeout, // we need to allow enough time for the backup worker process to // release its lock on the shared transient instance. if tryLock(backupManager, Share_Lock, Transaction_Duration, 10000) then msg := msg & backupManager.getDroppedFileText; endif; endif; app.msgBox(msg & Cr, 'Message', MsgBox_Exclamation_Mark_Icon + 65536); backupInProgress := false; backupAborted := aborted; // the unload method ends subscribed notifications, if required unloadForm; end;