How to branch processing in a Process Plan using JavaScript
When using a "Variable" sequence step within a Process Plan, it is possible to branch depending on the result of the variable.
This sample uses a "Variable" step in step 1, which continues processing with step 2 in the case of "Success" or jumps to step 3 in the case of an "Error".
To branch in a Process Plan using a variable, the variable or the script must return one the two following values:
"false" or "0" (Null): Failure
"true" or "1": Success
For example within the Variable used in step 1 {cropbox smaller than 100pt}:
if ( app.doc.pages[0].cropBox.right -
app.doc.pages[0].cropBox.left < 100) var result = 1; else var result = 0; //return a value: result
In order to try this out yourself, please execute the attached Process Plan "Branch_on_script_result.kfpx" with the activated "Log profile execution" option (in the fly out menu in the upper right of the Profiles/Checks/Fixups window) in the desktop version of pdfToolbox.
Executing the Process Plan will create a log as shown below:
2016-12-22 17:30:15 Branch on script result
2016-12-22 17:30:15 Input /Volumes/Work/PDFs/blank.pdf
2016-12-22 17:30:15 Starting with step1
2016-12-22 17:30:15 [1-1] cropbox smaller than 100pt
2016-12-22 17:30:15 Var cropbox smaller than 100pt 0
2016-12-22 17:30:15 Result Failure
2016-12-22 17:30:15 Continuing with step 3
2016-12-22 17:30:15 [2-3] error
2016-12-22 17:30:15 Var cropbox smaller than 100pt 0
2016-12-22 17:30:15 Var error Crop box is not smaller than 100pt
2016-12-22 17:30:15 Var message Crop box is not smaller than 100pt
2016-12-22 17:30:15 Result Success
2016-12-22 17:30:15 Terminating