Special Strings





When text needs to be added to the schematic, PCB layout, or draftsman documentation, the text primitive is used. However, it is not uncommon to need a text string for use throughout the entire project documentation (e.g., project name or project number). If using a regular text primitive, the designer must be vigilant about individually updating all related strings. This is not only a hassle and time-consuming but easily prone to mistakes.

Special strings allow textual information to be defined once and used throughout the entire design project so the designer can quickly make updates without reviewing each document for such text.

System and User Defined Special Strings

Altium Designer provides several dozen system-defined special strings throughout the schematic, PCB, and draftsman editors. Though many of the strings allow the user to add a value, there are also many that return a value based on information that Altium Designer has gathered.

For example, many of the system-defined strings provided in the Properties panel (document options view) >> Parameters tab require the user to fill in information such as Company Name, Address, or ApprovedBy.

Examples of system-defined strings that Altium Designer will fill in are Time, ModifiedDate, and DocumentName.

Most system-defined strings can be found in the following places:

  • Schematic editor >> Properties panel (Document Options view) >> Parameters tab
  • Schematic editor >> Place menu >> Text String
  • PCB editor >> Place menu >> String
  • Draftsman editor >> Properties panel (Document Options view) >> Parameters tab
  • Draftsman editor >> Place menu >> Text

Note that system-defined special strings are controlled by Altium Designer and are, therefore, subject to limitations.



The user can also define their own special strings. These can be defined in the symbol library, schematic, PCB, draftsman files, and in project options. It is highly recommended that user-defined special strings are maintained by the project options. By doing so, they are globally available to all editors in Altium Designer.

Identifying Existing Special Strings in the Editors

Altium Designer will display the actual special string name along with a prefix associated to the editor being used.

Schematic or draftsman editors: A special string is identified by the prefix "=" in front of the name (ex: =DocumentName).

PCB editor: a special string is identified by the prefix "." in front of the name (ex: .DocumentName).

Note that the value of some special strings can only be viewed when the relevant output is generated.

Placing Special Strings

Note: Altium Designer uses different terms for text primitives, depending on the editor.

  • In the schematic editor, it is called a "Text String."
  • In the PCB editor, it is called a "String."
  • In the draftsman editor, it is called "Text."

In some cases, the terms "parameter" and "text" are interchanged with each other, depending on the editor being used. From a technical standpoint, a "parameter" is a child primitive of another primitive, such as a document or component. A "text" primitive can be used as needed without any dependency on another primitive.

Regardless of name, the text primitive can be found in the place menu in each of the editors.

To place a special string on any project document, place the text primitive and set its text to one of the special string names provided in its properties panel. Note that the list may consist of system-defined, document-defined, and project-defined special strings.

When the properties panel for a text primitive is opened, the special strings are not listed by default. In the PCB and schematic editors, the list of special strings can be accessed by clicking the drop-down arrow adjacent to the text field.



In the draftsman editor, access the list of special strings by clicking the "x" adjacent to the text field.



Creating User-Defined Special Strings

For schematics:

  • 1. Open the properties panel.
  • 2. Left-click on the blank space of the open schematic document and ensure the properties panel displays "Document Options" in the top-left corner of the panel.
  • 3. Locate and click the tab labeled "Parameters." This will display a number of system-defined special strings.
  • 4. Enter values for any of the strings not automatically defined by Altium Designer. User-defined special strings can be added as well.

Note that special strings defined in a schematic document do not propagate to other schematic documents in the project.



For draftsman:

  • 1. Open the properties panel.
  • 2. Left-click on the blank space of the open draftsman document and ensure the properties panel displays "Document Options" in the top-left corner of the panel.
  • 3. Locate and click the tab labeled "Parameters." This will display a number of system-defined special strings.
  • 4. Enter values for any of the strings not automatically defined by Altium Designer. User-defined special strings can be added as well.

Note the special strings will be available to all pages within the draftsman document but do not propagate to other draftsman documents in the project.



For schematic libraries: Parameters can be displayed in one of two ways.

The first is to enable the visibility icon next to the parameter name in the properties panel of the component. The advantage of using a parameter is that it can be moved about after the component is placed in the schematic.

The second method is to place a text primitive. The text primitive is associated to the parameter through an equation, as seen below. Note that the text primitive is fixed upon placement in the schematic

The use of special strings with text primitives is commonly used for cable design. Refer to the following video for instructions of using text special strings for parameters: Cabling in Altium Designer



For projects: To create global user-defined special strings, navigate to the Project Options dialog box (in the schematic and PCB editors, click on Projects >> Project Options) and select the Parameters tab. Click on the Add... button at the bottom of the dialog box to add new strings and their values.



String Manipulation

Special strings can be concatenated with other special strings or with other fixed text. Use a + sign to concatenate a special string with a fixed string. For example, =ApprovedBy is set to J. Smith and =CurrentDate is automatically populated by the actual date.

                ='This is approved by: ' + ApprovedBy ' on the date of' + CurrentDate

The example above generates the following string:

                This is approved by: J. Smith on the date of 9/8/2023

Special strings can be truncated using Copy( ) and Length( ) functions. The following example will take the string DocumentName, starting with the second character for the length of the name minus the last 5 characters. (DocumentName is SpecString2.SchDoc in this example.)

                =Copy(DocumentName,2,length(DocumentName)-5)

The following is the result of the equation above:

                pecString2.Sc

Sample Project

The project provided below lists all the default special strings available (as of version 23.8.1) and demonstrates them in the context of a project. It consists of schematic sheets, a PCB, and a draftsman document. Note that some of the parameters will only be properly displayed if the project is managed by A365.

Sample project disclaimer: This project is for educational purposes. Some of the methods used within the project to display the values of the special strings are not best practices. For example, each schematic page used special strings that were self-contained. For global text strings, one should use Project Options. Some strings may not display proper values due to software bugs, the project not being managed in A365, or the structure of the project was not applicable to the string.

Download Sample Project
Learn More



Feedback is appreciated.