User Tools

Site Tools


transformations:runprogram

Run program

Run specified external application, and wait until it finishes.

If no external application is provided the command line is executed by the Windows shell (cmd.exe).

The transformation fails if the exеrnal application returns a non-zero exit code.

Use cases

  • Run external applications (e.g. after a file is generated by EasyMorph).
  • Execute Windows shell commands (copy, del, ren, etc.).
  • Run other EasyMorph projects in order to make them generate reports.

Capturing output

It is possible to capture STDOUT and STDERR of the executed external application or Windows shell command. For instance it is possible to run dir and capture its output as a table in EasyMorph, or forward output of an application into EasyMorph without creating a temporary intermediate CSV file. STDERR is captured in a separate column, which can later be used for error-handling routines. Since EasyMorph also outputs errors into STDERR this feature can be used for error handling of EasyMorph projects executed in the command line mode.

Parameter substitution

The transformation allows defining its command line as a text or as a calculated expression. It is possible to insert parameters into text. For instance:

copy /Y {SourceFileName} {DestinationFileName}

The command line above is equivalent to the calculated expression below, but is easier to use.

“copy /Y “ & {SourceFileName} & “ “ & {DestinationFileName}

SourceFileName and DestinationFileName are parameter names.

See also

transformations/runprogram.txt · Last modified: 2018/06/27 18:47 by dmitry