This guide walks you through applying dynamic animations to display elements, enabling real-time visual changes based on tag values, expressions, and user interactions. Dynamics transform static graphics into interactive, data-driven visualizations.
Table of Contents | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Product Symbol Library:
Library.dbsln
file\Users\Public\Public Documents\<productName>\Templates
Solution Local Library:
The first five symbols in the library have wizards for quick customization:
These wizards guide you through appearance options (horizontal/vertical, color schemes, etc.) before placing the symbol.
Double-click any symbol to open configuration:
Property | Description |
---|---|
Is Linked With Library | Updates when library symbol changes |
Linked Size (Proportional) | Maintains size ratio with library |
Internal Dynamics | Lists animations within symbol |
Symbol Links | Parameter mappings for this instance |
Copy and Paste | Transfer configurations between symbols |
Apply | Save changes (auto-applies on close) |
Symbol parameters use simple binding:
Common wizard symbol parameters:
#STATE:Client.SimulationDigital
#VALUE:Tag.PlaceHolder.DoubleTag
#MIN:0
#MAX:100
:
becomes parameter name:
is default valueCreate a simple tank with level indicator:
#TagValue:Client.Second
#Min:0
#Max:100
#TagValue:Client.Second
Automatically use symbols when dropping tags:
Create symbols that bind to DataTemplate members:
For DataTemplate "PID" with Setpoint, PV, CV:
Expression: #TagValue:(Tag.Loop1).Setpoint
Expression: #TagValue:(Tag.Loop1).PV
Expression: #TagValue:(Tag.Loop1).CV
Using parentheses replaces only the tag name, keeping member references.
Best practice for portable symbols:
#TagName:Tag.PlaceHolder.IntegerTag
#TagName:(Tag.PlaceHolder.DoubleTag).Quality
Benefits:
Note: After customization, wizard no longer applies to that symbol.
To modify without library link:
Navigate to Displays → Symbols to:
Save as Image:
Export to Library:
Library.dbsln
Delete Symbols:
Reuse symbols from "In Solution" instead of Library
?Link to library for consistent updates
?Use parameters instead of fixed values
?Test symbols with PlaceHolder tags first
Create folders to organize symbols
?Use descriptive names for symbols and parameters
?Document complex symbol behavior
?Version control important symbols
Keep symbols simple - combine for complex displays
?Expose key parameters only
?Use consistent parameter naming (#State, #Value)
?Provide defaults for all parameters
Rectangle with:
- FillColor: #State:0 (0=Gray, 1=Green, 2=Red)
- Visibility: #Enable:1
- Action: OpenPopup(#DetailDisplay:"Details")
TextBox group with:
- Value: #Tag:Tag.PlaceHolder.DoubleTag
- Format: #Format:"N2"
- Units: #Units:"°C"
Button with:
- Action: SetValue
- Target: #ControlTag:Tag.Command
- Value: #CommandValue:1
- Security: #Permission:"Operator"
Symbol not updating in displays
Parameters not working
#Name:Default
Symbol appears broken
Can't edit wizard symbol
This guide covered creating, configuring, and managing Symbols in your solution, from using pre-built library symbols to creating custom reusable components with dynamic behavior and parameter-based configuration.
Page Tree | ||||
---|---|---|---|---|
|