Variable inheritance

When a variable is needed at submission time, it is first sought in the task itself. If it is not found in the task, it is sought from the task’s parent and so on, up through the node levels until found. For any node, there are two places to look for variables. The user-defined variables are looked for first, and then any generated variables.

At present, an undefined variable causes a task to abort immediately, without submitting a job. ecflow_ui will display this failure in the info-window.

Listing 80 Example of Variable inheritance
suite x
   edit TOPLEVEL 10
   edit MIDDLE 10
   edit LOWER 10
   family f
      edit MIDDLE 20
      task t
         edit LOWER abc
      task t2
   endfamily
   family f2
      edit TOPLEVEL 40
      task z
   endfamily
endsuite

This would produce the following results:

Command

task t

task t2

task z

echo TOPLEVEL %TOPLEVEL%

10

10

40

echo MIDDLE %MIDDLE%

20

20

10

echo LOWER %LOWER%

abc

10

10