KB: Display version or revision on SCH, PCB, Draftsman documents
Solution Details
There are multiple ways for slightly varying objectives to display the version or revision on a document, prescribed as a parameter so it can be identified and traced back upon opening or printed out, all of which involve instantiating as a text string called Special String with a reserved character '=' (in case of schematic) followed by the parameter name:
- place the pre-defined Special String such as '=Item', '=ItemAndRevision', and '=ItemRevision' which is resolved only upon outputting the document (e.g. pdf) during a design release
- place the pre-defined Special String such as '=VersionControl_RevNumber' and '=VersionControl_RevNumberShort' on a document to add a unique identifier for this document to the history of the file (i.e. git hash)
- define a custom project parameter like “ProjectVersion” in Projects » Project Options, on Parameters tab, give it a static value, and place a corresponding text string '=ProjectVersion' whose value needs to be changed manually but resolved immediately.
Item Revision
In Altium 365 the project itself is always Work in Progress (WIP) and just shows the latest version, while its snapshots, or items, can be generated as a part of design release, whose Special String such as '=Item', '=ItemAndRevision', and '=ItemRevision' does not resolve immediately and displayed as "...not interpreted" on WIP documents. Revisioning is done using releases so when you run the Project Releaser one or more output items are created (Sources, Assembly & Fabrication). These items are revisioned and can have a lifecycle state, and the Special Strings are resolved to display corresponding values on these documents outputted.
Video of the feature in action:
Version-Controlled Revision
The special string =VersionControl_RevNumber can be placed on a document to add a unique identifier for this document to the history of the file. The hexadecimal hash is re-generated on every commit to the master repository, and can be checked in Storage Manager panel.
There is also a shorter version of this identifier available: '=VersionControl_RevNumberShort'
Custom Project Version
It is also conceivable to display a project parameter that contains a static version value that can be updated manually. Project » Project Options, on Parameter Tab, you can add a parameter like “ProjectVersion” and give it a value, and instantiate a text string '=ProjectVersion' in the document.
This project parameter can be used in all the documents in the project.
When a Project Assembly variant needs another value of the project parameter, then you can add a parameter with the same name to the Variants parameters, this will then overrule the project parameter.
Refer to another article for more explanation on parameters and Special String in general: https://www.altium.com/documentation/knowledge-base/altium-designer/reduce-repetitive-documentation-tasks-with-parameterized-project-template