Deleting entities - what happens?

What happens to data if things are deleted?

HelpMaster allows the deletion of system codes, entities and other information via the interface. 

The following statements provide a basic framework for when things are deleted via the HelpMaster interface.

  • If the thing being deleted does link to other things, then it is not deleted - it is only marked as deleted, however…
  • If the thing being deleted does not link to other things, then it will be deleted outright from the database

Deleting system codes, issue codes and other drop-down box codes

Whenever a job, client, asset, site or anything else in HelpMaster links to a system code, and that system code is then deleted, the entity that was linking to it will still point to that system code.  Behind the scenes, the system code is only marked as deleted - it isn’t actually completely deleted from the database.  This means that the system code will not appear in any of the drop-down boxes, or other pick-lists, so it cannot be used again for new entities.

However, any existing entities that are linked to it will display the code when they are viewed.

There is an exception to this rule.  If the system code has never been linked to anything, then it will be permanently deleted from the database.

Deleting clients, assets, sites, knowledge base articles

The same principle applies also to other entities like clients, assets, sites etc.

If these things are linked to other entities, or to jobs, they won’t actually be deleted outright from the database if you try to delete them - they will only marked as deleted. This means that if you open a job that was logged by or for a deleted client, you’ll still the client as part of the job albeit with a line-strike through it indicating that it has been soft deleted.

Deleted clients, assets, sites etc will not be displayed in any of the search screens. Client and staff deletion requires special consideration as Staff generally have access to login to both the Desktop app and web portal. So if a Staff user is deleted they will no longer be able to login unless they are changed to a client user who is still able to login via the web portal if granted access.

Un-deleting

If a system code, or entity has been deleted and they were participating in a database relationship, they are only soft deleted - that is, the actual record still exists in the database - it is just marked as being deleted.  This delete mark is implemented as a boolean bit field in the database for each entity type.  Deleted system codes, and other entities (clients, sites, assets etc) can be re-activated by changing the database field IsDeleted from a 1 to a 0. System codes are located in a table called tblSystemCodes. Issues are located in tblIssues, and other entities such as client, assets and sites can be found in tblClient, tblAssets and tblSite respectively.

Please note that direct manipulation of the HelpMaster database should only be performed by an experience database administrator. Please make a backup of your database before performing any work of this type.

See Also

Deleting Assets

Deleting Sites

Deleting Clients

Deleting Knowledge Base Articles

Deleting an Action

Deleting a job (single job)

Deleting / Purging jobs (multiple jobs)