The Watch Object

PlanetPress Workflow scripting offers a number of methods of communicating with your process by means of PlanetPress Workflow automation object's methods and functions. The automation object is available in all 4 languages through their own syntax - the examples provided here are for JavaScript.

While the functions here are in mixed case to simplify reading, it's important to note that some languages (especially JavaScript) are case-sensitive and will require the proper case. Examples in this chapter will always use the proper case when relevant.

Here is a list of the methods and functions that are available to you through the automation object (or "Watch" object). While these examples are all in JavaScript, you can click on any variable name to open a page to see examples for each supported language.

Variable Name Description
Example Usage (JavaScript)
Watch.GetJobFileName Retrieves a string containing the job path and file name located in the job spool folder.
Example Usage: var s = Watch.GetJobFilename();
Watch.GetOriginalFileName Retrieves a string containing the job's original path and filename. Note: this filename is generally no longer available if it has been captured by Watch.
Example Usage: var s = Watch.GetOriginalFileName();
Watch.GetMetadataFilename Retrieves a string containing the job's metadata path and filename. This is useful when using the Metadata API in your script. (See Metadata API.)
Example Usage: var s = Watch.GetMetadataFileName();
Watch.GetJobInfo Retrieves the content of a numbered job info (%1 to %9).
Example Usage: var s = Watch.GetJobInfo(9);
Watch.GetVariable Retrieves the content of a local or global variable by name.
Example Usage: var s = Watch.GetVariable("MyVariable");
Watch.ExpandString Retrieves the content of any Workflow string, containing any variable available to Watch, including data selections.
Example Usage: var watchDate = Watch.ExpandString("%y-%m-%d");
Watch.Log Writes to the Workflow log file, or the message window when in debug - can accept multiple log levels from 1 (red) to 4 (gray).
Example Usage: Watch.Log("Hello, World!", 3);
Watch.ShowMessage Displays a popup dialog box to the user (user has to be logged on).
Example Usage: Watch.ShowMessage("test message");
Watch.SetJobInfo Writes the value of a string to a numbered job info.
Example Usage: Watch.SetJobInfo(9, "Job info 9 Value");
Watch.SetVariable Writes the value of a string to a local or global variable by name.
Example Usage: Watch.SetVariable("MyVariable", "Hello World!");
Watch.Sleep Pauses all processing for X milliseconds.
Example Usage: Watch.Sleep(1000);
Watch.ExecuteExternalProgram Calls and executes an external program in the command line.
Example Usage: Watch.ExecuteExternalProgram("lpr -S 192.168.100.001 -P auto c:\\myfile.ps", "c:\\", 0, true);
Script.ReturnValue Returns a boolean True or False value to a Workflow scripted condition
Example Usage: Script.ReturnValue = 1;
Watch.GetPDFEditObject Is used to manipulate PDF files using the AlambicEdit API. The AlambicEdit library allows Workflow to access, create or modify PDF files.