SAC processes all database blocks placed on scan when it starts or a
database is loaded. By default, Database Manager prompts you to place
on scan each block you add. SAC stops processing a block or a chain when:
- From the iFIX
WorkSpace, you select an object connected to a primary block and you run
a script that places the block off scan.
- You modify a block
with Database Manager. Modifying a block while SAC is processing that
block's chain places the entire chain off scan. As an option, you can
set up Database Manager to automatically place the modified block and
its chain on scan when you finish editing it. Refer to the section Setting Database Manager
Preferences to learn more about Database Manager options.
- You delete any block
within a chain. Refer to the section Deleting
Blocks to learn more about removing blocks from the process database.
- Statements in Program
blocks, Event Action blocks, or an EDA program place a chain's primary
block off scan.
- You connect the blocks
in a chain incorrectly and SAC cannot scan the chain. Use Database Manager's
Verify command to determine which blocks are improperly chained. Refer
to the section Verifying Databases
to learn about examining your database for errors.
- A Program block finishes
processing its statements and exits, the Program block does not execute
again until the database is reloaded or the block is turned off and placed
back on scan.
- You can place a block
off scan from the Scan Status column displayed in the spreadsheet.
- An operator clicks
an object with a VBA script that places a block off scan. You can quickly
add such a script to an object with the Turn Tag Off Scan button. To use
this button, you must first drag it from the CommandTasks toolbar category
onto a toolbar. To learn how to display toolbar categories and add a button
to a toolbar, refer to the section Customizing Toolbars in the Understanding iFIX manual.
Placing a primary block off scan turns that block's entire chain off
scan. You can put the chain back on scan by:
- Opening an operator
display, selecting an object connected to the chain's primary block, and
running a script that places the block on scan.
- Setting up a Program
or an Event Action block that places the chain back on scan.
- Changing the text
in the Scan status column from OFF to ON.
- Adding or modifying
a block with Database Manager or the iFIX WorkSpace. Depending
on the options selected, both programs can automatically place the block
on scan.
- An operator clicks
an object with a VBA script that places a block on scan. You can quickly
add such a script to an object with the Turn Tag On Scan button. To use
this button, you must first drag it from the CommandTasks toolbar category
onto a toolbar. To learn how to display toolbar categories and add a button
to a toolbar, refer to the section Customizing Toolbars in the Understanding iFIX manual.
Blocks with Long Scan Times
Blocks that have long scan times react differently to on/off scan changes
than blocks that have short scan times. If you change the block's scan
status, it enters a pending state: PON (pending on) or POFF (pending off).
This state indicates that a scan status change was requested and is pending,
but SAC has not placed the block off or on scan. While
a block is in PON, new values are ignored.
Example: Placing Blocks with Long Scan Times On Scan
Assume you have a block with a one hour scan time and you place it on
scan 45 minutes into its scan cycle. The block enters the PON state and
remains there for 15 minutes in order to synchronize it with SAC. Once
synchronized, SAC changes the block's state and places it on scan.
Using the S Parameter
By default, SAC changes a block's scan status shortly after entering
the pending state. However, if SAC was started with the "S"
command line parameter, the block remains in the pending state until SAC
is ready to scan it.
See Also