8.4

Using Scripts
Scripts can be used to perform various operations, such as to manipulate data, for example. PlanetPress
Workflow can perform scripts written in four different scripting languages and also provides an interface for
editing scripts.
Warning
While this chapter provides some very useful and detailed information about scripting within
PlanetPress Workflow, its focus is to inform you about the features, variables and functions unique to
this environment. This chapter assumes that you have a working knowledge of the scripting language
you wish to use and does not purport to teaching you anything about this language that you don't
already know. Learning any of these language is beyond the scope of this documentation.
There are four scripting languages available through the Run Script task: JavaScript, VBScript, Python and
Perl. Each language has its own strengths and weaknesses which we will not cover in this documentation.
While VBScript is the most used language at the moment, the examples provided in this chapter are
presented in all supported languages.
Note
While JavaScript and VBScript are natively available on Windows operating systems. Python and Perl
require third-party tools to be functional. For Perl, ActivePerl can be installed. For Python, please see
HOWTO-1504 in the Objectif Lune Knowledge Base.
When using the Run Script as a condition, you need a way to tell your process whether the result is true or
false. The condition result is returned by the "Script.ReturnValue" on page 103 variable. If the return value is
zero (the default), the condition is false. Otherwise, it is true.
When using the Run Script as an action task, the job file going out of the Run Script action task will be the
same as the one coming in, unless you have specifically changed it within your script by writing to the file
that is the target of the "Watch.GetJobFileName" on page 94 function. The same goes for any job info, local
or global variables, unless you use the "Watch.SetJobInfo" on page 98 or "Watch.SetVariable" on page 99
functions to modify them.