Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Extern refers to nodes that have not yet been defined typically due to cross suite dependencies. Trigger and complete expressions may refer to paths and variables in other suites that have not been loaded yet. The references to node paths and variable must exist, or exist as externs. Externs can be added manually or automatically
Manual Method;

Code Block
 defs = ecflow.Defs("file.def") # open and load file 'file.def' into memory

...


 defs.add_extern("/temp/bill:event_name")


Automatic Method; this will scan all trigger and complete expressions, looking for paths and variables that have not been defined.

The added benefit of this approach is that duplicates will not be added. It is the user's responsibility to check that extern's are eventually defined otherwise trigger expression will not evaluate correctly

Code Block
defs = ecflow.Defs("file.def") # open and load file 'file.def' into memory

...


 …..

...


 defs.auto_add_extern(True) # True means remove existing extern first.