Statement Execution Order; Boot/Startup Sequence And Program Execution Order - Universal Devices ISY-994i User Manual

Home automation
Hide thumbs Also See for ISY-994i:
Table of Contents

Advertisement

9.5.4 Statement Execution Order

Within the Then or Else clause of a program, statements are executed from top to bottom in
the order in which they occur. When a statement calls another program, the called program
begins executing, and the calling program immediately continues execution with the next
statement in sequence--it does not wait for the called program to complete before
continuing.
A series of statements within a Then clause (or within an Else clause), up to the next Wait
or Repeat statement, are atomic. In other words, all such statements are executed before
the conditions of the program are retested. The program's conditions are reevaluated each
time a Wait or Repeat statement is encountered, and at the end of each iteration of a Repeat
loop.
What this means is that if a program's Then clause changes a condition which causes the
program's overall condition to become false (or if the program's Else clause changes a
condition which causes the program's overall condition to become true), the current
atomic statement group will complete, and at that point execution will transfer from the
Then clause (or the Else clause) to the Else clause (or the Then clause).
Therefore, if a Then clause (or an Else clause) contains no Wait or Repeat statements, the
entire clause is atomic, and will complete before the program's conditions are reevaluated.

9.5.5 Boot/Startup Sequence and Program Execution Order

When the ISY boots, the True/False state of all schedule programs is determined, and any
schedules which require catching up, are set to run following initialization. If Catch up
schedules at Restart is enabled, schedules are set to run from the beginning of the day;
otherwise schedules are set to run only for the specified Missed Schedule Grace Period.
Note that prior to firmware 2.6.4, the Missed Schedule Grace Period applied only to Time is
schedules, not From/To or From/For schedules; as of firmware 2.6.4 it applies to all
schedules.
Next, ISY queries all devices and determines their status. During this process, the
True/False state is determined for programs and folders which have conditions, and any
programs which require running are set to run following initialization. Folders with no
conditions are set to True so as not to prevent programs within them from running, since
without conditions a folder's state will never be changed. Programs which have no
conditions are initialized to False, just as a variable would be, since programs, which are
often used as flags, may have their state changed by other programs or directly from the
Program Summary tab, even though they have no conditions.
Finally, programs which are set to Run at Startup are set to run following initialization.
Note that prior to firmware 2.6.6, a program which was set to Run at Startup would
Page | 183

Advertisement

Table of Contents
loading

Related Products for Universal Devices ISY-994i

Table of Contents