The Workspace autofill system allows the content on a screen to be automatically updated at runtime based on the current context of a client. Autofill works for all windows that are registered with the workspace, such as the master page window and any popup windows.
For example, if a pump is selected on a display page, the autofill process will update any relevant panes with content that directly relates to the pump, and optionally its parental or child hierarchy.
Autofill works by associating a particular type of content (such as a faceplate or page) with each equipment definition in a project's equipment hierarchy. To align with this, the panes in a workspace can be configured to automatically display matching content types.
When a piece of equipment comes into context, any pane that has autofill enabled will check if the associated content type is the same as the content it is configured to display. If a match is made, the pane will display the content.
To engage Citect SCADA's autofill functionality, you need to perform the following tasks:
The Context Mode determines if the workspace(s) use content from equipment on higher and lower levels of the equipment hierarchy when context changes, rather than just the selected piece of equipment. To specify how autofill behaves for your system, see Specify a Context Mode for a Workspace.
Example
The following example demonstrates how Context Modes and the configuration of equipment and workspaces allows content to be automatically filled on context change.
The equipment hierarchy below features a tank (Tank1) with an input pump and output pump. Assume that Citect SCADA's autofill functionality will present the content associated with this hierarchy on the following arrangement of panes.
To enable autofilling, the following settings are configured.
When you define equipment in a Citect SCADA project, you use the Content property to associate each piece of equipment with a particular type of content. In the case of the example above, the following equipment hierarchy is configured.
Equipment |
Level |
Content |
Content Type |
Description |
---|---|---|---|---|
Plant |
1 |
Overview_L1 |
L1 |
Associated with a level 1 page. |
Plant.Area1 |
2 |
Area_L2 |
L2 |
Associated with a level 2 page. |
Plant.Area1.Tank1 |
3 |
Tank1_L3 |
L3 |
Associated with a level 3 page. |
Plant.Area1.Tank1.InputPump |
4 |
Drive_FP |
FP |
Associated with a drive faceplate. |
Plant.Area1.Tank1.InputPump.InputValve |
5 |
Valve_FP |
FP |
Associated with a valve faceplate. |
Plant.Area1.Tank1.OutputPump |
4 |
Drive_FP |
FP |
Associated with a drive faceplate. |
Plant.Area1.Tank1.OutputPump.OutputValve |
5 |
Valve_FP |
FP |
Associated with a valve faceplate. |
For more information, see Add Equipment Using Equipment Editor.
Panes have two properties that determine the outcome of the autofill process.
The "ContextMustMatch" options allow you to exclude a pane from a Context Mode setting that allows a workspace to autofill at higher and lower levels of the equipment hierarchy. This means only content that is directly associated with the selected equipment will display.
In the case of the example above, the panes are configured as follows:
Pane |
Content Types |
Fill Mode |
Context Update |
---|---|---|---|
Header |
— |
0 = Static |
The pane does not change. |
Content |
L1, L2 |
1 = Autofill |
The pane will automatically display a level 1 or level 2 page. |
Details |
L3, L4 |
1 = Autofill |
The pane will automatically display a level 3 or level 4 page. |
Faceplate |
FP |
3 = AutofillContextMustMatch |
The pane will only display content associated with the equipment if the current context is a direct match. |
FP_Header |
— |
4 = StaticContextMustMatch |
The content of the pane will remain static however, any associations will be updated. |
Information |
— |
4 = StaticContextMustMatch |
The content of the pane will remain static however, any tag associations will be updated. |
Info_Header |
— |
0 = Static |
The pane does not change. |
Navigation |
— |
0 = Static |
The pane does not change. |
TopAlarms |
— |
0 = Static |
The pane does not change. |
For more information, see Configure the Panes on a Master Page.
Note: A page can be classified as a particular content type. This allows the system to know what it is, and to match it with a pane content type configuration. See Assign a Content Type to a Page.
The following demonstrates the expected outcome for the above example based on the three available context modes.
Only the current piece of equipment is considered when panes are matched with content.
In the case of the example above, the following panes will update when the "OutputPump" is in context.
The current piece of equipment is considered when panes are matched with content. When this process is complete, content types associated with higher levels of the equipment hierarchy are matched with any remaining panes.
In the case of the example above, the following panes will update when the "OutputPump" is in context.
Moving up the hierarchy, 'Plant.Area1.Tank1' is considered next. The following panes will update:
Moving up the hierarchy again, 'Plant.Area1' is considered next. The following panes will update:
The current piece of equipment is considered when panes are matched with content. When this process is complete, equipment on higher levels of the hierarchy are matched with any remaining panes, then equipment on lower levels of the hierarchy are considered.
In the case of the example above, the following panes would be updated when 'Plant.Area1' is in context.
As there are still Autofill panes that are not filled (for example, "Details Pane"), the system begins moving up the hierarchy looking for content.
'Plant' is considered next. It only has content “Overview_L1” of content type L1, and the only pane that supports that ("Content") has already been filled. The system will then go back to the original context, 'Tank1', and move down the hierarchy to its first child. Only the first child is ever considered when moving down the hierarchy.
Moving down the hierarchy, 'Plant.Area1.Tank1' is considered next. The following pane will update:
Moving further down the hierarchy to 'Plant.Area1.Tank1.OutputPump', the FillMode setting for the remaining panes takes affect as the current context is no longer a direct match. The following updates will occur:
See Also
Published June 2018