Naming Rules for Uniface Development Objects

The name of a development object is its unique identifier. When naming development objects, use the allowed syntax for the object name. Avoid using words that are reserved for use within Uniface and your own environment, including the operating system and database.

Note:  Rocket® Uniface is not case sensitive so you should not rely on differences in letter case when creating unique names. For example, myobject, myObject, and MYOBJECT are all considered to be the same. Within Uniface, object names are mapped to uppercase. In JavaScript, (which is case-sensitive), names are mapped to lowercase.

Your DBMSs, networks, and operating systems have their own naming rules which can affect your applications. See your DBMS, network, and operating system documentation for more information.

Naming Rules for Uniface Objects, ProcScript, and Properties
Uniface Object, ProcScript, or Property Max length (in bytes) Notes
Application Shell 32 1, 2, 3, 4, 5, 6
Break Frame 32 1, 2, 3, 4, 7
Component (Service, DSP, USP, Form, Report) 16 1, 2, 3, 4, 5, 6, 8
Modeled Component 16 1, 2, 3, 4, 6, 8
Constant (global or component) 32 1, 2, 4, 6, 7
Counter 16 1, 2, 3
Device Translation Table 16 1, 2, 4
Entity 32 1, 2, 3, 4, 7, 9, 10, 11, 12
Field 32 1, 2, 3, 4, 7
Frame 32
Glyph 16 1, 2, 4
Help text 16 1, 2, 4
Host 15 1, 2, 14
IncludeScript 16 1, 2
Keyboard Translation Table 16 1, 2, 4
Label 32 1, 2, 3, 4, 20
Language 3 1, 2
Library 16 1, 2, 15
Menu 16 1, 2, 4
Menu bar 16 1, 2, 4
Message 16 1, 2, 4
Modeled Entity Interface 32 1, 2, 3, 7, 13
Modeled Field Interface 32 1, 2, 3, 4, 13
Modeled Field Layout 32 1, 2, 3, 4, 13
Modeled Field Syntax 32 1, 2, 3, 4, 13
Model Name 32 1, 2, 3, 4
Operation 16 1, 2, 3, 4, 7
Panel 16 1, 2, 4
Parameter 32 1, 2, 3
Print job model 16 1, 2, 3, 4
ProcScript label 16 1, 2
ProcScript module 16 1, 2, 4, 15
Relationship 32 1, 2, 3, 4
Variable (global, component, or local) 32 1, 2, 3, 4, 16
Version control branch 3 17
Version control release 16 1, 2
Version control version 16 18
(Logical) Widget Name 16 2, 3, 4, 19
  1. Any combination of letters (A—Z, a-z), digits (0—9), and underscores (_) is valid.
  2. Do not use any reserved words. For more information, see Uniface Reserved Words .
  3. The first character must be a letter (A—Z).
  4. Avoid names starting with the letter U to prevent conflict with Uniface objects.
  5. Consider the limits of the target operating system. When you compile an Application Shell or Component, Uniface creates a file with a three-letter extension (for example, component.dsp), so the complete file name must fit within the limits of the OS.
  6. Avoid defining an Application Shell and a Component with the same name.
  7. The name can include, but must not begin with, one dollar symbol ($).
  8. It is not possible to give components of different types the same name. All components share the same namespace, so a server page and a service cannot have the same name. It is recommended that you develop a naming convention that allows you to easily distinguish between them.
  9. Avoid names starting with the letter O to prevent conflict with overflow tables or files.
  10. Each Database Entity maps to a table or file with the same name in the target database. If the entity name is longer than the target database allows, you can use assignments to redirect the entity to a table or file with a shorter name.
  11. Depending on how the fields in the entity are defined, Uniface can create an overflow table or file using the entity name preceded by the letter ‘O’ as its name. The name of the overflow table or file is also restricted to 32 characters, so limit the name of the entity to 31 characters if you expect an overflow table or file to be created.
  12. If the target DBMS or operating system requires table or file names with fewer than 32 characters, you can consider these options:
    • Use assignments to redirect the entity to a table or file with a shorter name.
    • Establish a requirement for shorter entity names in your site’s standards and guidelines.
  13. Avoid using the names of Modeled Entity or Field Interfaces provided by Uniface.
  14. Specify the host either as a host name or as an IP address. Refer to your operating system documentation for the rules for naming the host.
  15. Do not use the library name USYS. You can use the library SYSTEM_LIBRARY for systemwide objects.
  16. Do not use the library USYS for global variables.
  17. Only letters (A—Z, a-z) are valid.
  18. The format of the name must be n.n.n, where each n is any number in the range 0 through 99.
  19. Valid characters are letters and numbers: A-Z, a-z, 0-9
  20. Label names must be unique within the component. The entity name cannot be used to make the name unique.

Unique Names

To ensure that names are unique in a specific context, the names may be concatenated to produce a unique name.

  • Entity names are qualified with the value of the Model suffix. For example: "EntityName.ModelName".
  • Label names can be qualified with the names of the associated Field and Entity. For example: "FieldName.EntityName.ModelName"

For example:

Component: "NameAscii16"
Component Entity: "EntityName32.ModelName32"
Component Field: "FieldName32"
Label: "FieldName32.EntityName32.ModelName32"
Modeled Entity: "EntityName32.ModelName32"
Modeled Field: "FieldName32"

Names of Tables and Files for Entities

DBMS tables and files created for entities are named in UPPERCASE. If this is a problem, you can use assignments to direct entities to the preferred DBMS table or file name.

Names of Other Files

When an operating system file is created by compiling an object, such as an application shell or component, that file is named in lowercase if the operating system supports mixed case.

Related Topics