Undelete Room
Previous Topic  Next Topic 

This command, available by right-clicking the Delete button on the Rooms List screen, allows you to restore a deleted room and its contents. It does this by using the original relationships* between related records (such as objects in a room) and special encoding that marked those records as a "deletion set" at the time of deletion. 

If you are using the Undelete command immediately, after accidentally deleting a room, the command will be simple to use and you can simply review the "Procedure" further below. The following discussion may apply if you are undeleting something where substantial project changes occurred afterward

Limitations

Since subsequent changes to the database (after the room was deleted) may have changed data from what was there at the time of the deletion, there are some limitations on what this command can do:

  • This option is available only until you run the File Cleanup utility, which purges all deleted records and refreshes the data indexes. 
  • This is only available for rooms that were deleted under FF&EZ version 4.03.30 or later, since the ability to mark a "set" of database items as part of a deletion was introduced at that time. Only eligible rooms will appear in the list of potential rooms to restore.
  • You can only use the Undelete Room command to restore a project room that was deleted using the Delete command on the Rooms List. 
  • If the restored room's ID conflicts with that used for a room that was added to that area, you will need to change the Room ID after the room is restored.
  • This utility will not restore objects that were later deleted separately, since there are other rules that must be followed in undeleting an object. The utility will check for objects that are missing from the original deletion set and give you a list of these. You can then try to undelete those objects first. If you don't, their usages will be missing from the restored rooms. Objects that were deleted before the room was deleted will be ignored (although they may be individually restored later).
  • Since the restoration uses the original relationships to the objects that were placed in the restored rooms, objects and specifications that were changed after the deletion will appear in the restored rooms in their current form (including changed Tags and Spec IDs). This may not be what you want, so it's important to review the restored room contents carefully. 
  • We recommend that you restore a room as soon as possible after an accidental deletion, to avoid the problems associated with the above points. Waiting weeks or months increases the need to carefully review the results, especially if more than one person is working on a project.

Procedure

  1. Display the Rooms List screen.
  2. Right-click on the Delete button.
  3. The "Undelete Room" pop-up will appear, showing rooms that are eligible to be restored.
  4. Click on the desired room to enable the other buttons on the screen.
  5. If you are restoring a room that was not deleted very recently, we strongly recommend that you use the "Integrity Check" tool to verify that all the objects in the room to be recalled still exist in the database. If it reports that none are missing, go to step 7. 
  6. If the integrity check finds that objects in the deleted room(s) no longer exist, it will display a preview report listing them, the rooms they were in and the original quantity. Print this report or save it to a PDF, and then cancel the Undelete Area screen. Display the Objects List screen and use the Undelete Object tool to restore the missing objects (if possible). If you can't, return to the Undelete Area command and proceed (step 7). After restoring the room, you will need to create the missing objects and place them in the appropriate rooms.
  7. Click on the Restore button. This will restore the room and its rooms, including all eligible object usages in the rooms. It will leave you in "editing" mode in case the restored Room ID has a conflict and you need to change it. Otherwise, click Save or Revert to exit (the restored data is already saved).

*Databases like FF&EZ use a hidden "key" (a unique numeric ID) to tie the pieces of the data together. This is why you can change how a Vendor ID is spelled and have it instantly change everywhere else in the system—the "key" that points to the vendor never changes unless you select a different vendor.