TroubleshootingReviewed 2026-09-29

Lookup row or unit configuration cannot be deleted: deactivate it instead

A lookup value that records already use, a system activity type the application writes itself, or a unit configuration that units carry cannot be deleted; untick Active so it stops being offered while existing records keep it.

Messages this explains

  • “System rows cannot be deleted; deactivate instead”
  • “<n> units still use this unit type; deactivate it instead”
  • “That conflicts with existing data.”
  • “A system row: the application writes entries of this type itself. You can rename or deactivate it, but its code stays.”
  • “<n> unit(s) use this configuration; deactivate it instead”
  • “Required for a unit configuration.”
  • “System activities are written by the application and cannot be added, edited or deleted.”

Lookup row or unit configuration cannot be deleted: deactivate it instead

You tried to delete a value from Lookups or a unit configuration (typology) from a project's Structure tab, or to add or change a system activity, and the app refused.

What you see

On Lookups (Settings > Lookups), after confirming Delete <item>? (the dialog already says "A value already used by records cannot be deleted; deactivate it instead."):

  • "System rows cannot be deleted; deactivate instead" for an activity type with the lock icon (stage changes, estimates, bookings and the other entries the application writes itself). The same rows open with the note "A system row: the application writes entries of this type itself. You can rename or deactivate it, but its code stays." and a read-only Code.
  • "<n> units still use this unit type; deactivate it instead" on the Unit types tab, where the count may also read "<n> unit configurations", "<n> pricing plans", "<n> opportunities" or "<n> allottees", whichever the app finds first (with a count of one it reads, for example, "1 unit still use this unit type; deactivate it instead").
  • "That conflicts with existing data." for a contact type, activity type, company type, bank account purpose, parking type or amenity that a record still refers to.
  • On the Unit configurations tab, saving without a unit type: "Required for a unit configuration." under Unit type.

On Structure, in the Unit configurations slide-over (the gear icon): "<n> unit(s) use this configuration; deactivate it instead".

On Activities (an opportunity's Activities tab): "System activities are written by the application and cannot be added, edited or deleted." when the activity you are adding or editing has a system activity type.

Why it happens

Lookups are the dropdown values every form draws on: contact types, lead sources, activity types, company types, bank account purposes, parking types, amenities, unit types and unit configurations. Once a record carries a value, deleting the value would leave that record pointing at nothing, so the app keeps it and asks you to deactivate instead. An inactive row stays on the records that use it but is no longer offered in pickers, which is what "retire this value" means in practice.

  • Unit types are checked explicitly, because units, unit configurations, pricing plans, opportunities (preferred unit type) and allottees (existing unit type) all point at them; the message names what still uses the type.
  • Other lookups are protected by the database itself, which answers "That conflicts with existing data." when something still refers to the row. The check is the same; the wording is just less specific.
  • System activity types (and system activities) are written by the application when a stage changes, an estimate is sent or a booking is made. They are the audit trail of the opportunity, so they cannot be added by hand, edited or deleted, and their codes are fixed because the application looks them up by code. You may rename or deactivate the type.
  • Unit configurations are typologies (Studio, 2 BHK, Office) shared across the organization, named by a unit type and a bedroom count. A configuration that units carry is kept so the units keep their typology; it needs a unit type because the Structure tab offers configurations by the unit type of the tower or floor.

Two things are worth knowing. Lead sources and unit configurations deleted from Lookups are not protected by the database: the delete goes through and the value is silently cleared from the opportunities or units that carried it. And a deleted default value comes back whenever the standard values are restored for the organization, so deactivating a default you do not want is the durable choice.

How to fix it

  1. Deactivate instead of deleting. On Lookups open the row with the pencil icon, untick Active and Save changes. The value disappears from pickers and stays on existing records. This needs the Edit permission on Lookups; in the default roles that is the Administrator, the Finance Lead, the Project Manager, the Sales Manager and the Rehab Officer. Deleting needs the Delete permission on Lookups (the Administrator only). Tick Show inactive to see and reactivate retired rows.
  2. To delete a unit type anyway, first move what uses it: change the unit type on the units (Structure tab, the Edit permission on Towers, Floors & Units), on the unit configurations and pricing plans, and on the opportunities and allottees the message counts. Then delete. In most cases deactivating is quicker and safer.
  3. For a unit configuration, deactivate it from the Unit configurations slide-over on Structure (untick Active, the Edit permission on Towers, Floors & Units) or from the Unit configurations tab on Lookups. Do not delete it from Lookups while units use it, or those units lose their typology.
  4. For "Required for a unit configuration.", pick a Unit type from the list (the organization's unit types) and save again.
  5. For system activities, choose one of your own activity types (a call, a site visit, a meeting) when logging an activity; the system entries are written for you as the opportunity moves.

Related

  • LookupsScreen

    The dropdown lists every form draws on: contact types, lead sources, activity types, company types, bank account purposes, parking types, amenities, unit types and unit configurations.

  • StructureScreen

    Build and maintain a project's towers (wings), floors and units, generate them in bulk, and see every unit's status and designation at a glance.

  • ActivitiesScreen

    The opportunity's timeline: calls, site visits and meetings logged by the team, alongside the locked entries the system writes for stage changes, estimates and bookings.

  • "Already exists" or "listed twice": the name, code, number or line must be uniqueTroubleshooting

    Names, codes and numbers are unique within their scope (the organization, a project, a tower, a set of books) so that records can be told apart, and a line can appear once on a plan, offer or account; rename, reuse the existing record, or remove the duplicate line.

  • "No access" or "You do not have permission": your role lacks a permissionTroubleshooting

    Every screen, button and picker is gated by a permission on a module; your role decides which you hold, so a missing one shows as a No access card, a refused action, a greyed-out button with a hover reason, or a picker that explains which permission it needs.