About Enforced Prefixes

Enforced prefixes are prefixes that are automatically added to certain user-created IDO and component names when they are created. These prefixes ensure that the IDOs and components have unique names and can be automatically upgraded.

Prefixes are enforced using the Enforce prefix from Access As process default. When this process default is set to 1, prefixes are automatically applied to any new user-created:

  • IDOs
  • Tables
  • Table columns in other (non-user-created) tables
  • Properties on IDOs that extend other non-user-created IDOs

The prefix itself consists of the Access As identifier for the user who is creating these objects.

Note:  For this process default to work correctly, the Access As identifier cannot be blank.

The use of enforced prefixes also prevents users from deleting any of these objects that do not have the correct prefix.

Examples

For these examples, assume that the Enforce prefix from Access As process default is set to 1, and the user's Access As identifier is ABCCorp.

  • User Bob creates a table with the Sql Tables form and names it MyAmazingTable. When the table is actually created, this table's name becomes ABCCorpMyAmazingTable. Any columns that Bob creates for this table do not have the prefix.
  • User Edith adds a new column to the UserNames table and names the column EdithsFriends. When the column is actually created, this column name becomes ABCCorpEdithsFriends. The original table and the other columns do not have the prefix.
  • User Felix decides to use the New Data Maintenance Wizard to create a new IDO, table, and form within the application. When the New Data Maintenance Wizard finishes, the IDO, table, and the form are all created with the ABCCorp prefix.
  • User Patti wants to add a property, EyeColor, to an already existing IDO that extends another IDO that does not use the ABCCorp prefix. When the property is created, the property name becomes ABCCorpEyeColor.
  • User Joe wants to delete the Status column from the UserNames table on the Sql Tables form. Because that table is a Core table with a different Access As identifier, Joe is prevented from carrying out the action.