User Guide Version: 2019.
User Guide Version 2019.2 Last Revision: 2020-06-16 Objectif Lune, Inc. 2030 Pie-IX, Suite 500 Montréal, QC, Canada, H1V 2C8 +1 (514) 875-5863 www.objectiflune.com All trademarks displayed are the property of their respective owners. © Objectif Lune, Inc. 1994-2020. All rights reserved. No part of this documentation may be reproduced, transmitted or distributed outside of Objectif Lune Inc. by any means whatsoever without the express written permission of Objectif Lune Inc. Inc. Objectif Lune Inc. Inc.
Table of Contents Table of Contents 4 Welcome to PlanetPress Workflow 2019.
About Workflow Configurations Creating a new configuration Open a PlanetPress Workflow configuration file Saving and sending a Workflow Configuration Exit PlanetPress Workflow Configuration program Workflow Configuration resource files Connect resources PlanetPress Design documents PrintShop Mail documents About data About documents and variable data Job file Job file names and output file names Data selections About data emulation Sample Data Metadata Working with JSON Data Repository Structure Accessing t
Send to Folder printer queue Load balancing Associating PlanetPress Design documents and PlanetPress printer queues Triggers Objectif Lune Printer Driver (PS) About processes and subprocesses Processes Startup processes Subprocesses Creating a process Importing processes Activating or deactivating a process Process properties About branches and conditions Converting a branch to a subprocess Running a process on desktop Saving and sending a Workflow Configuration Using Scripts Run Script task APIs The Script
Clear() Copy() Cut() DatapageCount() Delete() DocumentCount() FieldByIndex(Integer Index) FieldByName(const String Name) FieldByNameIndex(const String Name, Integer Index) IndexInDocument() IndexInGroup() IndexInJob() Item(Integer Index) PageCount() Paste() PasteAt(Integer Index) Select(TSelectWhat SelectWhat) SelectedDatapageCount() SelectedDocumentCount() SelectedIndexInDocument() SelectedIndexInGroup() SelectedIndexInJob() SelectedPageCount() Sort(const String Name, optional TSortFlags Flags, optional co
Returns Parameters Returns Exceptions Parameters Returns Exceptions AlambicEdit API reference Stopping execution Special workflow types HTTP Server workflow PDF Workflow PlanetPress Capture Workflow Database considerations (ODBC) Workflow processes in a Connect Send solution About Tasks Adding tasks Editing a task Task properties Masks Selecting a resource file in task properties Input tasks Action tasks Data splitters Process logic tasks Connector tasks PlanetPress Capture Metadata tasks OL Connect Send OL
Connection tab Upload tab Advanced properties Advanced properties Email Services Unknown tasks About variables Job Info variables System variables Local variables Global variables Variable task properties Workflow add-ons PlanetPress Capture Capture OnTheGo (COTG) About PlanetPress Fax About PlanetPress Image OL Connect Send ZUGFeRD About related programs and services Available Input services Available Output services Start and stop PlanetPress Workflow Service Users and configurations Workflow Services Pre
Network behavior preferences Preferences PlanetPress Capture preferences PlanetPress Capture Server/Client PlanetPress Document Manager PlanetPress Capture ODBC Settings PlanetPress Capture Pen Management Tool PlanetPress Capture License Management OL Connect preferences PDF text extraction tolerance factors General and logging preferences Messenger plugin preferences Preferences HTTP Server Input plugin preferences 1 Preferences HTTP Server Input plugin preferences 2 LPD Input plugin preferences Preference
Dock and undock areas of the Program Window Show or hide areas of the program window Combine and attach areas Resize the program window areas Change the Interface language PlanetPress Workflow Button Options Configuration Components pane Components Area Sections Process properties PlanetPress Design document properties Moving and copying configuration components Renaming objects in the Configuration Components Pane Reordering objects in the Configuration Components pane Grouping Configuration Components Exp
Editing properties The Plug-in Bar Categories Settings and customization The Process area Cutting, copying and pasting tasks and branches Highlight a task or branch Disabling tasks and branches Moving a task or branch using drag-and-drop Redo a command Removing tasks or branches Replacing tasks, conditions or branches Resize the rows and columns of the Process area Collapse and expand branches and conditions Undo a command Zoom in or out within the Process Area The Quick Access Toolbar Adding buttons Removi
Welcome to PlanetPress Workflow 2019.2 This PDF documentation covers version 2019.2. To view the documentation of previous versions please refer to the PDF files available in the Downloads section of our website: http://www.objectiflune.com/OL/Download/DownloadCenter. Workflow is the heart of all of our solutions.
Warning Information that is potentially critical to using PlanetPress Workflow.
Installation and setup This chapter describes the different considerations that are important in regards to the installation and use of PlanetPress Workflow. l "System Requirements" below l "Environment considerations" on page 18 l "Setting up the working environment" on page 21 l "Known Issues" on page 25 System Requirements These are the recommended system requirements for PlanetPress Workflow 2019.2.
l l VMWare Environments. This includes VMWare Player, VMWare Workstation as well as VMWare ESX Server. VMWare VMotion. This means the virtual machine hosting PlanetPress Workflow can be automatically moved from one ESX server to another in a clustered installation. l Microsoft Hyper-V/Azure infrastructure environments. l Amazon Web Services (AWS) PlanetPress Workflow is not officially supported on any other virtual machines such as Virtual PC, Parallels, Bochs, Xen, etc.
Recommended hardware requirements Due to its versatility, OL Connect is used for a wide variety of applications. Consequently, it is difficult to determine which hardware configuration will produce the best results for any given implementation. The following specs should therefore be viewed as a general guideline that is most likely to produce expected results for most implementations. You should, however, keep in mind that it may not represent the optimal setup for your particular application.
Environment considerations This page is intended to provide technical information about the environment in which PlanetPress Workflow is intended to run. Terminal Services PlanetPress Workflow does not support Terminal Services environment as possible under Windows 2000, 2003 and 2008. This is to say, if Terminal Services is installed on the server where PlanetPress Workflow is located, unexpected behaviors may occur and will not be supported by our company.
Warning The PlanetPress Workflow End-User License Agreement (EULA) specifies that a PlanetPress Workflow software license may only be used on a single virtual or physical PC at a time. While copying a virtual machine for backup purposes is acceptable, running two instances of the same machine, using the same serial number, is strictly prohibited.
recommended, and Objectif Lune cannot be held reliable for any consequence of disabling your antivirus or whitelisting the folders or executables listed here, or any other change in your antivirus protection setup! l On Windows 7/2008: l l l l C:\ProgramData\Objectif Lune\PlanetPress Workflow 8\ C:\Users\planetpress\AppData\Local\Temp\ (where planetpress is the user under which Workflow is configured) C:\Users\planetpress\Connect (where planetpress is the user under which Workflow is configured) On al
l PPFaxService.exe l PPImageService.exe l MessengerService.exe Backup considerations For similar reasons, it is important to know that backup software can also access files while copying them to a remote backup location, so you should make sure that no PlanetPress Workflow process is working during your backups. Microsoft Office compatibility The Microsoft Office 2010 line of products, other than Pro and Enterprise, has not been certified for use with PlanetPress Workflow.
implications in regards to PlanetPress Workflow. To change the service log on information, see "Workflow Services" on page 900. Local and network rights Programs, such as PlanetPress Workflows and all its services, must identify themselves in order to be granted permission to perform operations on the computer on which they run as well as on other computers accessible via a network connection.
then have PlanetPress Workflow Tools map the drive using a Run Script action inside a Startup Process. We strongly recommended that instead of using mapped drives, you use full UNC paths for your network drives. PlanetPress Workflow Tools can automatically convert mapped paths to UNC paths. For more information, please see "Network behavior preferences" on page 796. Network ports used by each service The port configuration for each PlanetPress Workflow component is described in the following table.
Component Protocol Local Port Remote Port Email Output (SMTP mode) TCP Default1 25 Email Output (Outlook mode) TCP See Email Input (Outlook mode) See Email Input (Outlook mode) Send to Folder Windows Queue Output TCP Default1 Standard Windows file and printer sharing ports2: l l 137, 138 and/or 139 (NetBIOS over TCP/IP (NetBT)) 445 (SMB Over TCP/IP) LPR Output TCP Default or 721 to 7313 515 PlanetPress Database TCP or UDP Unknown4 Unknown4 SNMP Condition UDP Default1 161 1 Valu
Known Issues Issues with Secure Email tasks in multi-byte languages Neither the Secure Email Input nor the Secure Email Output tasks are able to save or read their configuration when running on a Windows instance that uses a multi-byte language. The plugins appear to save the configuration correctly, but when the plugins are executed or the task reopened, then no configuration is available.
from JET to ACE (change the Data Source). As an example: in Windows 10: Change the Excel File ODBC driver from ODBCJT32.dll to ACEODBC.dll. (Naming may vary from versions of the OS but the basics stay the same.) Important: Before switching from JET to ACE, install the latest MS Access Database Engine 2016 Redistributable (https://www.microsoft.com/en-us/download/details.aspx?id=54920). Otherwise, using ACE in one or more self-replicating processes in a Workflow configuration can cause Workflow to crash.
l l l l l l l l l 21465: The SharePoint Output task does not validate the field contents. That's Sharepoint's responsibility. 20143: The Metadata to PDI task encodes the XML using the default system encoding, not the document's. In addition, it does not discriminate between index names written in different cases (e.g. Name vs. name). Printing PDF files in passthrough mode using a Windows Printer Driver task causes jobs to be processed sequentially rather than in parallel.
l 13559: The WordToPDF task, when run under the LocalSystem account, may seem to hang if the installation of MS-Word wasn't properly completed for the LocalSystem account. If the task seems to take longer than it does when run in Debug mode, this may be the case. You can confirm this behavior by opening up the Windows Task Manager and checking whether the MSIExec application is running. In order to complete the installation of MS-Word for the LocalSystem account, follow these steps: 1.
l l The Microsoft Office 2010/2013/2016 and 365 line of products has not been certified for use with PlanetPress Workflow. Some of its products may not be compatible with the connectors included. Barcodes produced in printer-centric mode may have a slightly different aspect from those produced in Optimized PostScript mode. This is due to the different types of 3rd party libraries being used to generate the barcodes. However, all barcodes scan correctly.
Note Because of technical limitations, the minimum time required to generate a PlanetPress Fax document is approximately 10 times longer on Windows 2000 than on Windows XP/2003. About PlanetPress Image PlanetPress Image is a multi-threaded service that can generate image files in PDF, JPEG and TIFF format. As PlanetPress Workflow and PlanetPress Image are compliant with AutoStore, DocAccel and KYOcapture, these formats can also be used.
Preferences In addition to the job-specific PlanetPress Image properties that you configure in the task’s Properties dialog box, there are configurable options common to all PlanetPress Image Outputs processed by a given computer; see "PlanetPress Image preferences" on page 828. Note that those options are specific to each PlanetPress Image installation and that they are immediately applied.
Basics PlanetPress Workflow is a tool to automate the processing, distribution and printing of your business documents. Once installed on the server, it can be set up to automate all tasks related to document processing (see "Setting up the working environment" on page 21). When you're all set up, you can start using the Workflow Configuration tool, assuming that you have already done research on the processes that need to be automated. Working with Workflow implies the following basic steps: 1.
The product-specific files need to be sent to, or imported into, Workflow before they can be used in conjunction with a task (see "Workflow Configuration resource files" on page 40). They become visible in the "Configuration Components pane" on page 850.
Features PlanetPress Workflow configurations are input driven applications designed to output data in a variety of ways through diverse means to various applications and devices. PlanetPress Workflow can be used as simple go between, passing along input data to output devices, but it can also perform various types of data processing. You can combine the various PlanetPress Workflow services to set up versatile automated processes to print jobs as well as generate other types of output.
versatile automated processes to print jobs as well as generate other types of output (emails, web pages, files...). Note A PlanetPress Workflow configuration must be composed of at least one process, but it may include as many as 512. PlanetPress Workflow cannot work without a valid configuration, and a PlanetPress Workflow session running on a given computer can only use one configuration at a time.
By default, when you create a new configuration, PlanetPress Workflow automatically creates a process that includes a "Folder Capture" on page 351 initial input task and a "Send to Folder" on page 687 output task by default. You can then edit and save your new configuration. The default input task and output task depend on your preferences ("Default configuration behavior preferences" on page 792).
Saving and sending a Workflow Configuration The core of the PlanetPress Suite workflow tools is the PlanetPress Watch service which, once started, constantly runs in the background to perform the tasks included in its current configuration file. The PlanetPress Workflow Configuration tool lets you create, edit, save and send configuration files. As you are working on your configuration, you can save that configuration file as a file on your local hard drive.
PlanetPress Workflow when it is started. To change any currently active configuration, you must use the Send Configuration command. When you use the Send command, the PlanetPress Workflow Configuration program uses the currently opened configuration (Any_name.OL-workflow) to overwrite the PlanetPress Workflow Service's current configuration (ppwatch.cfg). Note .OL-workflow files are equivalent to .pp7 files made with older versions of PlanetPress Workflow.
4. Put a checkmark next to each server where the configuration should be sent. 5. Click OK. If a server is grayed out, this may mean you do not have access to send a configuration remotely to it. For more information, please see "Access Manager" on page 867. Note If PlanetPress Workflow service is paused when you send a new configuration, it will not stop and restart.
If the default configuration does not include any active process, the PlanetPress Workflow Configuration program asks you whether to continue. If a file different from the default configuration file is currently opened, and if it includes unsaved modifications, the PlanetPress Workflow Configuration program asks you whether to save the configuration before exiting. Select the Always save without prompting for confirmation option to automatically save any unsaved work before exiting.
l l Data Model: Displays the data model used in the data mapping configuration. Double-click on the data model to view it in your default XML viewer (generally, Internet Explorer). Sample Data File(s): Displays a list of sample files that are included in the data mapping configuration. (See also: "Sample Data" on page 71.) Tip Double-click on a sample data file to use it as a sample data file for the active process.
1. Click the PlanetPress Workflow button. 2. Choose Import, then Import Connect Content. The Import dialog box appears. 3. In the File type box, select the desired file type. 4. Navigate to the document you want to import, select it and click Open. When you select a package file, the individual resources contained within that package will be imported. Tip You can import multiple files at once.
Resource archives From version 8.2, PlanetPress Workflow maintains an archive of previous versions of resources, in the following location: %PROGRAMDATA%\Objectif Lune\PlanetPress Workflow 8\PlanetPress Watch\OLConnect\Archive , each in their own folder: l datamapper contains archives of the data mapping configurations (.OL-datamapper) l jobcreation contains archives of the Job Presets (.OL-jobpreset) l outputcreation contains archives of the Output Presets (.
1. Make sure the Connect Resources section is visible by clicking the appears. button if it 2. Expand the data mapping configuration (name.OL-datamapper) by clicking the button. 3. Right-click on the data file, then click Set as sample data file. Viewing an attached data file 1. Make sure the Connect Resources section is visible by clicking the appears. button if it 2. Expand the data mapping configuration (name.OL-datamapper) by clicking the button. 3.
For more information about PlanetPress Design documents, please see the PlanetPress Design User Guide. Generating output with PlanetPress Design documents PlanetPress Design documents are typically selected in certain Output tasks designed to merge data with a Design document, but they can also appear in other tasks that produce formatted data such as the Digital Action task and the Add Document task.
Adding printer resident documents to the Configuration Components Pane By default, the Documents group displayed in Configuration Components pane of the PlanetPress Workflow Configuration program includes all those documents that are available on your local PlanetPress Workflow server.
Tip To navigate quickly to the Workflow working folders, press the keyboard shortcut CTRL+ALT+Shift+F4 from within the Workflow configuration tool. Using files attached to PlanetPress Design documents Data files When sending a PlanetPress Design Document from PlanetPress Design to PlanetPress Workflow, all data files used in the document are automatically sent to PlanetPress Workflow along with the Design document.
selecting Set as sample data file. Clicking Cancel instead of OK after viewing will prevent this action from being taken. Saving an attached data file to disk 1. Make sure the PPS/PSM Documents section is visible by clicking the appears. 2. Expand the document (name.ptk) by clicking the button if it button. 3. Right-click on the data file, then click Save sample data file. Metadata When a Design document uses Metadata, it can also be attached with the document.
Saving the Document Preview to disk 1. Make sure the PPS/PSM Documents section is visible by clicking the appears. button if it 2. Expand the document (name.ptk) by clicking the button. The Document Preview has the same name as the document but with a PDF extension. 3. Right-click on the Document Preview, then click Save PDF File.
PrintShop Mail documents PrintShop Mail documents are documents made with PrintShop Mail (Suite, not Connect). These documents may be imported into Workflow to create output with the "PrintShop Mail" on page 549 task. Importing PrintShop Mail documents This procedure describes how to import variable content documents created in PrintShop Mail (Suite, not Connect) into PlanetPress Workflow. 1. Click the PlanetPress Workflow button. 2. Choose Import, then Import PrintShop Mail Document.
originates from many different sources (as many as the input tasks support), parts of it can be stored in variables, and it is always accessible by the task that currently handles it. Data is referred to in tasks using data selections; see "Data selections" on page 54. Data selections let you use data in file names, for example, or store them in a variable or in the Data Repository for use later on.
Job file Whichever source it may come from, a serial port, an e-mail message, or an LPR request, for instance, and whatever its format, data entering a PlanetPress Workflow process via an Input task is always referred to as a data file. When a data file enters a process, it becomes the job file. 'Job file' however is a more general term, that can refer to data files as well as other types of files traveling through a process.
l If the job file is processed by a Splitter action task, the task typically creates a number of new files which are all given new job file names. Since these files are generated and managed by PlanetPress Workflow, you should not actually pay too much attention to their names. Many Output tasks, on the other hand, let you determine exactly how you want the files they generate to be named.
Note You can change the name of a previously named file using a Rename action task (see "Rename" on page 456). Data selections A data selection could be compared to an address. It indicates a location within a data file or database: the job file (see "Job file" on page 52), Metadata file (see "Metadata" on page 76), or "Data Repository" on page 96.
Data selections can also be used in a PlanetPress Design document that is being merged with the data (for example in a printed output); for more information, see PlanetPress Design User Guide. Wild card parameter "?" Data/Metadata selection functions accept a wildcard parameter "?", indicating the function operates on all nodes (not just one) of a given level. Examples l In a PDF emulation, the format of a selected region could be: region(?,0.59375,2.21875,1.85416,2.
splitter. l From Line: The starting line of the data selection. l To Line: the last line of the data selection. l From Column: the leftmost character position of the data selection. l To Column: the rightmost character position of the data selection. l Case Options: This can be one of three options: l l KeepCase: Keeps the current uppercase and lowercase letters as they are. l UpperCase: Converts all letters to their uppercase equivalent.
l Trim Option: Can either be "Trim" if you want to trim empty spaces before and after the data selection or "NoTrim" if you want to retain the extra spaces. Data Repository lookups The Data Repository selections are made through the lookup function. Selections are done from the data located in the "Data Repository Manager" on page 875. The lookup function returns the value of a single key, which is always a string.
l region(): Always surrounds PDF data selections. l Page: The page of the PDF from which to retrieve the data. l Left: Exact horizontal position (in inches) that defines the left of the selection region. l Top: Exact vertical position (in inches) that defines the top of the selection region. l Right: Exact horizontal position (in inches) that defines the right of the selection region. l Bottom: Exact vertical position (in inches) that defines the bottom of the selection region.
l Metadata Path (optional): Defines the precise path where the Metadata Field is located. Note Metadata Index/Count values are zero-based: the first element in any collection has an index of 0 and the last element's index corresponds to the collection's length minus 1. Option flags The flag value to enter should be the sum of all desired flags. So, a value of 11, which is 8+2+1, means that behavior 8, 2 and 1 are applied. A value of 0 means 'no flag'.
Here is a breakdown of the syntax: l xmlget(): Always surrounds a data selection. l Value Options: l l l Count: The number of elements on the same level in the same node that have the same name. l Name: The element's name. l Value: The element's value. Case Options: This can be one of three options: l KeepCase: Keeps the current uppercase and lowercase characters as they are. l LowerCase: Converts all characters to their lowercase equivalent.
Note Even during debugging, selecting a sample data file with a different format will cause the emulation of a process to change. In order to avoid errors, change the emulation back to the format of the original input file before using the process again. Stabilizing data All emulations, except the database, PDF and XML emulations, let you perform operations on the data to stabilize it. The following options are available in both the "Change Emulation" on page 415 task and "The Data Selector" on page 878.
as they appear in the data stream and does not perform any substitution. A printer that does not support binary mode or is not running in binary mode replaces any CR, LF, or CRLF that appears at the end of a line of data with a LF. Note, however, that it replaces a line feed followed by a carriage return (LFCR) with two LFs. Binary mode is the recommended printer mode when you use an ASCII emulation.
For more information about emulations in PlanetPress Design see PlanetPress Design User Guide. ASCII emulation ASCII emulation tells the process to treat the input data as a stream of ASCII characters. The data stream is read one character at a time, a line is constructed, and that line is added to the data page buffer. In this emulation, you can define how to handle carriage returns that are not followed by line feeds and how to handle tabs.
l l l Number of spaces in the tab: Enter the number of spaces you want the application to use when an isolated carriage return character is found within the data. This number typically corresponds to the maximum column number. If your data is formatted so as to occupy a maximum of 120 characters on each line, enter a value of 120 in this box, so when an isolated CR character is found, the data following the CR character will appear starting from column 121.
character (\) as a delimiter, you must precede it with another backslash character (thus you would enter \\). You can also specify an ASCII character using its octal value preceded by a backslash (for example, \041 is the exclamation mark character [!]). l l l Force one record per page: Select to force a single record per data page. If you clear the selection, a record may be split across data pages if necessary.
l l l Force one record per page: Select to force a single record per data page. If you clear the selection, a record may be split across data pages if necessary. If you want to avoid splitting a record across data pages, yet have several records in the buffer, select Force one record per page, and set the Pages in buffer option to the number of records you want the buffer to hold. Delimiter: Enter the character that separates the fields of each record in the input data.
l l l l The person or plugin performing the query must have full access to the database. The data is extracted at the time of the query. A new query must be performed whenever the data needs to be updated. Any changes to the structure of the database may have an impact on automated data querying tasks. You must have the proper ODBC driver installed to use this emulation.
Line printer emulation options The line printer emulation does not have any options other than the general text-based emulation options (see "Text-based emulation" below). PDF emulation The PDF emulation allows you to capture data from fully composed documents in a PDF format.
internal structure of each data page must also be stable to make the data selections you use reliable (see "Data selections" on page 54). Ideally, a given piece of data occupies the same position across all data pages, or provides some stable characteristic that makes it possible to locate it on every data page.
formatting caused by isolated CR characters found within the data. This option can only be used with the ASCII emulation. Note for PlanetPress Suite users: You cannot select this option if the Design document is to be installed on a printer that cannot run in binary mode. l Data encoding: Select the appropriate encoding for the sample data file. You may look at the data in the Data Pane (non-English characters especially, if any) to see how the your selection affects the data.
For information about XML emulation options in PlanetPress Design documents, see the PlanetPress Design user guide. Sample Data This topic covers issues relating to the sample data used in your PlanetPress Workflow configuration. A sample data file makes it possible to: l l Create a process that retrieves dynamic data from a data file. Once a sample data file is available, you can use it to make data selections in a process (see "Data selections" on page 54).
you may want to detect, or data used for a specific condition. For example, if you wanted to filter out any data for clients in Canada, you would want to use a data file that has at least one client from Canada, to test whether your process filters it out correctly. To choose a sample data file: 1. Click the Debug tab in the PlanetPress Workflow Ribbon. 2. Click on Select in the Data group. 3. Use the Data Selector to choose your sample data file and emulation options (see "The Data Selector" on page 878).
1. Open the Data Selector (see "The Data Selector" on page 878). 2. From the Emulation drop-down list, select Database. 3. Next to the Sample data file field, click the Configure Database button. 4. Associate a database. l l Microsoft Access Database or dBase file: In Database, enter the path of the Microsoft Access database or dBase file, or click the Browse button to the right of the box to navigate to, the database file. Recall that a Microsoft Access database file bears the extension .
set when the value of a specific field changes, and you want to sort the records before applying that condition. l Maximum records per record set: Set either the number of records in each record set, or the maximum number of records in a record set. An individual record set can contain a maximum of 4000 records. 7. Set the number of records you want to include in the sample data file.
Opening a previously used data file PlanetPress Workflow also keeps the last 9 used data files in memory, which you can reopen to use in the same process, or in a different one. To reopen a sample data file: 1. Click the Debug tab in the PlanetPress Workflow Ribbon. 2. Click on Reopen Data File in the Data group. 3. Click on one of the data files in the list. 4. Use the Data Selector to change the emulation options if necessary. 5. Click OK on the Data Selector.
l l l l The person or plugin performing the query must have full access to the database. The data is extracted at the time of the query. A new query must be performed whenever the data needs to be updated. Any changes to the structure of the database may have an impact on automated data querying tasks. You must have the proper ODBC driver installed to use this emulation.
Note Applications or plugins created in PlanetPress Suite 6 and using Metadata will need to be updated for use in version 2019.2. No backward compatibility mode is available. Warning When a user-defined emulation (created in PlanetPress Design) is used with Metadata, results and behavior are unknown and unsupported. For instance, refreshing the Metadata file may cause the document to crash and/or corrupt. For this reason, it is strongly advised to create backup copies of your documents beforehand.
Note Any operation that modifies the data with regards to the structure (ex: remove pages, alter the data, etc.) makes the Metadata obsolete and so it must be recreated or refreshed; see "Working with Metadata" on the next page. Note: Metadata in OL Connect jobs In PlanetPress Suite, all levels in the Metadata hold information about an actual job. In Connect, that isn't the case. The Metadata file created and maintained by OL Connect tasks looks the same, but contains less information.
Metadata Attributes and Fields Each Metadata node (i.e. Job, Group, Document, etc.) is described with a series of elements, that is, system-defined attributes or user-defined fields holding static or dynamic information about the node they are attached to. Each element has a name and a value. Here is a definition of these 2 types of elements: l l Attribute: A read-only, system-defined element which holds certain information about a certain node in the Metadata structure. This information can be static (e.
How data and Metadata influence each other When Metadata are created, they are based upon a data file. However, modifying one file doesn't automatically change the other, and Metadata aren't reset by default in a Branch, Condition or Loop. l l l Modifying Metadata does not immediately modify the data. This is one of the benefits of Metadata because you can sort it, filter it, sequence it, add data to it, without ever modifying the data file itself.
l l The "Capture Fields Generator" on page 565, "Capture Fields Processor" on page 568, "Get Capture Document" on page 578 and "Find Capture Documents" on page 574 tasks generate their own Metadata. The "Lookup in Microsoft® Excel® Documents" on page 522 enhances Metadata fields with information from an Excel spreadsheet, but does not otherwise change its structure. How Metadata affects the output By default the data file is not affected when the Metadata are modified.
Example Here is an example of an issue that occurs when Metadata is not re-created in a Loop. In the following process, the Job file is a PDF that contains several invoices. Some (but not all) of those invoices start with a separator page that you don't want to print. Invoices that don't have a separator page should be printed as-is. The process would look something like this (by default): l l Step 2 splits the PDF whenever it encounters a new Invoice Number on the Top Right corner of a page.
Page, in effect "hiding" it from the Print Output task). l l Step 6 prints the PDF to a printer. When printing a PDF file in passthrough mode, the Metadata is inspected to determine which pages should print or not. In this case, Page 1 is unselected in the Metadata, therefore the printer receives the job starting from Page 2, which is exactly what you want. Step 7 prints the entire PDF since no separator page was found.
Metadata Attributes reference An Attribute is a read-only, system-defined element which holds certain information about a certain node in the "Metadata" on page 76 structure. This information can be static (e.g. the size of a physical page) or evaluated on-the-fly (e.g. the number of documents in a group). Attributes are non-repetitive (i.e. name is unique) and do not persist through Metadata recreation.
l Finishing attributes describe the finishing intent (e.g. page dimensions, page orientation, duplex mode, etc.). Note The presence of some finishing attributes depends on the PlanetPress Design document and target device used when producing the job. l Index/Count attributes are not part of the original Metadata file. They are evaluated dynamically, based on the content of the Metadata.
Attribute Description Categor y J o b Gro up Docum ent DataEncoding (optional) Name of the character encoding. Producti on X X X DataFile (optional) Path and name of the data file used by the PlanetPress Design Document. Producti on X X X Date Date the Metadata was created in ISO format. Producti on X X X Time Time the Metadata was created in ISO format. Producti on X X X Title Title of the source document.
Attribute Description Categor y J o b Gro up Docum ent X X Datap age Pa ge source of the Metadata. TargetDevice Name of the device for which the Metadata and associated data is intended. Producti on X Author Name of the user who printed the job initially, as available in the spool file, and as the first job info of the Windows capture input. Producti on X Dimension Two floatingpoint values separated by a colon indicating the media size in typographical points (ex: 612:792).
Attribute Description Categor y J o b Gro up Docum ent Datap age Pa ge "Rotate270", indicating respectively portrait, landscape, rotated portrait and rotated landscape. Side "Front" or "Back"; indicates whether the page is on the front or the back of the paper sheet. This attribute is a "best effort" and is devicedependent. Finishin g X Duplex "None", "DuplexTumbl e" or "DuplexNoTu mble"; indicates a change of the duplex status.
Attribute Description Categor y J o b Gro up Docum ent Datap age Pa ge media source. OutputBin Devicedependent identifier of the media destination. Finishin g X X X X X Weight Devicedependent weight of the media. Finishin g X X X X X MediaColor Devicedependent color of the media. Finishin g X X X X X MediaType Devicedependent type of the media.
Attribute IndexInJob Description Categor y Absolute index of the node within all the nodes under the parent Group. ount Returns the Absolute index of the node within all the nodes under the parent Job.
Attribute Description SelectedPageCoun t Categor y J o b Gro up Docum ent Index/C ount X X X SelectedIndexInDo cument Returns the Absolute index of the node within all the selected nodes under the parent Document. Index/C ount SelectedIndexInGro up Returns the Absolute index of the node within all the selected nodes under the parent Group. Index/C ount SelectedIndexInJob Returns the Absolute index of the node within all the selected nodes under the parent Job.
Attribute Description Categor y J o b Gro up Docum ent Datap age Pa ge Windows driver. Working with JSON In online processes, it is common to send data to and retrieve data from a server. That data is often exchanged in JSON format. JSON is short for JavaScript Object Notation. It is a way to store information in a structured and easy-to-read format. It is often referred to as "XML without nodes" and it is designed for exchanging data.
Types of JSON in Workflow Workflow tasks that support JSON accept or output one or two of the following types of JSON: l l a regular JSON string, containing a JSON object or an array of JSON objects representing records. If a value in a record object is a string, it is considered to be a field value. If a value in a record object is a JSON object, it is considered to be a nested table with detail records. For examples, see "JSON string samples" on page 633.
{jobid}')", "pages":"lookup(OLCS_jobs, pages, jobid, '%{jobid}')", "documents":"lookup(OLCS_jobs, documents, jobid, '%{jobid}')", "recordsetid":"lookup(OLCS_jobs, recordsetid, jobid, '%{jobid}')" } An example where the entire JSON string is provided in a Job Info variable: %1 A JSON string constructed with information retrieved from an XML job data file (see "XML data selections" on page 59): { "first":"xmlget('/request[1]/values[1]/first [1]',Value,KeepCase,NoTrim)", "last":"xmlget('/request[1]/values[1]/l
}, "tables" : { "detail": { "columns": { "ItemTotal": "CURRENCY", "ItemShipped": "FLOAT", "ItemOrdered": "BOOLEAN" } }, "detail2": { "columns": { "ItemUnitPrice": "CURRENCY", "ItemOrdered": "INTEGER" } } } }, "id": 3678077, "datasetid": 2392921, "fields": { "ID": "CU19762514", "Date": 1331096400000 }, "tables": { "detail": [{ "id": 3678078, "fields": { "ItemTotal": "2300.00", "ItemShipped": 2.0, "ItemOrdered": false } }, { "id": 3678079, "fields": { "ItemTotal": "29.99", "ItemShipped": 1.
"ItemOrdered": 2 } }, { "id": 3678081, "fields": { "ItemUnitPrice": "29.99", "ItemOrdered": 1 } }] } } ] Values could be retrieved in JavaScript as follows: var foo = record.fields.ID; var bar = record.tables.detail[0].fields.ItemTotal; Data Repository The Data Repository is a permanent structure to store data that can then be reused, modified or augmented at a later time, by different processes. This feature was introduced in version 8.5.
Structure As can be seen in the "Data Repository Manager" on page 875, the Data Repository consists of Groups, Keys and KeySets. Feature Name Description Equivalent Database Terminology Group A Group is defined by its Keys (columns), and may contain 0 or more KeySets (rows) within it. Table Key A Key is defined only by its name. The Data Repository only supports STRING values and any data inserted into it is converted to string automatically. The maximum size of a single key is 1 billion bytes.
Retrieving data from the Data Repository In any Workflow task where variable data is allowed (recognisable by the maroon field labels), information can be retrieved from the Data Repository using a Lookup function. Right-click a field with a maroon label and select Get Repository Location. This will bring up the "Data Repository Manager" on page 875. Select a Group, Key and KeySet entry to determine which value or values should be retrieved at runtime; then click OK.
Scripts In a script you can access the Data Repository using the "Data Repository API" on page 176. For a quick start, turn to this How-to: Interacting with the Data Repository API. Data Repository Manager At design-time, the Data Repository Manager may be used to insert or remove Groups, Keys and KeySets; see "Data Repository Manager" on page 875.
When such an error occurs, in most cases you would want to be aware of it and to take certain actions in order to correct or report the error. This is where our error handling features come in handy. Most of the tasks, branches and conditions included in your process can have their own error handling behavior, with the exception of Comments, the Input Error bin task, and older legacy tasks from previous versions of Workflow that did not have error handling.
the process. When an error occurs in a loop (or in a plugin that acts like a loop), the loop may log the error, terminate the current iteration and proceed with the next iteration. l l l l l l l l Stop Branch: If the task is in a branch of the process, the branch is stopped and the job file is returned to the process after the branch. The branch will not produce any output. If the task is not on a branch, the entire process will be stopped.
your process, and will be triggered if the Send to Process option is checked in that tab and an Error process is selected in the drop-down list. To create an Error process, simply replace the initial input task by the InputErrorBin Input task, and that process automatically becomes able to handle error jobs sent to it. It is up to you, however, to decide how that error job will be handled.
Variable Name % {error.process} Name of the process where the error was triggered. % {error.tasktype} The type of task that triggered the error % {error.taskname} The name of the task that triggered the error % {error.taskindex} The position of the task in the process % {error.errormsg} The error message, as entered in the OnError tab of the task. This is the same message as appears in PlanetPress Workflow Log file. %{error.errorid} The error ID, as entered in the OnError tab of the task.
2. Click on the service you want to check, including: l PlanetPress Workflow l LPD Server l Telnet Capture l Serial Capture l HTTP/SOAP Server l LPR Client l FTP Client l PlanetPress Image l PlanetPress Fax l PlanetPress Messenger 3. When any job or file is processed by the selected service, the processing logs will be displayed in the window on the right.
3. There are multiple logs displayed here, including: l ppwYYYYMMDD.log - PlanetPress Workflow logs, including the year, month and day of the log (from midnight to midnight). Note The PlanetPress Image and PlanetPress Fax logs are available in different folders. From the Watch folder, go up one level then go in either folders, under which you will find the Log folder for that specific software within the suite.
In the above image, the Folder Capture task is on level 1 and the Text condition is on level 4. Here's how to resubmit backed up input data files. 1. In the PlanetPress Workflow Ribbon, go to the Tools tab then click Resubmit Job in the Services group. The File Resubmission dialog box is displayed. 2. From the Process box, select the process for which you want to resubmit the backed up input files. 3. From the Task index box, select the index level to which you want the data to be sent.
the complete backup job is submitted. 6. Click Send to resubmit the data. 7. To resubmit backed up input files for the same process or for a different one, repeat step 2 to step 6. 8. To close the File Resubmission dialog box, click Close. Knowing what to resubmit When something goes wrong with an output job, a print job for instance, and printouts are lost, you need to know the name of the job in order to resubmit the input.
l There must not be any "Unknown tasks" on page 726 in the process. l A sample data file must be selected; see "Choosing a sample data file" on page 71. Note The sample job file should generally be the exact same format as the data that the process will receive when PlanetPress Workflow is processing the job at run-time. About the Debug mode When debugging your process, it is important to keep in mind that: l l l The initial Input task is never executed.
l Right-click on any task in the process and click Run from Here or Step from Here. These actions are the same as using the debug Step and Run buttons, but will execute the process only starting from that task forward. Double-click on any task to change its properties. If you change the properties of a task before you step through it, those new properties will be used when the task is executed.
including the output. Note that if you set a task, branch or condition to be ignored, it will also be ignored at run-time, providing you sent the configuration to the service. Debugging and Emulation changes One of the cases where debugging is most useful is whenever the job file is converted to another type of emulation, or if a new data file of a different emulation is used somewhere in the process.
l l l Step through the process until the emulation or data change, as in the first method. Save the data file locally and then select it as your sample data file, as with the second method. Instead of skipping through each task, use the Run from here or Step from here options, either from the Debug tab or by right-clicking on the task where you want to start the process.
Presets are created in the Connect Designer and can be used with any Connect template (see Output Creation Preset and Print Options in Connect's Online Help). For some options, such as grouping documents and splitting jobs, a Job Creation Preset is required as well (see Job Creation Preset in the Connect Online Help). Presets have to be sent to or imported into Workflow before they can be used in a Workflow process.
l l Create a matching Printer Queue in Workflow (see "PlanetPress Workflow printer queues" below). Associate the document with that Printer Queue (see "Associating PlanetPress Design documents and PlanetPress printer queues" on page 121). Printer-centric printing Alternatively the merging of the document and data can take place inside a printer (if the printer is suitable for it).
server. In the case of a Windows Output printer queue, on the other hand, you will specify the name of a local or shared Windows printer queue. Using Printer Queues To send print jobs to any of those PlanetPress Workflow printer queues, you must use a "Printer Queue Output" on page 678 task. Note that with a single task, you can send print jobs to multiple Workflow printer queues simultaneously, regardless of queue types.
l l l l Add: Click to add a new command to the list displayed in the Commands box. You must then edit the new command’s description and value. Note that new commands are shared by all printer queues. Delete: Click to remove a command from the Commands box. Command description: Use this box to edit the description of the command currently selected in the Commands box. Command value: Use this box to edit the code of the command currently selected in the Commands box.
Windows Output printer queue Windows output printer queues send print jobs to local or network printer queues set up in the Windows session in which PlanetPress Workflow is running. Note that jobs sent to those queues completely bypass the printer driver. Properties General tab l l l Printer queue: Select the Windows printer queue to which you want to send print jobs. Job name: Enter the job’s file name. By default, the variable %f (Job File Name; see "System variables" on page 729) is used.
Commands box. Use the right-click menu for a list of standard printer control characters. (See also: "Frequently used printer control characters" on page 115.) LPR Output Printer Queue LPR output printer queues send print jobs to LPD-compatible printers using the LPD/LPR protocol. Note that most of the settings associated with LPR output are configured via the PlanetPress Workflow user options (See "LPR Output preferences" on page 832).
Advanced tab l l l l l l l Print speed: Enter the speed, in pages per minute (PPM), of the printer associated with the printer queue. This value is used to determine how to divide jobs when you use the Queue Balancing option for load balancing. Commands: The list of available commands appears in this box. Select either Pre-job commands or Post-job commands in the Selected box, and double-click a command from this list to add it to the appropriate list.
General tab l FTP Server: Enter the IP address or host name of the FTP server. l User name: Enter an FTP server user name. l Password: Enter a password associated with the FTP server user name entered above. l l l l l Use FTP Client default port number: Forces the FTP connection on port 21, the default FTP port. FTP Port: Enter the FTP port to use. This option is disabled if Use FTP Client default port number is checked. The port should always correspond with the server's port number.
l l l Delete: Click to remove a command from the Commands box. Command description: Use this box to edit the description of the command currently selected in the Commands box. Command value: Use this box to edit the code of the command currently selected in the Commands box. Use the right-click menu for a list of standard printer control characters. (See also: "Frequently used printer control characters" on page 115.
commands to the appropriate list and to see those commands that have already selected. Double-click a command to remove it from the selected list. l l l l Add: Click to add a new command to the list displayed in the Commands box. You must then edit the new command’s description and value. Note that new commands are shared by all printer queues. Delete: Click to remove a command from the Commands box.
Assigning documents to a Workflow printer queue To assign PlanetPress Design documents to PlanetPress Workflow printer queues: 1. In the PPS/PSM Documents group of the Configuration Components pane, select either a single document or a group of documents. 2. Drag the selected documents over a PlanetPress Workflow printer queue. The selected document or the group of documents is associated with the printer queue. Each document keeps its default properties.
Triggers In PlanetPress Workflow, a trigger is typically a two line piece of PostScript code placed just before the data. Triggers tell the printer to turn on PostScript mode and specify which document should be used in the merging process (PlanetPress Design document+data). Triggers are used in two situations: l l When the server running PlanetPress Workflow sends a PlanetPress Design document along with the data to the printer, it adds a trigger before the document (trigger+document+data).
Install a Windows Printer Queue using the Objectif Lune Printer Driver (PS) A Windows Printer Queue using the Objectif Lune Printer Driver (PS) can be installed from PlanetPress Workflow WinQueue Input plugin properties. To create a new Windows printer queue from any PlanetPress Workflow: 1. Start your PlanetPress Workflow Configuration program. 2. Insert a WinQueue Input plugin. 3. In the WinQueue Input plugin properties, click New. 4. Enter a Name for the printer queue. 5. Click OK.
Create Composed Document Stream By default, the Create Composed Document Stream option is: l Checked if the incoming stream has been produced with the Objectif Lune Printer Driver. l Unchecked if the incoming stream comes from some other PostScript Driver. l Grayed out and unchecked if the incoming stream is not PostScript.
l PDF 1.4 l Optimized PDF (subject to change) l No down-sampling of images These settings are pre-configured and cannot be changed by the user. About Metadata Metadata files are files containing information on the job itself rather than containing the job per se. A job sent to the Objectif Lune Printer Driver (PS) creates its own Metadata, allowing users to retrieve relevant information, such as, for instance, the time and date the print request was sent and how many pages it contains.
l l l l A regular process will run as soon as an input file is available through its input task or, if it is scheduled not to run at that time, will start processing as soon as the schedule permits it. To learn how to create a process see: "Adding a process" on the facing page. Startup processes run only once before every other process in a given configuration (see "Startup processes" below). Subprocesses can be called by any other process (see "Subprocesses" on the facing page).
To learn how to create a startup process see: "Adding a startup process" on the next page. Subprocesses Subprocesses are special processes that can be called by any other process. Subprocesses act exactly as subroutines in programming languages, allowing users to reuse existing processes by sharing them to the whole configuration file.
have as many tasks as necessary (see: "About Tasks" on page 334). Adding a startup process You may create a startup process in two different ways. l l In the Ribbon, go to the Home tab and click the Startup Process button in the Processes group. In the Configuration Components pane, right-click on any process or the Processes folder and select Insert > Insert Startup Process.
"About Tasks" on page 334). For a list of all operations you can perform on tasks in the Process area, please refer to "The Process area" on page 907. Processes can be deleted, duplicated, renamed, disabled, grouped etc.and their properties, for scheduling and error handling can be edited (see "Process properties" on page 890). This can all be done via the Configuration Components pane.
3. Select the file, then click Open. The Import Configuration dialog appears displaying all the processes and/or process groups, as well as the subprocesses, variables, PlanetPress Design documents and printer queues in the selected configuration file. 4. In the list, select the components you want to import.
Activating or deactivating a process All processes are Active by default, but you may make any PlanetPress Workflow process Inactive as required. An inactive process will display in the Configuration components as red and strike-through. Inactive processes can be useful for designing new processes in a live configuration. As the process does not execute there is no danger of submitting it to a PlanetPress Workflow Service. To activate or deactivate a process: 1.
Note Subprocesses do not have the General tab which is only used for scheduling, but they do have the Information tab. Options General tab l l l l l l l Active: Select to make the process active. Clear to prevent this process from running when you send the configuration to PlanetPress Workflow. Startup: Select to make this process a startup process (see: "Startup processes" on page 127). This option is not available for self-replicating processes and error processes.
that's only scheduled to run one hour per week, it will capture the input 120 times during that period. Note that the polling interval is ignored when multiple files are present in the input and will be used only when there are no longer any files to process. l l Month: Select the month of the year when the process should be run or select All months to have the process run all year long. This option is disabled when "As soon as possible" is checked.
In the Time Grid, a blue block will indicate that the process is active within that time block. White blocks mean the process will not poll. Note that when multiple files are present in the input, these may continue to be processed after the period set in the time grid. The "Folder Listing" on page 354 plugin in combination with a "Time of Day Condition" on page 511 could be used to prevent further processing of those files.
l Click on any block to select / deselect it. l Click and drag from one block to another to toggle all blocks between the two. l l l l Shift-click on any block to toggle all blocks from the top-left corner of the grid to the block you click. To select all of the time segments for a given day or date, click the day or date on the top grid ruler. To deselect all of the time segments for a given day or date, CTRL+click the day or date on the top grid ruler.
l l Description: A one-line box to give a title or short description to your process. Comments: A multi-line box to give more detailed information, for example the file format expected, explanation of the system in general. On Error Tab A process’s On Error tab specifies the default values for error handling of all of the tasks in that process. When a task has its own error handling settings, those settings overwrite the process's default error handling settings.
Conditions A condition will either execute the branch it creates or the main trunk, but never both. As your job file goes down the process, when it encounters a condition it will verify whether that condition results in a "true" or "false" value. If the result is true, it goes in the branch, processes all tasks up to the output, and the process finishes. If the result is false, it goes down the main trunk and continues processing until the process finishes.
The default output task of a new branch or condition is configurable in the "Default configuration behavior preferences" on page 792. Converting a branch to a subprocess To allow for maximum flexibility and backward compatibility with the subprocess feature, the Convert to subprocess option lets users transform existing processes easily. This option is available whenever a Branch task is selected; right-clicking on it will display the contextual menu, which holds the Convert to subprocess option.
Note The term "Desktop" is defined as the desktop of the user logged on to the computer where PlanetPress Workflow is installed. These dialogs cannot be displayed on any other computer. Toggling a process’s Run on Desktop property To toggle a process's Run on Desktop property: 1. Select an active process in the Configuration Components pane. 2. In the Object Inspector Pane, change the Run on desktop property from False to True, or vice versa.
To save the current configuration: l l From the PlanetPress button, choose Save. If you were editing the current PlanetPress Watch service configuration or if you were editing a new configuration file, you are prompted with the Save As dialog instead. To save the current configuration under a new name: l l From the PlanetPress button, choose Save As. Browse to the location where you wanted to save the file, enter the new name of the configuration in the File name box and click Save.
processes are applied; see also:"Activating or deactivating a process" on page 132. Sending a Configuration to the local server 1. Open the configuration you want to use as PlanetPress Workflow’s new configuration. 2. Edit the configuration, if required. 3. When the configuration is ready to be used, from the PlanetPress Workflow button, choose Send Configuration, then Send Local. Sending a Configuration to a remote server 1.
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. Note 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.
Note l l The JScript engine is Microsoft’s JScript 5.8, which is the equivalent of JavaScript 1.5 (ECMA-262 3rd edition + ECMA-327 (ES-CP) + JSON). Enhanced JScript allows the use of more recent JavaScript syntax. Many methods - basic methods like Date.now(), String.trim(), btoa()/atob() and more advanced methods like Array.forEach() - are added to the JScript engine via the polyfill.js library.
The Script Editor and XSLT Editor The Script Editor is used to edit scripts in Run Script tasks and the XSLT Editor is used to edit scripts in Open XSLT action tasks. You can open either editor using the Open Editor button from the task's Properties dialog. When you do so, the script currently displayed in the dialog box is pasted to the editor’s scripting box. Both editors are visually identical and share almost exactly the same commands.
Importing a script To import a script: 1. In the editor, choose File > Import. The Open dialog box appears. 2. To import a script that uses a different scripting language or that was saved under a different file format, make a selection in the Files of type drop-down list. 3. Navigate to the script you want to import and select it. 4. Click OK. The script is imported, displayed and formatted according to the syntax of the language selected in the editor.
1. Choose Search | Find, or press CTRL+F. The Find Text dialog box appears. The last used string is displayed in the Text to find drop-down list box. 2. Set the search settings and options. l l l l l l l l l l Text to find: Enter a new search string or select a previous search from the dropdown list. Case sensitive: Select to limit the search to instances of text with the same case as the text in the Text to find box.
4. To find the next matching string, choose Search | Find Again or press F3. Find and replace Strings in a Script The Replace With dialog box lets you search for and replace text strings in the editor. The available options help you limit the search, making replacements quicker and easier. To find and replace strings in a script: 1. Choose Search | Replace, or press CTRL+R. The Replace With dialog box appears. The last used strings are displayed in the Text to find and Replace with boxes. 2.
reaches the end of the script or script selection, the search finishes. It does not loop back to the beginning. l l l Backward: Select to search the script backward, from the location of the cursor or from the end of the script, depending on what you choose for the origin (From cursor begins where the cursor is currently located in the script, Entire scope begins from the beginning of the script or beginning of script selection).
2. Enter a new line number in the Enter new line number box or select one from drop-down list. 3. Click OK. Bookmarks in a script Bookmarks help you identify and jump to specific places within your script. Bookmarks are displayed in the editor’s gutter, so you will not be able to see them unless the gutter is both visible and sufficiently wide. If line numbers are also displayed in the gutter, bookmarks may be harder to see. To control line number and gutter display, see "Editor Options" on page 833.
SOAP Server API Reference PlanetPress Workflow offers a SOAP Server API Reference allowing jobs to be submitted from a third party application using the SOAP protocol. SOAP is short for Simple Object Access Protocol. While there are multiple possibilities for solutions using a SOAP server implementation, the SOAP Server API Reference is specifically for submitting jobs from a SOAP client.
Note With the SOAP API reference, new SOAP plugins have been introduced. The old plugin, which could be used as an Input, Action or Output task, was renamed Legacy SOAP Client and has become obsolete. GetProcessList The GetProcessList function allows SOAP clients to request the list of available PlanetPress Workflow processes, based on their authentication credentials. Syntax GetProcessList (user name, Password) : GetProcessListResult Parameters l user name: String containing the user name.
GetProcessTaskList The GetProcessTaskList function will allow a user (a SOAP client) to remotely request the tasks list of a process. This will be useful with the PostJob method since it needs a TaskIndex. Syntax GetProcessTaskList (ProcessName, user name, Password) : GetProcessTaskListResult Parameters l ProcessName: The Name of the PlanetPress Workflow process. l user name: String containing the user name. l Password: String containing the password. This is case sensitive.
working with the SubmitJob SOAP API method since it requires a SOAPActionName. Syntax GetSOAPProcessList (user name, Password) : GetSOAPProcessListResult Description Parameters l user name: String containing the user name. l Password: String containing the password. This is case sensitive. Return Value l GetSOAPProcessListResult: Structure containing the following information: l Success: Integer indicating the system-defined Success/Error level of the operation.
Syntax PostJob (File, PostJobInfStruc , user name, Password) : PostJobResult Description Parameters l l File: base64Binary. This is an array of byte base64 encoded (see http://en.wikipedia.org/wiki/Base64). PostJobInfStruc: Structure containing any required information to prepare the file for resubmission into a PlanetPress Workflow process (see "PostJobInfoStruc" on the next page). l User name: String containing the user name. l Password: String containing the password. This is case sensitive.
PostJobInfoStruc Structure containing any required information to prepare the file for resubmission into a PlanetPress Workflow process using a SOAP client. l VariableList: Array of complex type, containing pairs of variable names and variables value. The list also contains the Job Info variables. l VariableName: String l VariableValue: String l ProcessName: String: name of the PlanetPress Workflow process. l TaskIndex: Integer: 1 based index of the task where the resubmission should start.
l ReturnJobFile – Boolean value. When true, PlanetPress Workflow SOAP server returns the job file. When false, there no file is returned to the SOAP client. (For example: when submitting a job for print, there is no need to return a file) l user name: String containing the user name. l Password: String containing the password. This is case sensitive.
Note To return the file, the process must be completed before the timeout of the server occurs. The Timeout option can be set in your PlanetPress Workflow preferences. SubmitJobInfStruc Structure containing any required information to prepare the file for a valid insertion into a PlanetPress Workflow process using SOAP. l l VariableList: Array of complex type, containing pairs of variable name and variable value. The list also contains the JobInfo variables.
Variable Name Description Example Usage (VBScript) "Watch.GetJobFileName" on page 166 Retrieves a string containing the job path and file name located in the job spool folder. Example Usage: var s = Watch.GetJobFilename(); "Watch.GetOriginalFileName" on page 168 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.
Variable Name Description Example Usage (VBScript) ("%y-%m-%d"); "Watch.Log" on page 171 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" on page 174 Displays a popup dialog box to the user (user has to be logged on). Example Usage: Watch.ShowMessage("test message"); "Watch.SetJobInfo" on page 173 Writes the value of a string to a numbered job info.
Variable Name Description Example Usage (VBScript) c:\\myfile.ps", "c:\\", 0, true); "Script.ReturnValue" on page 175 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. "Watch.
ShowFlags Integer value representing the flag to use during the execution of the command line. These flags have an effect on the execution window opened by the ExecuteExternalProgram procedure. Flag Effect 0 Hide the execution window. 1 Display the window normally. 2 Display the window minimized. 3 Display the window maximized. 4 Makes the window visible and brings it to the top, but does not make it the active window.
Perl $Watch->ExecuteExternalProgram("lpr -S 192.168.100.001 -P auto c:\myfile.ps", "c:\", 0, true); Watch.ExpandResourcePath The Watch.ExpandResourcePath method expands a Connect resource file name (e.g. invoice.OL-template) to its fully qualified path (e.g. C:\ProgramData\Objectif Lune\PlanetPress Workflow\Documents\invoice.OL-template). It returns empty ('') if the resource does not exist, and will log an empty line next to the task number if logged.
Syntax Watch.ExpandString(StringToExpand) StringToExpand A regular parseable string that may contain system variables (%u, %f), user variables (%1 to %9), octal codes, and data selections. Example This example results in expanding the string of the variables to the date value in the following format: “YYYY-MM-DD”. JavaScript var s; s= Watch.ExpandString("%y-%m-%d"); Watch.Log("Current Date is: " + s, 2); VBScript Dim s s= Watch.ExpandString("%y-%m-%d") Watch.Log "Current Date is: " + s, 2 Python s= Watch.
Return value The method returns a JSON structure like the following: { "host": "localhost", "port": 1234, "token": "fdjhfds89r378cm034573890mc3y893r092p", "method": "basic" } where: l host is the host or IP address of the server. l port is the TCP port number. l token is the authentication token. l method is the authentication method; currently, only basic is supported. Examples JavaScript Watch.GetConnectToken(); VBScript Watch.GetConnectToken Python Watch.
The arguments contain the Connect Server settings (see "OL Connect preferences" on page 806), in the form of strings (host, username and password) and a number (port). Return value The method returns a JSON structure containing the host, port, token and authentication method. For example: { "host": "localhost", "port": 1234, "token": "fdjhfds89r378cm034573890mc3y893r092p", "method": "basic" } l host is the host or IP address of the server. l port is the TCP port number.
Example In the following example, GetJobFileName() retrieves the name of the job file, which is then logged using "Watch.Log" on page 171. JavaScript var s; s = Watch.GetJobFilename(); Watch.Log("The job filename is: " + s, 3); VBScript Dim s s = Watch.GetJobFileName Watch.Log "The job filename is: " + s, 3 Python s = Watch.GetJobFileName() Watch.Log("The job filename is: " + s, 3) Perl $s = $Watch->GetJobFileName; $Watch->Log("The job filename is: " + $s, 3); Watch.
VBScript Dim s s = Watch.GetJobInfo(3) Watch.Log "Jobinfo 3's value is: " + s, 2 Python s = Watch.GetJobInfo(3) Watch.Log("Jobinfo 3's value is: " + s, 2) Perl $s = $Watch->GetJobInfo(3); $Watch->ShowMessage("Jobinfo 3's value is: " . $s, 2); Watch.GetMetadataFilename Returns the complete path and file name of the metadata file associated with the current job file. Example JavaScript Watch.GetMetadataFileName(); VBScript Watch.GetMetadataFileName Python Watch.
VBScript Watch.GetOriginalFileName Python Watch.GetOriginalFileName() Perl $Watch->GetOriginalFileName(); Watch.GetResources The Watch.GetResources method retrieves a specific type of Connect resources when it is passed a file extension (e.g. "OL-template") or all Connect resources when it is passed an empty string. Files in the Connect resources folder are visible in Workflow's Configuration Components pane under Connect Resources (see "Connect resources" on page 40).
Watch.GetVariable Returns the string value of the corresponding variable name. Note that if an undeclared variable is called using this method, an error will be generated. Syntax Watch.GetVariable(Name: String): String Example JavaScript var s; s = Watch.GetVariable("MyVariable"); Watch.Log("MyVariable's value is: " + s, 2); s = Watch.GetVariable("global.MyVariable"); Watch.Log("Jobinfo 3's value is: " + s, 2); VBScript Dim s s = Watch.GetVariable("MyVariable") Watch.
The original resource file, which is processed by this functionality, will not be deleted or altered in any way. The Workflow process will wait for the file(s) to be unpacked or copied to the Connect resources folder, so that the next plugin in line that uses an installed resource will have the latest, up-to-date version of the file. Files in the Connect resources folder are visible in Workflow's Configuration Components pane under Connect Resources (see "Connect resources" on page 40). Syntax Watch.
Level Type Text Color in Service Console 1 Error Red 2 Warning Orange 3 Information Black 4 Debug Grey Arguments Message A string representing the message that is logged in the log file. Note that the text of the message must use the locale encoding of the system where the PlanetPress Workflow software will be running, otherwise it will be unreadable. Level An integer between 1 and 4, specifying the severity level of the error message. Set message levels as follows.
JavaScript Watch.Log("this is a log", 3); Python Watch.Log("this is a log",3) Perl $Watch->Log("this is a log",3); Watch.SetJobInfo Sets the job information at the specified index to a specified string value. (See also: "Job Info variables" on page 728.) Syntax Watch.SetJobInfo(Index: Integer; Value: String) Example JavaScript Watch.SetJobInfo(3, "Job info 3 Value"); VBScript Watch.SetJobInfo 3, "Job info 3 Value" Python Watch.
Example JavaScript Watch.SetVariable("MyVariable", "Desired value"); Watch.SetVariable("global.MyVariable", "Desired value"); VBScript Watch.SetVariable "MyVariable", "Desired value" Watch.SetVariable "global.MyVariable", "Desired value"/ Python Watch.SetVariable("MyVariable", "Desired value") Watch.SetVariable("global.MyVariable", "Desired value") Perl $Watch->SetVariable("MyVariable", "Desired value"); $Watch->SetVariable("global.MyVariable", "Desired value"); Watch.
Watch.Sleep Pauses the process for the specified number of milliseconds. This can be used while waiting for something else to happen when the delay is known. Syntax Watch.Sleep(milliseconds: integer) Example In the following example, Sleep() pauses the process for 1 second (1000 milliseconds) JavaScript Watch.Sleep(1000); VBScript Watch.Sleep 1000 Python Watch.Sleep(1000) Perl $Watch->Sleep(1000); Script.
} else { Script.ReturnValue = 0 } VBScript Dim everythingOK everythingOK = true if (everythingOK = true) then Script.ReturnValue = 1 else Script.ReturnValue = 0 end if Python everythingOK = True if everythingOK: Script.ReturnValue = 1 else: Script.
Warning All operations on the Repository must be performed through this API - rather than directly accessing the physical file - since the Repository's underlying file structure may change over time. This API is guaranteed to remain compatible with future versions of the Data Repository. It is used by all Workflow tasks dealing with the Repository. Data repository structure The table below lists the different levels in the repository and what their names corresponds to: The term ... ...
In each example in this documentation, the object repoObject is deemed having been obtained through the above call to the COM object. The default Repository is always stored at the same location (see "Where to find the Data Repository" on page 99). The ConnectionString property allows to create an instance of the Repository at another location; see ConnectionString.
Name Description "ClearRepository" on page 187 Deletes all groups, keys and keysets from the repository, returning it to a blank state. Use with caution! "ClearGroupData" on page 186 Deletes all keysets inside GroupName while retaining the existing key structure. "ClearAllData" on page 186 Delete all keysets in all groups, while retaining the existing key structure. ConnectionString Creates/opens a Repository to read from and write to at a custom location.
Key Methods Name Description "AddKey" on page 183 Adds key KeyName to group GroupName. KeyName must not already exist in the specified group. Note that this method only adds a key name to the group, not a key value. See "AddValue" on page 185 for information on how to set a value for a key. "ListKeys" on page 190 Retrieves the list of all Key names and data types in Group GroupName, stored in a JSONStringObject. You should use JSON.Parse() to convert the string into an actual JavaScript object.
Name Description the ID of the newly created KeySet. "GetValue" on page 188 Performs a lookup in group GroupName and retrieves the first value for key KeyName that matches Condition. The condition is specified using basic SQL WHERE syntax. The Condition may be left empty in which case the very first value found for the specified KeyName is returned. "SetValue" on page 195 Updates multiple keysets in group GroupName by setting the key KeyName to Value for all keysets that match Condition.
Name Description in KeyValues. Every key specified in KeyValues must exist otherwise an error is raised. However, it is not required to specify all available keys in KeyValues. Only the keys specified are updated in GroupName while unspecified keys are set to an empty string. "GetKeySets" on page 187 Retrieves Keys values in GroupName for keysets that match Condition. When an asterisk * is passed as the Keys parameter, all keys are retrieved. When Condition is left empty, all keysets are retrieved.
Name Description Obtaining an instance of the Repository Object).JavaScript/* both methods perform the same task */repoObject.RemoveKeySetByID ("Users", 10);repoObject.RemoveKeySets ("Users", "ID=10");VB Script/* both methods perform the same task */repoObject.RemoveKeySetByID "Users", 10repoObject.RemoveKeySets "Users", "ID=10"" on page 1) AddGroup Creates a group named GroupName and optionally creates keys listed in keyNames. The keyNames parameter may be empty.
"AddValue" on the facing page for information on how to set a value for a key. Syntax AddKey(GroupName: string, KeyName: string) Examples In each of these examples, the object repoObject is deemed having been obtained through a call to the COM object "RepositoryLib.WorkflowRepository" (see "Obtaining an instance of the Repository Object" on page 177). JavaScript repoObject.AddKey("Users", "email"); VB Script repoObject.
repoObject.AddKeySets("Users", '[{"FirstName": "John","LastName": "Smith"},{"FirstName": "Richard", "LastName": "Doe"}]'); VB Script repoObject.AddKeySets "Users"," [{""FirstName"":""John"",""LastName"":""Smith""}, {""FirstName"":""Richard"",""LastName"": ""Doe""}]" Inserting a row In most cases, you won't need to insert or update a row in a script, as this can be easily done through the the Push to Repository action task. However, in some cases you might want to script it for simplicity's sake.
Syntax AddValue(GroupName: string, KeyName: string, Value: string): integer64 Examples In each of these examples, the object repoObject is deemed having been obtained through a call to the COM object "RepositoryLib.WorkflowRepository" (see "Obtaining an instance of the Repository Object" on page 177). JavaScript repoObject.AddValue("Users", "LastName", "Smith"); VB Script repoObject.
ClearRepository Deletes all groups, keys and keysets from the repository, returning it to a blank state. Use with caution! Syntax ClearRepository() GetKeySets Retrieves Keys values in GroupName for keysets that match Condition. When an asterisk * is passed as the Keys parameter, all keys are retrieved. To ensure backward compatibility with versions prior to 2018.1, all keys are retrieved when the Keys parameter is left empty. It is however recommended to use an asterisk instead.
myKeySet = repoObject.GetKeySets("Users", " [""FirstName"",""LastName""]", "Gender='M'") Querying a single row This JavaScript example shows how to get one or more rows from the repository and use them in the process. The script gets 3 fields ("firstname", "lastname" and "email") from the CustomerID field. It assumes there's a local variable called %{CustomerID} set in the workflow process. var CustomerID = Watch.GetVariable("CustomerID"); var repoObject = new ActiveXObject ("RepositoryLib.
Condition may be left empty in which case the very first value found for the specified KeyName is returned. Syntax GetValue(GroupName: string, KeyName: string, Condition: string) Examples In each of these examples, the object repoObject is deemed having been obtained through a call to the COM object "RepositoryLib.WorkflowRepository" (see "Obtaining an instance of the Repository Object" on page 177). JavaScript var myValue = repoObject.
"CustomerID='CURD654321'"); /* Update Values */ repoObject.SetValueByID("customers", "FormOfAddress", "Mr.", keySetID); repoObject.SetValueByID("customers", "Country", "US", keySetID); repoObject.SetValueByID("customers", "Language", "EN", keySetID); ListGroups Retrieves the list of all group names in the Repository, stored in a JSONStringArray.
Examples In each of these examples, the object repoObject is deemed having been obtained through a call to the COM object "RepositoryLib.WorkflowRepository" (see "Obtaining an instance of the Repository Object" on page 177). JavaScript var repoObject = new ActiveXObject ("RepositoryLib.WorkflowRepository"); var myList = JSON.parse(repoObject.ListKeys("Internal")); for (var Property in myList) { /* Log all key names for group Users to the console */ Watch.
VB Script repoObject.RemoveGroup "Users" RemoveKey Removes existing key KeyName from group GroupName. The key to remove must exist in the group, otherwise an error is raised. All values for the key, in all keysets for the group, are removed. Note that when the Group contains a large number of KeySets, this operation may take a while.
Examples In each of these examples, the object repoObject is deemed having been obtained through a call to the COM object "RepositoryLib.WorkflowRepository" (see "Obtaining an instance of the Repository Object" on page 177). JavaScript /* both methods perform the same task */ repoObject.RemoveKeySetByID("Users", 10); repoObject.RemoveKeySets("Users", "ID=10"); VB Script /* both methods perform the same task */ repoObject.RemoveKeySetByID "Users", 10 repoObject.
Deleting a row This script attempts to delete a client from the rows, then returns "true" or "false" in JobInfo variable %9 as a response. var CustomerID = Watch.GetVariable("CustomerID"); var repoObject = new ActiveXObject ("RepositoryLib.WorkflowRepository"); var deletedCount = JSON.parse(repoObject.RemoveKeySets ("customers","customerID = '" + CustomerID + "'")); var answer = (deletedCount > 0) ? "true" : "false"; Watch.SetJobInfo(9, answer); RenameGroup Renames group oldName to newName.
Syntax RenameKey(GroupName: string, oldName: string, newName: string) Examples In each of these examples, the object repoObject is deemed having been obtained through a call to the COM object "RepositoryLib.WorkflowRepository" (see "Obtaining an instance of the Repository Object" on page 177). JavaScript repoObject.RenameKey("Users", "LastName", "SurName"); VB Script repoObject.
repoObject.SetValue("Users", ); repoObject.SetValue("Users", AND MaritalStatus='Married'" repoObject.SetValue("Users", AND MaritalStatus=''" ); "FormOfAddress", "Mr.", "Gender='M'" "FormOfAddress", "Ms.", "Gender='F' ); "FormOfAddress", "Miss", "Gender='F' VB Script repoObject.SetValue "Users", "FormOfAddress", "Mr.", " Gender=""M"" " repoObject.SetValue "Users", "FormOfAddress", "Ms.", " Gender=""F"" AND MaritalStatus=""Married"" " repoObject.
Examples In each of these examples, the object repoObject is deemed having been obtained through a call to the COM object "RepositoryLib.WorkflowRepository" (see "Obtaining an instance of the Repository Object" on page 177). JavaScript /* both methods perform the same task */ repoObject.SetValueByID("Users", "FormOfAddress", "Mr.", 10); repoObject.SetValue("Users", "FormOfAddress", "Mr.", "ID=10" ); VB Script /* both methods perform the same task */ repoObject.SetValueByID "Users", "FormOfAddress", "Mr.
Metadata API The "Metadata" on page 76 is a hierarchical structure describing the data in a job. It is composed of 5 basic levels, from top to bottom: Job, Group, Document, Datapage, and Page. There is a set of plugins that allow to edit the Metadata during a Workflow process (see "Metadata tasks" on page 582), but you can also manipulate the Metadata in your process via scripts using the Metadata API.
MetaFile The MetaFile object represents the physical Metadata file and is used to load and save the Metadata from and to the file system. It also publishes the "MetaJob" on page 201 object, which is the root node of the Metadata structure. The MetaFile object is the only object that is formally published to the user. All the other objects are obtained, directly or indirectly, through methods of this object. A standalone, empty MetaFile object can be created using CreateObject ("MetadataLib.
at the top of the Metadata tree structure. "LoadFromFile(const String Filename )" below Loads a Metadata file from the file system. "SaveToFile(const String Filename)" below Saves a Metadata file to the file system. "Export(const String Filename, TExportFormat Format)" below Exports the Metadata in a non-native format. LoadFromFile(const String Filename ) Loads a Metadata file from the file system. This function throws an error when the Metadata file is invalid or when it can't be found.
Format in which to save the file. The only value currently supported is efXml21 (value = 0), which is an XML format corresponding to the former Metadata native file format. Exceptions l EOleException: The specified export format is invalid. MetaJob Properties Name Type Description "Attributes" on page 232 MetaCollection Returns the node's attribute collection. (See the "Metadata Attributes reference" on page 234.) "Count" on page 218 Integer Returns the number of child nodes.
2: The node and all of its parents are selected. Methods Name Return type Description "Add(Integer Index)" on page 221 Node Adds a new child node to the current node. "AttributeByIndex(Integer Index)" on page 221 String Returns the specified attribute's value. "AttributeByName(const String Name)" on page 222 String Returns the value of the attribute of the specified name. "Clear()" on page 222 Deletes all the child nodes as well as the attributes and fields.
Group(Integer Index), see "Item(Integer Index)" on page 226 Node Returns the MetaGroup at the specified index. "PageCount()" on page 227 Integer Returns the total number of pages present underneath this node. "Paste()" on page 227 Node Inserts the clipboard's content as the last child of the current node. "PasteAt(Integer Index)" on page 227 Node Inserts the clipboard's content as a child node at the specified index.
MetaGroup Properties Name Type Description "Attributes" on page 232 MetaCollection Returns the node's attribute collection. (See the "Metadata Attributes reference" on page 234.) "Count" on page 218 Integer Returns the number of child nodes. "Fields" on page 241 MetaCollection Returns the node's field collection. "Index" on page 218 Integer Gets the index of the node in its parent. "NodeType" on page 219 TNodeType Returns the node type of the current Node.
Methods Name Return type Description "Add(Integer Index)" on page 221 Node Adds a new child node to the current node. "AttributeByIndex(Integer Index)" on page 221 String Returns the specified attribute's value. "AttributeByName(const String Name)" on page 222 String Returns the value of the attribute of the specified name. "Clear()" on page 222 Deletes all the child nodes as well as the attributes and fields. "Copy() " on page 222 Places a copy of the node in the metadata clipboard.
"IndexInJob()" on page 226 Integer Returns the index of this page in the job, taking all the pages from all the datapages from all the documents from all the groups into account. "Item(Integer Index)" on page 226 Node Returns the child (node) item located at the specified index. Document(Integer Index), see "Item(Integer Index)" on page 226 Node Returns the MetaDocument at the specified index. "PageCount()" on page 227 Integer Returns the total number of pages present underneath this node.
"SelectedIndexInJob()" on page 230 Integer "Sort(const String Name, optional TSortFlags Flags, optional const String Name2, optional TSortFlags Flags2, optional const String Name3, optional TSortFlags Flags3)" on page 230 Index of the page among all the selected pages in the Job. Sorts the sub-nodes according to a number of criteria. MetaDocument Properties Name Type Description "Attributes" on page 232 MetaCollection Returns the node's attribute collection.
"SelectedCount" on page 220 Integer Returns the number child nodes selected to be output. (See also: "Including or excluding nodes from the output" on page 216.) "SelectedState" on page 220 Integer Returns an integer indicating whether the node is selected or not, taking its parents into account. 0: The node is not selected. 1: The node is selected but one of its parents is not. 2: The node and all of its parents are selected.
"FieldByName(const String Name)" on page 224 String Returns the value of field of the specified name. "FieldByNameIndex(const String Name, Integer Index)" on page 225 String Returns the value of the N'th field of the specified name. "IndexInGroup()" on page 225 Integer Returns the index of this page in its parent group, taking all the pages from all the datapages from all documents into account.
reference for the numerical values to use. "SelectedPageCount()" on page 230 Integer Returns the number of pages selected to be output that are underneath this node. "SelectedIndexInGroup()" on page 229 Integer Index of the page among all the selected pages in its parent Group. "SelectedIndexInJob()" on page 230 Integer Index of the page among all the selected pages in the Job.
"NodeType" on page 219 TNodeType Returns the node type of the current Node. Note that the TNodeType type is not defined in an Active Script environment, such as the Run Script task. See the detailed reference for the numerical values to use. "Parent" on page 219 Node Returns the parent node of the current node. "Selected" on page 219 Bool Indicates whether or not the Node is set to be printed. "SelectedCount" on page 220 Integer Returns the number child nodes selected to be output.
well as the attributes and fields. "Copy() " on page 222 Places a copy of the node in the metadata clipboard. "Cut()" on page 222 Removes the node and places it in the metadata clipboard. "Delete()" on page 223 Deletes the node. "FieldByIndex(Integer Index)" on page 224 String Returns the specified field's value. "FieldByName(const String Name)" on page 224 String Returns the value of field of the specified name.
Index)" on page 226 specified index. "Paste()" on page 227 Node Inserts the clipboard's content as the last child of the current node. "PasteAt(Integer Index)" on page 227 Node Inserts the clipboard's content as a child node at the specified index. "Select(TSelectWhat SelectWhat)" on page 228 Selects the child nodes according to the SelectWhat parameter. The TSelectWhat type is not defined in an Active Script environment, such as the Run Script task.
MetaPage Properties Name Type Description "Attributes" on page 232 MetaCollection Returns the node's attribute collection. (See the "Metadata Attributes reference" on page 234.) "Fields" on page 241 MetaCollection Returns the node's field collection. "Index" on page 218 Integer Gets the index of the node in its parent. "NodeType" on page 219 TNodeType Returns the node type of the current Node.
"Cut()" on page 222 Removes the node and places it in the metadata clipboard. "Delete()" on page 223 Deletes the node. "FieldByIndex(Integer Index)" on page 224 String Returns the specified field's value. "FieldByName(const String Name)" on page 224 String Returns the value of field of the specified name. "FieldByNameIndex(const String Name, Integer Index)" on page 225 String Returns the value of the N'th field of the specified name.
Node Node objects are items in the Metadata's single-rooted tree-like structure. Each Node item is a collection of its lower level Node type.
Selected property set to true will print. If Selected is false, its children will not print, regardless of their Selected status. Methods like Count, Index or PageCount work on all nodes, regardless of their Selected attributes. Methods whose names start with "Selected" however are meant to work with selected nodes. In other words, "Selected..." methods only consider nodes that are set to be part of the output.
Node properties and methods reference This topic gives detailed information about all properties and methods of the Node object. The availability of a property or method with an actual Node object, however, depends on the type of the Node: "MetaJob" on page 201, "MetaGroup" on page 204, "MetaDocument" on page 207, "MetaDatapage" on page 210, and "MetaPage" on page 214. Properties Attributes Returns the attribute collection (MetaCollection) of the current node. See "Attributes" on page 232.
NodeType Returns a value representing the type (TNodeType) of the current node. Return value Node type 0 Job 2 Group 3 Document 5 Datapage 6 Page Note In an Active Script environment, such as the Run Script task, the return value is a numerical value. However, in environments where the TNodeType type is defined, the node types are ntJob, ntGroup, ntDocument, ntDatapage, and ntPage. Parent Not available in MetaPage Returns the parent node of the current node.
(writing) Parameters: Select True to mark as selected to be printed, false if it is not to be printed. SelectedCount Not available in MetaPage Returns the number of child nodes in the current node that are set to be output, meaning that they have their Selected property set to true, taking the parents into account. Returns: The number (integer) of child nodes that will be included in the output.
Methods Add(Integer Index) Not available in MetaPage Adds a new Node as a child of the current node. Parameters: Index Specifies where in the child list to add the node. The node is inserted before the node at the specified index. In other words, the node being inserted becomes the node found at Index. To add a node at the start of the collection, use 0. To add it at the end, use Node.Count. Returns: Reference to the Node that was added. Exception: l EOleException: The value of Index is invalid.
AttributeByName(const String Name) Returns the value of the metadata attribute of the specified name. Parameters: Name Name of the attribute to retrieve. Returns: The value of the attribute as a string. If an attribute named Name is not found, an empty string is returned. Clear() Not available in MetaPage Deletes all the child nodes of the current node, as well as all of its attributes and fields.
Warning The node being cut is removed immediately. Any reference to it or its child nodes becomes invalid. The results of calling methods of such references is undefined. DatapageCount() MetaJob and MetaGroup only Returns the number of MetaDatapage nodes in all child nodes. This methods recursively goes through all child nodes to count the total number of MetaDatapage that are contained underneath the current node. Returns: Total number (integer) of MetaDatapage nodes found under the current node.
Returns: Total number (integer) of MetaDocument nodes found under the current node. FieldByIndex(Integer Index) Returns the value of the Metadata Field at the specified index. (See: "Fields" on page 241.) Parameters: Index 0-based index of the field value to retrieve. The index of the first element is 0 and the index of the last is Count-1. Returns: The value of the field as a string. Exception: l EOleException: Index is lower than 0 or higher than Count-1.
FieldByNameIndex(const String Name, Integer Index) Returns the value of the n'th metadata field of the specified name. This method can be used to retrieve the value of a specific field when more than one field has the same name. Parameters: Name Name of the field to retrieve. Index Ordinal of the field to retrieve. To retrieve the value of the first field named Name, use 0. For the second field, use 1, and so on. Returns: The value of the specified field as a string.
Returns the index of this page in its parent group, taking all the pages from all the datapages from all documents into account. Returns: Absolute index (integer, 0-based) of the page within all the pages under the parent group. IndexInJob() Not available in MetaJob Returns the index of this page in the job, taking all the pages from all the datapages from all the documents from all the groups into account. Returns: Absolute index (0-based) of the page within all the pages in the job.
Exception: l EOleException: Index is lower than 0 or higher than Count-1. PageCount() MetaJob, MetaGroup and MetaDocument only Returns the number of MetaPage in all child nodes. This methods recursively goes through all child nodes to count the total number of MetaPage that are contained underneath the current node. Returns: Total number of MetaPage found under the current node. Paste() Not available in MetaPage Inserts the contents of the metadata clipboard as the last child node of the current node.
Parameters: Index Specifies where in the child list to add the node. The node is inserted before the node at the specified index. In other words, the node being inserted becomes the node found at Index. To add a node at the start of the collection, use 0. To add it at the end, use Node.Count. Returns: Reference to the top node being pasted. Exceptions: l l EOleException: The node type of the clipboard and the current node don't match.
Returns: The number of such nodes, if any. If the current node is not selected or one of its parents is not, it returns 0. SelectedDocumentCount() MetaJob only Returns the number of documents under the current node that are set to be part of the output, i.e. that have their Selected property set to true, as well as all of their parents. Returns: The number of such nodes, if any. If the current node is not selected or one of its parents is not, it returns 0.
SelectedIndexInJob() Not available in MetaJob Returns the index of this page in the job, taking only the selected pages from all the datapages from all the documents from all the groups into account. Returns: Absolute index (0-based) of the page within all the selected pages in the job. If the page is not set to be output (i.e. its SelectedState is different than ssTrue), it returns -1.
Value Meaning 1 The name refers to an Attribute rather than a field. 2 The sort is done in descending order (i.e. the highest to the lowest). 4 The field is an integer numeric value. Note In an Active Script environment, such as the Run Script task, you must work with the numerical values. In environments where the flags are defined, you may instead use sfAttribute (= 1), sfDescending (= 2), and sfNumeric (= 4). All the parameters to this method except for the first one are optional.
Flags2 (optional) Set of flags that modify how the sorting on Name2 is done. Name3 (optional) Name of the field or attribute contained in each sub-node whose value will be used as the third sort criteria. If it is an attribute instead of a field, this needs to be specified in the Flags3 parameter. Flags3 (optional) Set of flags that modify how the sorting on Name3 is done. Exceptions: l l l EOleException: Specified field or attribute does not exist in one of the sub-nodes.
Warning Attributes are intended for system-defined data. Please restrict user-defined data to Fields, and do not modify the Attributes. Properties Name Type Description Count Integer Returns the number of elements in the collection. Methods Name Return type Description "Add(const String Name, const String Value)" on page 243 Adds a new element to the collection or overwrites its value. Clear() Clears all elements from the collection.
Metadata Attributes reference An Attribute is a read-only, system-defined element which holds certain information about a certain node in the "Metadata" on page 76 structure. This information can be static (e.g. the size of a physical page) or evaluated on-the-fly (e.g. the number of documents in a group). Attributes are non-repetitive (i.e. name is unique) and do not persist through Metadata recreation.
In the following table, the last 5 columns indicate at which level the corresponding attribute is available. This also depends on the type of job, however. Note In the Metadata file created for an OL Connect job: l l Only three levels are filled with actual data about the job: Job, Group and Document. Only Index and Count attributes are used. Attribute Description Categor y J o b Gro up Docum ent DataEncoding (optional) Name of the character encoding.
Attribute Description Categor y J o b Gro up Docum ent Title Title of the source document. Producti on X X X Producer Name of the software that created the Metadata. Producti on X X X Creator Name of the software that created the source of the Metadata. Producti on X X X TargetDevice Name of the device for which the Metadata and associated data is intended.
Attribute Description Categor y point values separated by a colon indicating the media size in typographical points (ex: 612:792). g Orientation "Rotate0", "Rotate90", "Rotate180" or "Rotate270", indicating respectively portrait, landscape, rotated portrait and rotated landscape. Finishin g Side "Front" or "Back"; indicates whether the page is on the front or the back of the paper sheet. This attribute is a "best effort" and is devicedependent.
Attribute Description Categor y J o b Gro up Docum ent Datap age Pa ge Duplex "None", "DuplexTumbl e" or "DuplexNoTu mble"; indicates a change of the duplex status. Finishin g X X X X X InputSlot Devicedependent identifier of the media source. Finishin g X X X X X OutputBin Devicedependent identifier of the media destination. Finishin g X X X X X Weight Devicedependent weight of the media. Finishin g X X X X X MediaColor Devicedependent color of the media.
Attribute Description Index Categor y J o b Index/C ount IndexInDocument Returns the Absolute index of the node within all the nodes under the parent Document. Index/C ount IndexInGroup Returns the Absolute index of the node within all the nodes under the parent Group. Index/C ount IndexInJob Returns the Absolute index of the node within all the nodes under the parent Job.
Attribute Description Categor y J o b Gro up Docum ent PageCount Index/C ount X X X SelectedCount Index/C ount X X X SelectedDocument Count Index/C ount X SelectedDatapage Count Index/C ount X X SelectedPageCoun t Index/C ount X X SelectedIndexInDo cument Returns the Absolute index of the node within all the selected nodes under the parent Document. Index/C ount SelectedIndexInGro up Returns the Absolute index of the node within all the selected nodes under the parent Group.
Attribute Description Categor y J o b Index/C ount X Gro up Docum ent Datap age Pa ge of the node within all the selected nodes under the parent Job. NumCopies Indicates how many times the job is set to execute, as set when printing using a Windows driver. Fields A Field is a read-write, user-defined element: a name/value pair, where the name is caseinsensitive. It holds custom information about a certain "Node" on page 216 in the Metadata structure. Fields are repetitive (i.e.
Methods Name Return type Description "Add(const String Name, const String Value)" on the facing page Adds a new element to the collection or overwrites its value. "Add2(const String Name, const String Value, TAddFlags Flags, Integer Index (optional))" on the facing page Adds a new element with a customizable behavior if the name already exists. Note that the TAddFlags type is not defined in an Active Script environment, such as the Run Script task.
Attributes and Fields methods This topic lists the methods of the "Attributes" on page 232 and "Fields" on page 241 collection container objects. Note that the Add2() and the ItemByNameIndex() functions are only available with Fields. Fields support multiple entries with the same name, which is forbidden with Attributes. Add(const String Name, const String Value) Adds a new element to the collection. If the specified name already exists in the collection, the new value overwrites the previous one.
Name of the field to add. The name must adhere to this syntax rules: start with a letter, followed by zero or more letters, numbers, underscore or dash. The name is not casesensitive. Value Value of the element. There is no restriction on the content, although binary is discouraged. Flags Additional flags for the method. This determines how the method behaves when the specified name already exists.
Parameters Name Name of the element to count. Returns Number of occurrences of elements with the specified name. Note that when counting an attribute by name, the only possible values are 1 and 0 because attributes can only occur once. Delete(Integer Index) Delete a specified element from the collection. Parameters Index 0-based index of the element to delete. The first element in the collection is at index 0 and the last is at Count-1.
Exceptions l EOleException Index is lower than 0 or higher than Count-1. ItemByName(const String Name) Returns the value of the element of the specified name. Parameters Name Name of the element to retrieve. Returns The value of the element as a string. If no element is found, an empty string is returned. Fields only: If more than one field has the specified name, the value of the first one in the list is returned.
fifth but there are only three), an empty string is returned. Exceptions l EOleException Index is lower than 0. Name(Integer Index) Returns the name of the element at the specified index. Parameters Index 0-based Index of the element value to retrieve. The first element in the collection is at index 0, and the last is at Count-1. Returns The name of the element as a string. Exceptions l EOleException Index is lower than 0 or higher than Count-1.
Methods Name Returns Description "Add(const String Key, Integer Value)" below Integer Adds a new item in the sort list. Clear() "Count()" on the facing page Empties the sort list, removing all the strings. Integer "Delete(Integer Index)" on the facing page Returns the number of elements in the list. Removes an item from the sort list. "Find(const String Key)" on the facing page Integer Finds an item in the list and returns its index.
Integer associated with the string. This value is not used and will not be changed by the sort class. If the string goes to another position in the list after the sort, this value will move as well to the new index of the string. Return value: 0-based index (integer) of the newly added string. It is therefore always equal to Count-1. Count() Returns the number of strings in the list. Return value: Integer. Number of strings in the list. If the list does not contain any string, the return value is 0.
Return value: String. Value of the key at the specified index. Exceptions l EOleException Index is lower than 0 or higher than Count-1. Sort() Sorts the items in the list according to their key. The sort performed is a simple alphabetical string sort: 30 comes after 200. The strings are expected to be formatted correctly to return the desired order (ex: "030", "200" will be sorted with 30 first and then 200). SortByValue() Sorts the items in the list according to their value instead of the key.
l l l The PDF object implements the IPDF interface. This interface defines methods to open, close and save files, as well as to access meta information such as the XMP attachment. The interface also implements a Pages collection object to access the list of pages in the PDF. (See "PDF object" on page 253.) The Pages collection object implements the IPages interface. This interface defines methods to add, import, move or delete pages as well to access individual Page items.
STRING GetXYML() JavaScript implementation: myPDF.Open("C:\\PDFs\\SomeDocument.pdf", false); var myXYML = myPDF.GetXYML(); Note: In JavaScript, all method calls must include parentheses, even for methods that do not require arguments (e.g. Watch.GetPDFEditObject(), myPDF.Pages() ). VBScript implementation: myPDF.Open "C:\\PDFs\\SomeDocument.pdf", false myXYML = myPDF.GetXYML Properties Syntax PROPERTY_TYPE propName Examples INTEGER Orientation JavaScript implementation: var currentOrientation = myPDF.
Examples IPDFRect { LONG left, LONG top, LONG right, LONG bottom } JavaScript implementation: var pdfRect = myPDF.Pages(0).Size(); var pageWidth = pdfRect.right - pdfRect.left; VBScript implementation: set pdfRect = myPDF.Pages(0).Size pageWidth = pdfRect.right - pdfRect.left PDF object The PDF object implements the IPDF interface. This interface defines methods to open, close and save files, as well as to access meta information such as the XMP attachment.
"Create(filename)" on page 256 "GetInfos()" on page 257 Creates a new empty PDF file. "IPdfInfos" on page 281 "GetVersion(*major, *minor)" on page 257 Retrieves the contents of the Document Information Dictionary from the PDF. Returns the version of the underlying PDF file format. For example, for PDF 1.7, 1 is returned in major and 7 is returned in minor. Note that this method is not available in scripts. "GetXMP()" on page 258 STRING Retrieves the XMP attachment embedded in the PDF.
"Pages()" on page 261 IPages (see "Pages collection object" on page 265) Provides access to the Pages collection of the PDF. "Print(printername)" on page 261 Prints a range of PDF pages to the specified Windows printer with default options. "PrintEx(printername, *PdfPrintParams)" on page 262 Prints a range of PDF pages to the specified Windows printer with specific printer options stored in an "IPdfPrintParams" on page 282 structure. "Save()" on page 262 Saves changes to the PDF file.
IPDF methods reference Close() Closes the PDF file. If changes were made but not saved, they are silently lost. All IPage objects must be released before closing a PDF. Syntax VOID Close () Note: Before using Close() in Javascript, you should call the CollectGarbage() global method to ensure all references to pages are properly discarded. This additional statement is not required with other languages. For instance: var objPDF = Watch.GetPDFEditObject(); objPDF.Open(Watch.
ConvertToVDX(pdfFilename, ppmlFilename) Converts a PDF file to a VDX file by adding the necessary entries in the catalog and root dictionaries as well as embedding a PPML file as a stream object in the PDF. The validity of the PPML is left to the caller. This method opens, modifies, saves and closes the specified PDF file. This means that, contrary to the other methods of the IPDF interface, this method works on - and only on - the PDF file specified by the first argument; IPDF.Open() or .
major Pointer to a LONG that receives the major version number. minor Pointer to a LONG that receives the minor version number. GetXMP() Retrieves the XMP attachment embedded in the PDF. Syntax STRING GetXMP () Return value String containing the complete text of the PDF's XMP attachment. GetXYML() Retrieves the entire extractable text from the PDF in XYML format. Syntax STRING GetXYML () Return value A string containing the complete text of the PDF in XYML format.
Return value True if the file is password-protected, False otherwise. MergeWith(pdfFilename) Merges the pages of pdfFilename (the source) onto the pages of the current PDF (the destination ). Each page of the source is overlaid transparently onto the corresponding destination page, 1 on 1, 2 on 2, 3 on 3, etc. The source must have the same number of pages than the destination and each pair of pages should have the same size. The resulting file is not optimized. This method is the same as calling: PDF.
VOID MergeWith2 (STRING pdfFilename, LONG xnum, LONG ynum, LONG xoffset, LONG yoffset, FLOAT scaleFactor) pdfFilename Name of the source PDF from which pages are taken. xnum Number of columns. ynum Number of rows. xoffset Horizontal space to put between the top left corner of each source page, in points. yoffset Vertical space to put between the top left corner of each source page, in points. scaleFactor Scale at which to draw on source pages on the destination. Use 1.0 to draw the page at its nominal size.
OpenEx(filename, password, doRepair) Opens an existing, password-protected PDF, optionally repairing it. See also: "IsProtected (filename)" on page 258. Syntax VOID OpenEx (STRING filename, STRING password, BOOL doRepair) filename Name of the file to open. password Password to open the file. doRepair Boolean. If true, the software automatically attempts to repair the file if it is found to be damaged or corrupt. Otherwise, the operation fails if the file is damaged.
LONG toPage ) printerName (optional) Name of the printer to print to. The default options of the printer will be used. If NULL, the default printer is used. fromPage 0-based index of the first page to print. toPage 0-based index of the last page to print. To print all pages from fromPage to the end, use -1. PrintEx(printername, *PdfPrintParams) Prints a range of PDF pages to the specified Windows printer with specific printer options stored in an "IPdfPrintParams" on page 282 structure.
Syntax VOID Save (BOOL optimize) optimize If true, the file is optimized before being written to disk, i.e. objects are garbage-collected and/or regenerated, the PDF is linearized, etc. SetInfos(Infos) Sets the contents for the PDF's Document Information Dictionary. Syntax VOID SetInfos ( IPdfInfos Infos ) Infos "IPdfInfos" on page 281 structure containing the new values. setPageCacheSize(cacheSize) Sets the maximum number of IPage objects in the cache. Calling this method flushes the cache.
tolerableDeltaWidth Tolerable delta width factor value. tolerableDeltaHeight Tolerable delta height factor value. tolerableDeltaFontHeight Tolerable delta font height factor value. tolerableGap Tolerable delta gap between words factor value. SetVersion (major, minor) Sets the version of the underlying PDF file format. This is applied when the file is saved. See also: "Save()" on page 262. Syntax VOID SetVersion ( LONG major, LONG minor ) major Major version number. minor Minor version number.
Pages collection object The Pages collection object implements the IPages interface. This interface defines methods to add, import, move or delete pages as well to access individual Page items. It is accessed via the "PDF object" on page 253. IPages methods Name Return type Description "Count()" on the next page LONG Returns the number of items in the Pages collection, in other words the number of pages in the PDF. "Delete()" on the next page Deletes a page from the PDF.
"Item(index)" on page 269 IPage (see "Page object" on page 270 ) "Move(index, count, offset)" on page 269 Returns a Page object from the PDF. Note that sinceItem() is the collection's default method, it can be omitted altogether (e.g. IPages(0) is the same as IPages.Item(0)). Moves a range of pages within the same PDF. IPages methods reference Count() Returns the number of items in the Pages collection, in other words the number of pages in the PDF.
VOID ExtractTo ( STRING destFilename, LONG srcIndex, LONG srcCount, BOOL optimize ) destFilename Name of the PDF to create with the specified pages. srcIndex 0-based index of the first page to copy. srcCount Number of contiguous pages starting from srcIndex to extract. optimize If true, optimize (linearize and garbage-collect) the output file. Insert(index, *mediaSize) Inserts a new blank page in the PDF file. See also: "Count()" on the previous page.
InsertFrom(srcFilename, srcIndex, srcCount, destIndex) Inserts pages from another PDF file into this one. All relevant resources are copied with the pages. See also: "Count()" on page 266. Syntax VOID InsertFrom ( STRING srcFilename, LONG srcIndex, LONG srcCount, LONG destIndex ) srcFilename Name of the PDF from which pages are retrieved. srcIndex 0-based index of the first page to copy. srcCount Number of contiguous pages starting from srcIndex to insert.
srcPages IPages collection from which the pages are retrieved. srcIndex 0-based index of the first page to copy. srcCount Number of contiguous pages starting from srcIndex to insert. If srcCount is -1, all pages from srcIndex up to the end are inserted. destIndex 0-based index of the position where to insert the pages. They will be inserted before the page at index destIndex. To insert the pages at the end, use IPages.Count(). Item(index) Returns a Page object from the PDF.
index 0-based index of the first page of the range. count Number of contiguous pages to move. offset Number of hops to move the pages. If negative, the pages are moved towards the beginning of the file. If positive, towards the end. Page object The Page object implements the IPage interface. This interface defines methods to retrieve information from a page or modify it. A page may also be drawn on a Windows Device Context (DC), but note that access to DCs may not be available in all scripting languages.
"MediaSize()" on page 275 "IPdfRect" on page 282 Returns the size of the actual media, i.e. the sheet of paper. "setIncludeBorders (pbIncludeBorders)" on page 276 Sets whether or not borders are included for IPage.ExtractText2(). If true, a character is considered to be inside the region using the 30% rule (i.e. at least 30% of the character must be enclosed in the region). Otherwise, the character must be entirely enclosed in the region to be returned.
"Size()" on page 280 "IPdfRect" on page 282 Returns the size of the rectangle that is used to clip (crop) the content of the page before applying it to the medium, in points. IPage methods reference Draw(context, scale, offsetX, offsetY) Draws the page onto the device context. This method is highly dependent on the state of the device context and there are a few interaction pitfalls to lookout for. See below for details. Note: This method is not available in all scripting environments.
1:1 mapping between logical space (SetWindowExtEx) and device space (SetViewportExtEx). Since MM_TEXT has its origin at the top instead of the bottom, the drawing is done vertically mirrored; this means that the other mapping modes may not work because they are based at the bottom. A 100% zoom is obtained by setting the scale to the ratio of the device dpi divided by 72. The Acrobat library automatically clips the drawing based on the viewable portion of the DC.
FLOAT bottom, FLOAT right, FLOAT top ) left Distance in inches of the left limit of the region from the left edge of the /CropBox. bottom Distance in inches of the bottom limit of the region from the bottom edge of the /CropBox. right Distance in inches of the right limit of the region from the left edge of the /CropBox. top Distance in inches of the top limit of the region from the bottom edge of the /CropBox. Return value A string containing the text extracted from the specified region.
ExtractText2(left, top, right, bottom) Returns the text located inside the region bounded by the left, top, right and bottom parameters. If multiple lines are found, they are separated by a CR-LF pair. Syntax VOID ExtractText2 ( FLOAT left, FLOAT top, FLOAT right, FLOAT bottom ) left Distance in inches of the left limit of the region from the left edge of the /CropBox. Must be between 0 and 5000. top Distance in inches of the top limit of the region from the top edge of the /CropBox.
Return value An "IPdfRect" on page 282 structure containing the dimensions, in points, of the media size. Cannot be NULL. setIncludeBorders(pbIncludeBorders) Sets whether or not borders are included for IPage.ExtractText2(). If true, a character is considered to be inside the region using the 30% rule (i.e. at least 30% of the character must be enclosed in the region). Otherwise, the character must be entirely enclosed in the region to be returned.
Tolerable gap between words factor value. Merge(imageFile, left, top, rotateAngle, scaleFactor) Inserts an image file and places it on the page at a specific location. Supported image types are: JPG and PNG. It calls MergeToLayer internally. Syntax VOID Merge ( STRING imageFile, FLOAT left, FLOAT top, FLOAT rotateAngle, FLOAT scaleFactor ) imageFile Full name of the image to insert on the current page. left Coordinate at which to place the left edge of the image from the left edge of the page, in points.
IPDF.MergeWith() by first inserting the pages from an external file, merging them and then deleting them, but with more flexibility. Syntax VOID Merge2 ( IPage srcPage, FLOAT left, FLOAT top, FLOAT rotateAngle, FLOAT scaleFactor ) srcPage IPage object to overlay on the current page. left Coordinate at which to place the left edge of the image from the left edge of the page, in points. top Coordinate at which to place the top edge of the image from the top of the page, in points.
VOID MergeToLayer ( STRING imageFile, FLOAT left, FLOAT top, FLOAT rotateAngle, FLOAT scaleFactor, STRING layerName ) imageFile Full name of the image to insert on the current page. left Coordinate at which to place the left edge of the image from the left edge of the page, in points. top Coordinate at which to place the top edge of the image from the top of the page, in points. rotateAngle Angle at which to rotate counter-clockwise the inserted image, in degrees.
FLOAT top, FLOAT rotateAngle, FLOAT scaleFactor, BSTRlayerName ) srcPage IPage object to overlay on the current page. left Coordinate at which to place the left edge of the image from the left edge of the page, in points. top Coordinate at which to place the top edge of the image from the top of the page, in points. otateAngle Angle at which to rotate counter-clockwise the inserted image, in degrees. The rotation is done after the image is placed at (left, top) and centered around that point.
should be left out of the drawing, although there may be empty areas within it. See also: "MediaSize()" on page 275. Syntax IPdfRect Size ( ) Return value An "IPdfRect" on the next page structure containing the dimensions, in points, of the page size. Cannot be NULL. IPdfInfos The IPdfInfos structure contains the same basic information that can be found in Acrobat Reader's™ File Properties . To instantiate the IPdfInfos structure, create the AlambicEdit.PdfInfos object in Workflow's scripting environment.
name of the application that converted it to PDF. STRING CreationDate The date and time the document was created, in human-reada form. ) IPdfPrintParams The IPdfPrintParams structure contains information used to control the printing of the file. To instantiate the IPdfPrintParams structure, create the AlambicEdit.PdfPrintParams object in Workflow's scripting environment. Javascript implementation: var pdfPrintParams= new ActiveXObject("AlambicEdit.
Javascript implementation: var pdfRect = new ActiveXObject("AlambicEdit.PdfRect"); VBScript implementation: set pdfRect = CreateObject("AlambicEdit.PdfRect") Structure IPdfRect { LONG LONG LONG LONG left Left edge of the rectangle. top Top edge of the rectangle. right Right edge of the rectangle. bottom Bottom edge of the rectangle. ) All values are expressed in points (72 points per inch).
Stopping execution When using a script, you may come to a point where you'd like the task to fail (raise an error) and trigger your On Error tab under certain conditions (see "Using the On Error tab" on page 100). This can be done by using the scripting language's built-in error features, described here. Note that the value or description of the error will not be available to your error process if one is used. However, when available, a description of the error message will be logged in the Watch log.
} See also: throw on developer.mozilla.org. Python In Python, the raise statement is similar to JavaScript and will stop processing and trigger the On Error tab unless an except statement is used. See the python documentation. s = Watch.GetJobInfo(9) if not s: raise NameError('Value cannot be empty') else: # Do something with Job Info 9! Watch.
Note Typical OL Connect workflows are described in PlanetPress Connect's Online Help; see Workflow processes in OL Connect projects. HTTP Server workflow An HTTP workflow receives requests from a client via a GET or POST request, sometimes only with information, sometimes with attached files. An HTTP workflow is basically an XML workflow since that is the type of file created by the HTTP Server Input task. See the "HTTP Server workflow" on the facing page page for more details.
SOAP workflow As SOAP can be either a client or a server, two workflows will be presented. The SOAP Client workflow presents PlanetPress Workflow as the client and will explore how to retrieve WSDL information and how to make a SOAP request as a client. The SOAP Server workflow will show how to create a process that responds to SOAP requests, and where our own WSDL is located.
Note You can control access to the PlanetPress Workflow Tools HTTP Server via the Access Manager. Important configuration, setup and options Before starting to work with HTTP workflows, there are a few key points to keep in mind in terms of configuration.
return the file c:\PlanetPress\http\css\style.css . This does not require any process to work - everything is handled directly by the HTTP Server Input and files are returned immediately. This feature is very useful when dealing with stylesheets, images, browser JavaScript, or static HTML files that do not require any processing. Note It is possible to serve a default HTML file when no action is specified, for example http://localhost:8080/ . This is done by creating an index.
browser. l l l l The HTTP service accepts both POST and GET requests. Other than the presence of file attachments, there is little difference in how these are handled. This means that visiting /myaction?id=12345&q=test would be the same as having a form with two fields named, respectively, id and q, and submitting them with the information "12345" and "test".
8. The HTTP service returns the file to the client and then closes the connection. 9. If, during this time, the timeout has expired (if the process takes more than 120 seconds), the HTTP service returns a "timeout" to the client, but the process stills finishes on its own. When the process finishes, the return file is ignored by the HTTP service. Point 7 is critical to understand, as it has an impact on what the client receives.
l ppworkflowserver : name of the machine. This could also be an IP (192.168.1.123) or a full domain name (www.myserver.com), depending on the connectivity between the client and PlanetPress Workflow Server. l :8080 : The default PlanetPress Workflow HTTP Port, set in the preferences. l /getinvoice : The HTTP Action Name, as set in the HTTP Server Input task.
[1]',Value,KeepCase,NoTrim).pdf Here, the xmlget() function grabs the invoicenum variable from the GET request, which would be INV999999.pdf in the specified folder. l If the file is not found, then a simple, basic HTML page is created indicating the invoice was not found. For this, a "Create File" on page 346 task will suffice, followed by the "Delete" on page 668 output task.
l l Open HTTPBrochureRequest.pw7 and send the configuration to your local PlanetPress Workflow service. Open your browser to http://localhost:8080/generatebrochure Task breakdown l l l The HTTP Server Input receives the initial request from the browser. Because this is a demonstration, a backup is made of the XML request. It's not suggested to do this every time, especially on servers receiving a large number of requests, as these files do take some amount of space for each request.
PlanetPress Workflow provides a few tasks specifically designed to work with PDFs: l "Merge PDF Files" on page 372 l "PDF Splitter" on page 489 l "Create PDF" on page 420 In most cases, this kind of workflow also implies the use of Metadata tasks (see "Metadata tasks" on page 582). You can use Metadata tasks to group, sort and sequence (split) the PDF data. The Create PDF task will apply the active Metadata to the PDF data file before creating the PDF output.
Task breakdown l l l l l l l l l The initial input is the "Merge PDF Files" on page 372, which retrieves and merges all the PDF files inside of the specified folder. Once a single PDF is created, the task also optimizes the PDF (to avoid duplicating images and font definitions for each page) as well as generates a basic Metadata structure containing a single document with one Data Page per captured PDF.
which records everything it writes on paper, as long as this paper contains special Anoto Patterns. Warning There are important considerations to keep in mind when dealing with PlanetPress Capture. Please review them in "PlanetPress Capture Implementation Restrictions" on page 756. In order to properly build a PlanetPress Capture workflow, it is very important to understand the terminology, implications and limitations of the technology.
l Retrieving your data file. l Creating metadata (See "Create Metadata" on page 582). l l l Separating each individual document in the metadata (this can be done in your Design document or through the "Metadata Level Creation" on page 591 action task). Using the "Capture Fields Generator" on page 565 action task to generate the capture patterns Printing your documents.
l l The "Find Capture Documents" on page 574 input task is used to retrieve a list of documents under specific criteria. The Capture Condition and Get Capture Document tasks are used to effect postprocessing and retrieve document from the Capture database. Error Handling Whenever an error occurs during the Capture Field Processor phase, it is of course important to be able to handles these errors. For this purpose, the "PGC to PDF Converter" on page 581 task was added with PlanetPress 7.
For more information on building and using PlanetPress Capture processes, please see "PlanetPress Capture Workflow" on page 296. "Anoto" and the Anoto logotype are trademarks owned by Anoto AB. PLANETPRESS CAPTURE is based on Anoto Digital Pen and Paper Technology, which is covered by over 200 patents worldwide, including but not limited to US6663008, US7172131, US7248250, US7281668, JP3872498, JP3842283, CN1595440, SE517445, RU2256225, and AU773011.
Capture-Ready Document A PlanetPress Connect document (*.pp7) that contains at least one Capture Field on at least one page. Capture Document Manager A tool that lets a user search through the available documents in the Capture Database. The documents can be search through a few different criteria and can be displayed as PDF files, individually or as a group. Documents can also be closed or deleted from this interface.
ICR (Intelligent Character Recognition) Recognizing text that has been hand-written with the Anoto Digital Pen. This feature is currently not implemented in PlanetPress Capture, but will be in the (near) future. Ink Data The pen stroke information contained within the PGC file. This is the actual data applied to the document (lines, signatures, text, etc).
Pidget Type of PlanetPress Capture object. Page element used to give instructions to the Anoto pen, as opposed to recording ink. PlanetPress Capture Database A database containing the list of patterns, sequences, registered pens and documents. The Capture Database can be used by a single server, or by multiple servers in a Client/Server architecture. Session The time spent by the pen between events that trigger a new session.
bit and cannot access the 64-bit data sources. In order to create an ODBC connection visible by PlanetPress, you will need to access the 32-bit version of the ODBC manager, available in C:\Windows\SysWOW64\odbcad32.exe . The following considerations should be kept in mind while working with ODBC Databases in PlanetPress Suite. l All databases l l l l l l Minimum 100MB of database size is required as a minimum, but the space requirement depends on the implementation.
l MSSQL (Microsoft SQL Server) l l l l All versions of the SQL Server are supported, including all Express versions. Database can be in any location, but performance will depend on the speed of the connection between PlanetPress Production and the SQL server. In the event where 2 requests are made simultaneously on the same record, SQL Server will drop the most complex request. Resubmitting the PGC for processing should resolve this issue. This, however, should happen only rarely.
signed document has, by definition, a longer life span than the temporary storage location of the digital pen. Consequently, it is still the most vulnerable piece of the workflow and as such, it should be the first objective of any security effort. In other words, as long as the physical piece of paper bearing markings is accessible to malicious users, no amount of security protocols can protect the signed contents.
l The same rules apply to PDF files as with PGC files, especially when they contain a signature from the pen. If you are already securing digital scanned copies of signed documents, the PDFs should be secured in similar ways. However, remember that as with most security concerns, in order to be a “threat”, someone would have to have a high level or working knowledge of either the Anoto SDK (which is not easily obtainable) or PlanetPress Workflow and PlanetPress Capture.
and cannot be re-used. Then, when someone writes on the document and sends the pen data to PlanetPress Workflow (through a docking station or through Bluetooth), if the required conditions have been met, the document will be "closed", its pattern released and available to be used immediately. An open document can also be called a "live" document, in the sense that it is only active between the time where it is printed and the time where ink from the Anoto Digital Pen is processed and the document is closed.
Extending There are actually 2 ways of dealing with extending the number of patterns using the currently available tools, each with its own advantages and disadvantages. Using separate PlanetPress Workflow servers and licenses. In a scenario where there are multiple locations that use PlanetPress Capture and where neither pen nor paper has any risk of being moved from one location to another, the easiest (but costlier) solution is to have a separate installation of PlanetPress Workflow in each location.
Note It's very important to note here that the Anoto Digital Pen has absolutely no concept of Pattern Sequences. When "attributing" a sequence to a pen, this is fully on the PlanetPress Workflow side, in the Capture Database. This means that if a pen is mislabeled or someone picks up the wrong pen, this pen has absolutely no way to know that it is writing on the wrong paper. more about this in the Contamination section below.
contamination. A simple example in a basic implementation would be to print a document with a pattern on it, put this paper aside (or lose it on a desk somewhere) and forget about it. Assuming proper processes were put in place, this document would eventually be closed by a manual or automatic procedure. However, the physical document with the pattern still exists even if it is closed in regards to the PlanetPress Capture database.
l l PlanetPress Capture checks for pattern size and placement. If the data contains ink for a specific pattern but the ink location does not correspond to the Capture Fields of the document it's updating, it will fail. Errors can be set to stop and revert the whole current batch. If a single error occurs during the pen data processing, it is possible for this processing to be stopped and all changes the Capture Database reverted.
To configure this communication: 1. Open penDirector setup by right-clicking on its icon in the Windows System Tray, and selecting penDispatcher. 2. Double-click on the PlanetPress Capture entry. 3. Change the PGC Storage folder or PGC POST URL settings to your liking. 4. Click OK, then OK again. The PGC POST URL should correspond to your server name or IP, Port and the HTTP Action task of your HTTP Input, if that is what you are using. Example: http://127.0.0.
Warning Because the Bluetooth configuration only handles a single route, it is not possible to use the Design preview patter, or the special registration pattern, using Bluetooth connectivity. To use the preview Pattern in PlanetPress Design or use the special registration pattern, the pen's docking station must be used. To specify where to send the PGC files received through Bluetooth: 1. Open penDirector. 2. Go to the Bluetooth tab 3. Click on the paired pen that you want to configure 4.
Black ink close to patterns Because the Anoto Pen & Paper technology relies on infrared to read pure-black dots on the paper, it is imperative that no other black ink interfere with this reading. Though it is possible to print Capture documents on a black & white laser printer as long as there is no other ink on top of, or close to, the patterns, this is not recommended. A color laser printer should be used, and any elements placed close to, or on top of, the Capture Patterns should be printed in color.
Pattern sizes The absolute minimum required for an Anoto Digital Pen to read the pattern and know it's position on the page is 7mm (1/4"). Any pattern smaller than this will not be readable. However, at 7mm width and height, the pen can only recognize a single dot within that pattern, at the top of the field. This is because the pen's camera (which captures the position of the pen) is located under the pen tip and must fully see the pattern.
Knowing this, the best practice when creating fields is that they have, at the very least, a 7mm margin on each size of the actual area you want to capture from. For example, an effective 30mm wide pattern will actually be 44mm wide using these margins. The margin should be for both the vertical size and the horizontal size.
PlanetPress Capture ICR The term "ICR", which means "Intelligent Character Recognition" is an evolution on the popularly-known "OCR", which is "Optical Character Recognition". The difference between the two is easily explained: While OCR can only recognize characters using the finished shape (for example, in scanned documents and pictures), ICR relies on much more data which is provided by the Anoto Digital Pen: the path that the pen takes, the exact timing of this path, start and stop points, etc.
Guide). This must be either a Multi-Area Field or a Text Field. l l l The Capture Fields Processor must have the Perform ICR Recognition option checked, and language needs to be selected. Once the ICR data is available, do something with it. This is done by reading the ICR data that is available in the metadata generated by the Get Capture Document task. The metadata is also readable by the Capture Condition task, including the captured text and the reliability of this text.
l l l ICR Value: The alpha, numeric or alphanumeric value that was determined by the ICR engine. ICR Confidence: A percentage value that the ICR engine gives to any specific value, when comparing the pen data with it's character database. ICR Resemblance: A percentage value that defines how closely the value resembles the "average" character shape. Both the Confidence and Resemblance can be used together to make an informed decision on the contents received by ICR.
The following guidelines are applicable when configuring a PlanetPress Capture object that utilizes ICR: l l l l l l l The collected data is expected to be a number, therefore the numeric mask type must be selected, or The collected data is expected to be a letter, therefore the alphabet mask type must be selected, If upper case letters are expected, select Upper case in the Case option menu. The captured characters would be immediately converted to capital letter i.e.
The following diagram illustrates the available mask types. It is recommended to select the mask type that is the closest to the desired result. An alphanumeric field should be used as a last resort. Guidelines for Capture-Ready Fields l l Target: Form designer What: Only one character per Capture field can be recognized. When expecting multiple characters making up a word or phrase, you must make sure that the user only writes one character per field.
Why: To avoid any ink marks that would spill over from one field to another. If both fields A and B are to close in proximity and the ink marks from field A spill over to field B, then the marks captured on field B would be considered as being part of a character written on field B. For example, if a number spills over and is written over two fields like numbers 9, 1 or 7; then the bottom tip of these numbers could be considered as number 1 in the second field.
How: Make sure there’s enough space between each field. You must re-design the document if that’s the case. There’s no minimum value that is required as the distance between 2 fields, except for the 7mm border that is required in order for the Anoto digital pen to recognize the pattern being used. Writing in a Legible Way l l Target: User. What: It is important to write in a legible way i.e. applying yourself by writing well defined numbers and letter that are easily interpreted.
Why: The available filters to interpret the ink marks done with the Anoto digital pen, allow you to select the engine language to be used. Doing so will give you results that are the closest match to the captured data. Multiple cultural characters can be interpreted with ICR once the correct language is selected such as û, à, é, etc. How: This option is available from the Capture Fields Processor task.
Possibility of Interpretation Error in an Automated Process l l Target: Workflow designer What: We cannot be 100% sure that a character would be recognized by PlanetPress Capture as it should. Therefore, the analysis of a value interpreted with ICR should only occur if the level of confidence is superior to a determined level. Why: An automated process can treat the characters incorrectly due to an incorrect interpretation of a value. This occurrence should be minimized as much as possible.
l Any input task l "Create Metadata" on page 582 l "Capture Fields Generator" on page 565 l Print output PGC Handling Process The second process is the PGC Handling process. It receives data from the Anoto Digital pen, updates the Capture database and releases patterns as appropriate.
l "Get Capture Document" on page 578 l Archive or Print output Capture Post Processing Workflow Though the "Basic Functional Capture Workflow" on page 326 is minimal functional one, it will most likely not be enough for most actual implementations. The goal with PlanetPress Capture (and PlanetPress Workflow in general) being to automate as much as possible, there are some tools within the PlanetPress Capture tasks that can greatly help with this goal.
Task Breakdown: l l l The HTTP Server Input receives a POST request sent either by the Anoto penDirector or the PlanetPress Mobile Application. This requests contains information sent by the pen as well as a PGC file as an attachment. Because we're only concerned about the PGC, the task is configured to ignore the XML envelope as well as loop through each attachments (of which there is only one). So, the output of the task is the PGC file alone.
After Retrieving Information from the Capture Database There are two basic ways in which the Find Capture Document task can be used. First, in an automated process that runs at specified intervals. For example, the following process which sends a daily report of all incomplete and "in error" documents to an agent who would presumably take action on each document through the document manager.
Capture Web Manager Workflow This example is both a more involved workflow for Capture, and an interesting implementation of an HTTP Workflow. Before looking at this example, it would be best to become familiar with both "PlanetPress Capture Workflow" on page 296 and "HTTP Server workflow" on page 287. The example is too complex to display as images in this guide, so it is rather available for download.
Explanation You can follow along the process by looking at the comments available in each process of the workflow file. Each comment explains both what the following plugins do, but also how it integrates into the workflow in general and what to keep in mind when doing an actual implementation of such a process. Considerations l l l The workflow itself is a standalone system that does not interact with any third-party systems, which of course does not correspond to real customer implementation.
Interactive process When a job is received in licensed mode, an interactive process is started. This process, which may consist of several Workflow processes, serves web pages to the customer and handles the customer's response, changing (settings for) the print job. A few of the key components in this process are: l l l l The HTTP Server Input plugin. The interactive process start with this plugin.
About Tasks A task is a plugin or a block that is used to build PlanetPress Workflow processes. Tasks can do multiple things depending on the type of task and where they are placed. You can add as many tasks as you like to your processes and order them in any way you can. There are different types of tasks: l l l Input Task: Will either capture data from a specific location, or wait for input from a service or other computer to start processing.
l "Output tasks" on page 667 l "Unknown tasks" on page 726 Note Completely empty files (0 bytes) cannot be processed by Workflow. In fact, the PlanetPress Workflow plugin based architecture enables almost limitless customization. You can create or purchase compatible plugins, drop them in PlanetPress Workflow's Plug-In Bar and use them to perform other operations. Adding tasks You can add as many tasks as you want to your process by using the Plug-in Bar in PlanetPress Workflow program.
l Dropping a task on top of another one replaces it. l Dropping a task between two tasks will insert it at that location. l You cannot add a task above the initial input task of a process, since new tasks are always added above a selected task or branch. Editing a task To edit a task, you simply need to access and change its properties (see "Task properties" below). You may even do it while your process is in Debug mode (See "Debugging your PlanetPress Workflow process" on page 107).
l l l l Most tasks have the General tab which lets you configure the main task properties for that specific task. All tasks except for the InputErrorBin, Run Script, Open XLST and Comment tasks have an On Error tab that lets you manage errors generated by the task. For a description of the options that it contains, see "Using the On Error tab" on page 100.
Variable properties can also be used in these special locations: l In the Set Job Infos and Variables Action Task. See "Set Job Infos and Variables" on page 465. l In Scripts. See the chapter on "Using Scripts" on page 143. l In the Create File Input Task. See "Create File" on page 346. l Within a PlanetPress Design Document, using the ExpandString() function. See the PlanetPress Design User Guide and PlanetPress Talk Reference Guide.
l l l l Get Metadata Value: Brings up the Data Selector with only the Metadata tab visible and lets you select the value (contents) of a Metadata attribute or field. The result is static and does not change between jobs. Get Metadata Location: Brings up the Data Selector with only the Metadata tab visible and lets you select the location of the data. The result is variable and changes between jobs.
Masks A file name that includes characters meant to be replaced at run-time is referred to as a mask. Masks can be used in many edit boxes and can be used, for instance, to select multiple files. File selection is typically limited by fixed characters or special wildcard characters. If you create a Folder Capture Input task and enter *.* in the Masks box, the Input task will grab all the files that are put in the source folder. If you enter *.
l l Ranges: [1-5] , [a-d] define ranges between the characters. file[1-5].txt would pick up file1.txt and file4.txt but not file6.txt or file13.txt. Negative Ranges: Negative ranges such as [!2-4] are also possible. Note File names containing brackets can be a hassle when attempting to capture them with a mask and using sets or ranges. You can capture a set that contains an opening bracket ( [[] ) , but not a closing bracket as the closing bracket always ends the set or range.
1. Click on the %o entry in the document list 2. Right-click to insert variables using the contextual menu, or type the variables. 3. Click OK on the dialog. Note At run-time, if PlanetPress Workflow cannot find the document name generated by those variables, the task will fail.
Input tasks Input tasks are the starting point to any process and determine what file this process will being with. Each process must begin with an Input task, and although a given process may have multiple Input tasks, no task can have more than one initial Input task. Initial Input tasks Initial Input tasks are always at the beginning of a process and are always triggered when the process starts.
This is an important consideration when scheduling a task, as the Folder Capture task will keep capturing files as long as new files are added, even if it means continuing to capture and process outside its scheduled time. It is also important that while the Folder Capture input task is processing files it keeps a copy of each file in a temporary folder, and will not delete any of these files until it has finished processing all of them. This may cause issues with running out of disk space.
l l l Backup input files: Check this to save a copy of each data file that is captured by your input. These files are saved in the PlanetPress Workflow Tools working folders under the "Backup" folder. To navigate quickly to the Workflow working folders, press the keyboard shortcut CTRL+ALT+Shift+F4 from within the Workflow configuration tool. Backup filename: Enter the file name that you wish the input data file backup to be saved under. Delete Existing Metadata: Check to remove any Metadata from memory.
Create File Create File input tasks are different from other input tasks in that they do not pull in data from a source location. The data that this task passes along to other task is its own: text or values from variables entered when the task was created or last edited. Since Create File input tasks are not dependent on data from external sources, they are performed at every polling interval and the process is thus started every time.
CSV files for example. l Delete Metadata: Check to delete any metadata attached to your data file. "Other" Tab l Job Information group l l l l l Information elements: Indicates what Job Info variables are automatically created by the input task. Add lines before first data page: Using the arrows keys you can add any job information directly at the beginning of your data file. Backup input files: Check this to save a copy of each data file that is captured by your input.
Note If Microsoft Outlook connection is used, Microsoft Outlook 2000 or higher must be installed on the computer where PlanetPress Workflow is located. Input Email Input captures all emails and their attachments from the selected inbox, when those emails correspond to the rules defined in the General tab. If no rule is defined, all emails in the inbox are retrieved.
message’s attachment are treated as separate data files and processed one after the other. l Unzip attached file: Select to unzip the attached files. l l Zip password: Enter the password required to unzip the attached files (if any). Note that you can use variables and data selections. Conditions group l “Subject” contains: Select to limit those messages used by this task to those with a specific subject. The subject you enter in the box below can include variables.
Outlook (perhaps a child of the Deleted Items folder named Watch) and then using that folder as your backup folder. l Use POP3 mail group l l l l Select this option to use a POP3 mail server and to activate this group. Note that emails retrieved via POP3 are always deleted from the server. Incoming mail (POP3): Enter the address of the incoming POP3 mail server. This box is only enabled when the Use POP3 mail option is selected. Account name: Enter the email account name on the POP3 mail server.
l l l l l l %2 - Sender's name: Contains the name of the sender as defined by the sender himself (or, if the sender is using Exchange, by the name defined in his Exchange server). %3 - Sender's address: Contains the email address of the sender as defined by the sender himself. %4 - Subject: Contains the subject of the received email (may be blank). %5 - Recipients:Contains a list of the names of all the recipients of the email, separated by a semicolon (;).
Note As with any task that can refer to network resources, it is important to understand the considerations involved with paths and permissions of these resources. Please refer to the "Network considerations" on page 21 page. Warning If you create a Folder Capture input task that takes any file it finds in the root folder of one of your hard disks, then PlanetPress Workflow will try to remove all the files located in that folder, including all the system and hidden files.
The checkbox is not ticked by default. Please refer to Regular Expressions for more information. Note No Variable Data can be used inside this field if the Treat as regular expressions option is ticked. The percent sign, the curly brackets and the period are all key elements of the RegEx syntax, therefore they cannot be mixed and matched with Workflow variable data syntax (e.g. %1, ${global.myvar}, etc.). Also, there is no validation of the RegEx being specified.
"Other" Tab l Job Information group l l l l l Information elements: Indicates what Job Info variables are automatically created by the input task. Add lines before first data page: Using the arrows keys you can add any job information directly at the beginning of your data file. Backup input files: Check this to save a copy of each data file that is captured by your input. These files are saved in the PlanetPress Workflow Tools working folders under the "Backup" folder.
Input Folder Listing captures nothing, however it does read the input folders (and, if selected, subfolders) and gathers information about each file in that folder. Processing Folder Listing loops through the files and, for each file, generates an XML node with information about the file. Output The output is an XML file containing information about each file. If the Sub-directories option was checked, the structure of the XML also contains the folder structure as it is present on the drive.
Note The
Job Information definitions l %1- Folder: Contains the full path of the base folder from which the files are listed. On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area. FTP Input FTP Input tasks retrieve files from FTP sites using the FTP protocol. Masks are typically used to select multiple files to be retrieved from the server.
Task properties General Tab l FTP Server: Enter the IP address or host name of the FTP server to poll. l User name: Enter the name of a user account on the FTP server. l l l Password: If account named in the User name box is password protected, enter the password here. Port number: Set to use a specific port number. Note: There is no validation to ensure the port is available.
l l Backup filename: Enter the file name that you wish the input data file backup to be saved under. Delete Existing Metadata: Check to remove any Metadata from memory. This option is disabled on initial input tasks, and is checked by default on secondary input tasks. Job Information definitions l l l l %1 - User name: Contains the user name that was used to connect to the FTP server. This is useful if this task is used as a secondary input and the information is defined dynamically.
Output HTTP Client Input will output a single file which was retrieved from the web. Metadata is not generated by this task. Task properties General Tab l URL: Enter the URL of the HTTP server from which the file must be downloaded. Since this is a variable property box, variables may be used, as well as the Get Data and Select Data commands (see "Variable task properties" on page 337).
To navigate quickly to the Workflow working folders, press the keyboard shortcut CTRL+ALT+Shift+F4 from within the Workflow configuration tool. l l Backup filename: Enter the file name that you wish the input data file backup to be saved under. Delete Existing Metadata: Check to remove any Metadata from memory. This option is disabled on initial input tasks, and is checked by default on secondary input tasks.
request and passes it on to the correct task. Note Athough Workflow can serve both static and dynamic resources to a web browser, it is not meant to be used as a fully featured web server as it is not built for responsiveness nor guaranteed uptime. It is recommended to use a common web server (for example, IIS or Apache) to serve your contents and to let Workflow process things only it can do.
The request can contain one or more files, one being an XML file containing the request information as well as any GET or POST variables that were received within this request. Other files are POST attachments. Note By default, the request XML also contains a CDATA section which contains the raw input data, effectively doubling the size of the incoming file. Due to technical restrictions, the incoming XML file cannot be more than 400MB, which because of CDATA is reduced to around 200MB.
Note You can serve static resources through PlanetPress, which is especially useful for images, CSS and JavaScript files. See "HTTP Server Input plugin preferences 2" on page 816. Task properties General Tab l l l HTTP action: Enter the name of the action requested of PlanetPress Workflow by the client. This name corresponds to the URL that the client will be accessing. For example, if you enter "MakePDF" here, you could trigger the process by accessing http://127.0.0.1:8080/MakePDF .
Note In order to make the Capture OnTheGo app delete the submitted form from the device's library upon successful transmission of the data, the Workflow process must return status code 291. The standard 200 response leaves this up to the COTG user or the expiry date of the form. "Other" Tab l Job Information group l l l l l Information elements: Indicates what Job Info variables are automatically created by the input task.
Attachment Index is 0; with the first attachment it is 1, etc.). When the option Loop each attachment as a data file is not checked, the Attachment Index is 0. On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Input Error Bin The Input Error Bin task is used specifically and only to create error management processes.
Processing No processing is done by this task. Output The output of this task is the same as the input - a data file and job infos that are sent from a task that generated an error. Task properties General Tab l The Input Error Bin task does not have any specific properties unique to it, since it only receives input directly from tasks in other processes when an error is generated. For more information, see the chapter on "Debugging and error handling" on page 99.
On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Input SOAP The Input SOAP task is used to answer calls from a remote SOAP client and to return a response to that request. It is similar in functionality to the "HTTP Server Input" on page 361 task. Note SOAP communication is non-trivial and requires a certain understanding of XML and the SOAP protocol.
Output As with the HTTP Server Input, this task has a dual-output purpose. First, when the initial input task is run, the XML request is output onto the process. Then, when the process is finished, the last job file generated by the process is returned to the requesting client. Task properties General Tab l SOAP Action: The SOAP action is used with the SubmitJob action. It’s the equivalent of the process name. The difference is that more than one processes can share the same SOAP action.
On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area. LPD Input LPD (Line Printer Daemon) Input tasks retrieve data in the form of print files sent from remote computers using the LPD/LPR protocol. The PlanetPress Workflow LPD server starts automatically when a configuration that includes at least one active LPD Input task is started.
Task properties General Tab l LPD queue name: Enter the queue name specified in the printer queue on the remote computer or computers. "Other" Tab l Job Information group l l l l l Information elements: Indicates what Job Info variables are automatically created by the input task. Add lines before first data page: Using the arrows keys you can add any job information directly at the beginning of your data file.
On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Merge PDF Files The Merge PDF Files Input task (formerly named "Concatenate PDF Files") captures all PDF files in a given folder and merges them into a single PDF file. This task is put into effect in the following example process: "Example: Daily sales report from PDF files" on page 295.
Task properties General Tab l l l l l l l l l Folder: Enter the full path of the folder from which the input files are to be taken. Masks: Enter a single or multiple file names or use file name masks. See "Masks" on page 340. Since this task only supports PDF files, make sure your extension remains .PDF for all your masks. Sort files by: Select a given sorting method to prompt PlanetPress Workflow to sort the files in the source folder before taking them (and thus to take them in a specific order).
Note Metadata can be manipulated with Metadata tasks; see "Metadata tasks" on page 582. "Other" Tab l Job Information group l l l l l Information elements: Indicates what Job Info variables are automatically created by the input task. Add lines before first data page: Using the arrows keys you can add any job information directly at the beginning of your data file. Backup input files: Check this to save a copy of each data file that is captured by your input.
NodeJS Server Input NodeJS Server Input tasks are used to receive HTTP requests and to send replies to the servers from which the requests were made. Essentially this task does the same as the HTTP Server Input task, but it uses a NodeJS Server (installed by Workflow) instead of Workflow's custom server component. The NodeJS Server is more secure, more up to date and more standardized. For instance: l PUT and DELETE actions can be posted to the server.
or Apache) to serve your contents and to let Workflow process things only it can do. For more information on how to serve HTML and PDF generated by Connect through IIS, watch the Connect with Evie - IIS series.
The NodeJS Server Input task supports basic content-types (multipart/form-data, application/xwww-urlencoded, and application/octet-stream) as well as raw body content-types: l text/plain (.txt) l application/xml, text/xml (.xml) l text/html (.html) l application/xhtml+xml (.xhtml) l text/css (.css) l text/csv (.csv) l application/json (.json) l application/javascript (.
If the Send Immediate Response to client option is selected, the response file is sent back right away and the involvement of the input task ends then. However, if this option is not checked, it means there is a second output that comes out of the NodeJS Server Input task: the last output generated by PlanetPress Workflow is sent back to the initial input, by which it is returned to the client.
Even though it is strongly recommended to use the element in web pages, some might use another encoding or not have the element at all, affecting the character set used by the browser to send the parameters and file names. l l System language: Sets the encoding attribute in the request XML file to the system codepage (e.g. Windows-1252). UTF-8: Causes all parameters as well as file names from the request to be interpreted as a UTF-8 text stream.
l l Use custom HTTP server response code: When the process ends and a response is sent to the requesting client, a custom response code can be specified depending on how the process goes; for example: "200 OK", "404 Not Found" or "401 Unauthorized". Choose a response code between 100 and 599. (See: List of HTTP status codes on Wikipedia.) If the response isn't currently handled by any HTTP response code, you may use an unused code in that range. l l Response file: Select which file to return.
Job Information definitions l l l l %1 - Client IP Address: Contains the IP address of the HTTP client requesting a response. %2 - Request Header: Contains the headers of the request, which can contain information such as the Browser and Operating System, languages, etc. %3 - Filename: Contains the local file name of the job file created by this task (and XML file). This is equivalent to %o.
Input This task does not poll an input, it sits there and waits for a job file to be sent by the local PrintShop Mail Web installation. Processing When the job is received from PrintShop Mail Web, it is saved as a job file. No further processing is done on the file. Output The task outputs the job file as is, with no evaluation or modification. The format of the job is PostScript generated by PrintShop Mail Web.
"Other" Tab l Job Information group l l l l l Information elements: Indicates what Job Info variables are automatically created by the input task. Add lines before first data page: Using the arrows keys you can add any job information directly at the beginning of your data file. Backup input files: Check this to save a copy of each data file that is captured by your input. These files are saved in the PlanetPress Workflow Tools working folders under the "Backup" folder.
Input Secure Email Input captures an email and its attachments from the selected inbox when it corresponds to the rules defined in the General tab. It will process one email at a time (unless the process is self-replicating; see "Process properties" on page 890) and it will capture the emails as long as there is unread email in the selected inbox.
Example output file Peter Parker parkerp@ca.objectiflune.com Bill of Lading 2018-03-29 15:52:54 starkt@ca.objectiflune.com Body C:\ProgramData\Objectif Lune\PlanetPress Wo 8\PlanetPress Watch\Debug\0103W5GQXZR2F0A\ Body.html Attachment C:\P
If multiple attachments have the same name, they will be appended with a numeric suffix, for example: File.pdf, File (1).pdf, File (2).pdf. Task properties General Tab Enter the condition(s) that must be met for an email to be captured. l l First found (no conditions): If this option is selected, the first email that is found will be processed (for each iteration of the plugin). In any other case, all conditions must be met for the email to get processed.
Note By default, GMail may not allow Workflow to access the account’s mail boxes unless that account specifically allows automated systems to access the inbox. Please refer to GMail documentation to learn how to do that (https://support.google.com/accounts/answer/6010255?hl=en). l Options: l l l Enter the name of the inbox to monitor. This is useful if the email account has defined rules to automatically store certain incoming messages in a specific mail box.
l l Backup filename: Enter the file name that you wish the input data file backup to be saved under. Delete Existing Metadata: Check to remove any Metadata from memory. This option is disabled on initial input tasks, and is checked by default on secondary input tasks. On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area.
Task properties General Tab l Since Serial Input tasks have no specific task configurable properties, this section contains no property information. "Other" Tab l Job Information group l l l l l Information elements: Indicates what Job Info variables are automatically created by the input task. Add lines before first data page: Using the arrows keys you can add any job information directly at the beginning of your data file.
SFTP Input The SFTP Input task retrieves files from a secure FTP site through an encrypted connection. Masks are typically used to select multiple files to be retrieved from the server. The SFTP Input and "SFTP Output" on page 671 tasks are part of a separate installer and are not included in the Workflow installer. The SFTP plugin installer can be downloaded from the Resource Center, under 'Plugins' in PlanetPress Connect.
l l Protocol group l SFTP: Select if the FTP server uses SFTP (SSH). l FTPS: Select if the FTP server uses FTPS (SSL/TSL) Port Number Group l l l Use default port: Check to use the default port used by the protocol selected above. Port number: Set to use a specific port number. Note: There is no validation to ensure the port is available. It is the user's responsibility to ensure the selected port is available and not being monitored by another application or another PlanetPress Workflow task.
Security Tab This tab defines the certificates used to connect to the secured FTP servers. l l l l Accept all certificates: Check this option to automatically accept the certificates returned by the FTP server. Otherwise, in order for a connection to work, you have to establish a connection first and then accept a certificate from the List of known servers up to the Approved server list.
l Delete Existing Metadata: Check to remove any Metadata from memory. This option is disabled on initial input tasks, and is checked by default on secondary input tasks. Job Information definitions l l l l %1 - User name: Contains the user name that was used to connect to the FTP server. This is useful if this task is used as a secondary input and the information is defined dynamically. %2 - FTP Server: Contains the FTP address of the server from which the files were retrieved.
Example In this example, the SMTP Input plugin is used to capture incoming emails data that must meet certain conditions as the subject that contains "Work to do" and the sender that contains "client@company.com ". The process then redirects the content of those emails to an extraction and finally to a PDF printing.
Input The SMTP Input task does not, by itself, capture any files. Neither does it directly wait for requests to be received.
places them in a specific location on the drive. When a request is received, the SMTP Input polls that location and finds the requests and all attachments. It will always pick up the "oldest" request received. Warning Due to a technical limitation the SMTP Input task does NOT receive the BCC addresses from most emails sent to it. Processing The task reads the incoming SMTP request and provides the data within its body.
Task properties General Tab l l Data location: Determines what files are sent into the process: l Envelope: Only the request envelope is sent to the process (see above). l Attachments: Each attachment is sent down the process (see above). Unzip attached file: Select to unzip the attached files. l l Zip password: Enter the password required to unzip the attached files (if any). Note that you can use variables and data selections.
To navigate quickly to the Workflow working folders, press the keyboard shortcut CTRL+ALT+Shift+F4 from within the Workflow configuration tool. l l Backup filename: Enter the file name that you wish the input data file backup to be saved under. Delete Existing Metadata: Check to remove any Metadata from memory. This option is disabled on initial input tasks, and is checked by default on secondary input tasks. On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks.
Task properties General Tab l l Port: Enter the number of the port on which PlanetPress Workflow is to listen for Raw Socket communications. The default port number is 9100. Bear in mind that no two input tasks, whatever their type (Telnet, serial, LDP, etc.), should be listening to the same port. Description: PlanetPress Workflow displays the name of the service or process assigned to the port number entered in the Port box.
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. WinQueue Input WinQueue Input tasks capture print jobs received by a Windows printer queue. Note Before configuring this task, on the computer running PlanetPress Workflow you will need to create a local printer queue that will be used to receive data files in the form of print jobs. This queue can be shared, so as to be able to receive jobs sent from local as well as remote users.
Task properties General Tab l l Printer queue: Select the PlanetPress Workflow Printer Queue (the one to which data files are going to be sent; see: "PlanetPress Workflow printer queues" on page 113). Printer properties group l l Spool Print Job ins EMF Format (Advanced printing features): Select to create EMF files for Windows Print Converter action tasks (see "Windows Print Converter" on page 471). Note that this option must not be selected when capturing generic text type data.
l Delete Existing Metadata: Check to remove any Metadata from memory. This option is disabled on initial input tasks, and is checked by default on secondary input tasks. Job Information definitions l l l l %1 - User name: Contains the user name of the user who sent the job to the printer, or the user un which a software sending the job was logged in under. %2 - Host computer: Contains the name of the computer from which the job was sent.
l "Barcode Scan" on page 409 l "Change Emulation" on page 415 l "Create PDF" on page 420 l "Database Query" on page 424 l "Decompress File(s)" on page 430 l "Digital Action" on page 431 l "Download to Printer" on page 441 l "External Program" on page 442 l "Load External File" on page 445 l "Mathematical Operations" on page 446 l "Open XSLT" on page 447 l "PDF/A-3 Attachments" on page 449 l "PDF to Bitmap" on page 453 l "Push to Repository" on page 454 l "Rename" on page 456 l
Input This task can support files in any emulation, however, the actual file that should be used is one that is compatible with the selected PlanetPress Design document. Processing This task takes the PostScript version of the document (.ps7), adds the trigger and then the active data file to it. If Metadata is present, the output is based on this Metadata (unselected data pages will not generate output, the sort order will be respected, etc). Otherwise the complete data file is merged.
l Add or remove characters. l Add or remove lines of data. l Add the content of a text file. Note that the content must be located at the beginning or the end of the data file. Input Any text-based file can be used in this task, even formats that are not directly compatible with PlanetPress. As long as the text is visible in a text-based editor (such as Notepad), it is readable and supported by this task.
l l l l l Add CRLF after last line: Select if you want to add a CRLF (carriage return/line feed) character after the last line of text added to the job file. This option is only available when you choose to add lines of text to the job file. ASCII file: Enter the path and name of the text file to be added to the job file, or use the Browse button to navigate to this file. This box is only displayed when the Text file option is selected in the Content box.
Processing The appropriate changes are made to the data file (replacing text). Output The modified data file is output from this task. Metadata is not modified in any way if it is present. Task properties General tab l Search mode group: Select your chosen search mode within this group. l l l l l Search line by line: Select if you want each line in the data stream to be searched separately.
this option is selected, “DAY” and “DAYS” will not be considered as matching strings. l Position options group: Specify the location where the string must be found using this group. Note that this whole group is disabled when the Treat as regular expression option is selected. l l l l l l Anywhere on the line: Select to indicate that the search string can be anywhere on the line. At the beginning of a line: Select to indicate that the search string must be the first string on the line.
occurrences, for instance, means that all occurrences after the second one will be replaced. l l All before occurrence: All occurrences of the search string will be replaced until the specified number of occurrences has been reached. Specifying 5 occurrences, for instance, means that the four first occurrences will be replaced. Replace with: Enter the string that must be used as the replacement sting when a match is found. On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks.
Note This task does not recognize more than one level of the Metadata Document. This means that if you are intending to define separate documents, you should use the Metadata Level Creation task after the Barcode Scan. Output This task outputs the original data file but with modified (or created) Metadata. The format should be the same as the input. Supported barcode types The following types of barcodes are supported: Barcode types Description EAN13 EAN13 symbology.
Barcode types Description Inter2of5 Interleaved 2 of 5 symbology. Used in warehouse, industrial applications. Add2 2 additional digits code for UPC-based symbologies. Used to indicate magazines and newspaper issue numbers. Add5 5 additional digits code for UPC-based symbologies. Used to mark suggested retail price of books.
Barcode orientations Barcode orientations represent a barcode orientation on an image. For example, when the leftto-right option is checked, the task will try to read the barcode value assuming that the barcode data should be read in a left-to-right fashion. Note The fewer orientations are selected, the faster the task performs. Settings l l Force checksum validation: Select to define whether the checksum validation is required for symbologies in which a checksum character is optional.
this character is an empty space. Note: Non-printable characters are the first 32 characters in ASCII character table (Ex.: form-feed, newline, carriage return characters) l l Scan Interval: Set a scan interval in pixels of image scanning. This property directly affects the performance and quality of the recognition. A greater interval value means better performance, but a lower recognition confidence level, and vice versa. For example, a value of 1 means that every image line will be scanned.
Note If Metadata was created previously in the process, the task only adds new fields to the existing Metadata at the datapage level. Metadata fields The barcode values are stored at the datapage level of the Metadata. In the following definitions, the first 2 Metadata fields are for standard use, while the next 8 fields contain '_1_' in their name. This number represents the barcode index on the page.
Accessing a barcode value from the Workflow tool One method to access a barcode value from the Workflow configuration tool is to use a VBScript with the Open Script task, using the Watch.ExpandString command with a Metadata command as its input parameter, in between double quotes. For example, the following script line gives the value of the first BarcodeValue Metadata field of the first datapage: watch.expandstring("GetMeta(BarcodeValue[0],0,Job.Group[0].Document[0].
Processing The emulation for the following tasks is changed to the selected emulation. Output The original data file, metadata and job infos are not modified. Only the emulation is changed. Task properties Note Note to PlanetPress Suite users: The options of this task are basically the same as the Data Selector in PlanetPress Design; see PlanetPress Design User Guide.
Pages in buffer: Enter the number of data pages you want the data page buffer to contain, or use the spin buttons to increment or decrement the value. Read in binary mode (ASCII emulation only): Select to read the data file in binary mode. You select this if you intend to run a PlanetPress Design document on a printer queue that is set to binary mode. In binary mode, the printer reads the end of line characters (CR, LF, and CRLF) as they appear in the data stream and does not perform any substitution.
backslash character (thus you would enter \\). You can also specify an ASCII character using its octal value preceded by a backslash (for example, \041 is the exclamation mark character [!]). l l l l Force one record per page: Select to force a single record per data page. If you clear the selection, the document fills the data page completely, splitting a record across data pages if necessary.
stored. In this case, it compares the character in each cell in the line with the one in the new line destined for that cell. If the character in the cell is a space or an underscore, it overwrites that character with the one from the new line. If the character in the cell is not a space or an underscore, it leaves it intact. l l l Skip x lines: Use these boxes to enter any channel skip codes in your data that tell the document to skip a specific number of lines.
On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Create PDF The Create PDF Action task creates simple PDF files using the default quality. It is very similar to the Digital Action task (see "Digital Action" on page 431) but is more limited.
data file (for more information on this see "PDF Workflow" on page 294 and "Working with Metadata" on page 79). Output The output of this task is always, exclusively, a PDF file, optionally optimized and optionally with fresh Metadata. For the PDF values for files generated with this plugin, see "PDF Values" on page 423. Task properties General tab l l Documents: Select None to use the job file as-is.
l Set document permissions: Select to enter the Permissions password. l l Allow printing: Select to let users print the generated PDF files. l Allow changing the document: Select to let users edit the generated PDF files. l l l l l Allow content copying: Select to let users copy content from the generated PDF files. Allow form filling: Select to let users enter information in the form fields included in the generated PDF files.
l Show: Select the information you want Adobe Acrobat or Adobe Reader (or other PDF viewer) to display with the generated PDF. Select Page only to leave the tabs area to the left of the PDF pages empty. Select Bookmarks and page to display the contents of the Bookmarks tab (you use data selection objects to create bookmarks in PlanetPress) alongside the PDF pages. Select Page tab and Page to display the content of the Pages tab (thumbnails of each PDF pages) alongside the PDF pages.
l l l l l Grayscale images: l Compression: Auto l down sampling: Bicubic l Pixels per inch: 300 Color images: l Compression: Auto l down sampling: Bicubic l Pixels per inch: 150 Security: l Allow printing l Allow changing the document l Allow content copying l Allow form filling Font: l Embed all fonts l Subset embedded fonts Open options: l Zoom factor: Fit in window l Default view: Page only Database Query The Database Query action task retrieves data from various database
Note Database Query action tasks require version 2.5 or higher of the Microsoft Data Access Components (MDAC), including JET 4.0. When adding a Database Query action task, you have two options: l l You can use static properties (properties that will remain the same regardless of the data processed at run-time). This option lets you use an Open DataBase Connectivity (ODCB) compliant data source. You can also edit the SQL statement that assembles the database table.
Task properties Database Connection Tab l Database group l l l Table/Query: Select the table or query containing the information you need as your input data. Range group l l l Location: Enter either the path and name of the database or a database connection string in this box. You may click to navigate to the database and paste the database path and name automatically to this box. You may also click create an ODBC connection string to the data source and paste the string automatically to this box.
l l l l Sort on conditional field: Select this option if you want the table to be sorted using the field selected in the Create data pages as follows box before the data page creation process is started. Maximum number of records per page: For data pages that contain multiple records (a fixed or variable number of records), enter a maximum number of records per page in this box. Note that this value cannot exceed 4,000.
OK when you are done to close the dialog box. You will then no longer be able to use the Default width box. l XML Emulation: If you selected XML in the Output file emulation box, the following options are available: l l l l l l l l l Create data pages as follows: Select the option used to generate the data pages. Each data page created using the table or query selected above (Table/Query box) can contain a single record, a fixed number of records, or a variable number of records.
record processing can be delayed since the whole record set must be downloaded. Note MySQL, using ODBC 5.0, must be set to use a client-side cursor. Microsoft Access will always work better when using a Server-Side cursor. l l Include password in config: Select to save an encrypted version of the database password (if any) within the exported configuration. Export Config: Click to export the currently displayed properties of the PlanetPress Workflow action task.
l SQL statement: Enter your SQL statement. Remember that you may use variables and data selections in your statement. On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Decompress File(s) Decompress File action tasks decompress zipped job files (files compressed as zip files).
l l l l l File mask: Enter a file name mask to specify which files must be decompressed. Leave the default value of *.* to decompress all the files found within the zip. Password: Enter a password if the zip file is password protected. Restore path structure: Select if you want the complete file structure to be rebuilt from the output folder to the decompressed files. Force directories: Select if you want to allow the system to create new folders when required.
Differences between Digital Action and Image tasks l l Digital Action is an Action task and cannot be the last task in a branch or process. Image is an Output task, and has to be placed at the end of a process or branch. Digital Action can accept PDF/VT and PostScript (.ps) files as an input, even if they are not generated by any PlanetPress Workflow tools. Task properties General Tab l l l Host: Select the IP address of the PlanetPress Image host to which you want the request to be sent.
l l l Add job information to the document: Select to add the available job info variables in the “header” of the generated output file. Output type: Select the output file type that you want. l l l l l l l Optimized PostScript Stream: Select to merge the selected document with the data received by this task before sending it to PlanetPress Image. Note that some features, such as the Time and Date require that this option be selected. PDF: The output will be a PDF file.
TIFF G4, monochrome (1 bpp) is the only Color depth option you can select. This property is enabled for all output types except PDF. l l Multi-page: Select to generate a single file containing multiple pages. When this option is not selected, PlanetPress Image creates a file for each page included in the output file. This property is enabled for all output types except PDF and JPEG. Add page number: Select to put a page number on each page included in the output file.
l l Add PDF to PlanetPress Search database: Check to update the PlanetPress Search database with each new PDF generated. Index group: This group lets you specify which type of index must be created for each document generated by this task. PDI files are used by PlanetPress Search as indexing information. l l l l None: Select if you do not want this task to add an index file to the generated document. PDI: Select if you want this task to add a PDI index file to the generated document.
l l l l l l l Optimize for fast web view: Select to minimize file size and facilitate page downloading. Title: Enter a title for the document. If you leave this box empty, the document’s name will be used as the document’s title. Since this is a variable property box, you may use variables and data selections and let PlanetPress Workflow interpret this information at run-time. Author: You may enter the name of the author of the document.
well on images with large areas of single shades or repeating patterns, such as screen shots and simple images created with paint or drawing programs. JPEG removes image data and may reduce image quality, but may be suitable for continuous-tone photographs containing more detail than can be reproduced onscreen or in print. Since JPEG eliminates data, it can achieve much smaller file sizes than Flate compression. Select Auto to let the application choose the best compression method automatically.
used to control the down sampling process. Select None to prevent grayscale down sampling. Select Average to average pixel color in each sample area and to replace the entire area with a pixel of the average color. Select Subsample to use a pixel in the center of the sample area and replace the entire area with that pixel value. This method is significantly faster, but results in images that are less smooth. Select Bicubic to use a weighted average to determine pixel shades.
l l Initial view group l l l Zoom factor: Select the magnification at which you want Adobe Acrobat or Adobe Reader (or other PDF viewer) to open the generated PDF. Choose the Fit in window option to display the entire page using the available screen space, or choose a percentage of the actual document size. Show: Select the information you want Adobe Acrobat or Adobe Reader (or other PDF viewer) to display with the generated PDF.
window option to display the entire page using the available screen space, or choose a percentage of the actual document size. l Show: Select the information you want Adobe Acrobat or Adobe Reader (or other PDF viewer) to display with the generated PDF. Select Page only to leave the tabs area to the left of the PDF pages empty. Select Bookmarks and page to display the contents of the Bookmarks tab (you use data selection objects to create bookmarks in PlanetPress) alongside the PDF pages.
l l l l User ID: Enter the user id required to access the database to which you are adding new PDI files from the generated PDF files. If you are using an SQL database, enter the login name you chose when you configured the SQL database (refer to the “Using PlanetPressSearch with an SQL Server Database” section of the PlanetPress Search User Guide). Password: Enter the password required to access the database. Test Connection: Click to verify that PlanetPressImage can connect to the specified database.
Task properties General Tab l l l l l Hard disk name and path (as required): Enter the name and path of the hard disk to which the file is to be saved (enter “%disk0%/PPFiles/Resources”, for example, to save the file to the folder [ROOT]/PPFiles/Resources located on a hard disk identified internally as “disk0”). Leave blank to save the printer’s default hard disk and path. File name: Enter the name under which you want the file to be saved.
Note As with any task that can refer to network resources, it is important to understand the considerations involved with paths and permissions of these resources. Please refer to the "Network considerations" on page 21 page. There are some important things to consider when using the External Program task: l l The executable file must accept so-called "command-line options" and be able to run without any sort of user interaction.
run in command mode. Note that the program will be run without user interaction. Although it may display progress information, it is better if the application has no user interface. l l l l Start in: Enter the folder in which the external program is to run. This is important, for example, if the program is to generate files that are to be picked up in a specific location for further processing, or if it requires resources that are located in a specific folder.
condition set will cause be considered a success and any other exit code will cause the On Error tab to be triggered. On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Load External File Load External File action tasks are used to replace the current job file by the designated text file. Loading an external file does not delete the original file or modify it in any way.
On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Mathematical Operations The Mathematical Operations action task resolves a mathematical expression and stores the result in an existing Job Information or other type of variable (see "About variables" on page 727).
Task properties General Tab l Mathematical Expression: Variable data field containing the expression to be evaluated. This expression may combine any combination of standard PlanetPress Workflow variables and VBScript mathematical expressions. For example, to multiply Job Info 9 by 2, the expression would be %9*2 . Note The expression itself must be written in a format understood by the VBSCript scripting language.
another XML document is simply to rearrange the information it contains in order to make the data structure more convenient for your needs. Input A valid XML file. Processing The XSLT is applied to the XML data file. Output The modified XML data file is output. Metadata and Job Info variables are not modified. l l File l Import: Lets you open an existing XSLT script from an XSL, XSLT or TXT file. l Export: Lets you save the current XSLT script as a file. l Print: Prints the current XSLT script.
l l l XSLT Version l XSLT 1.0: Select if you will be entering or pasting XSLT version 1.0 code. l XSLT 2.0: Select if you will be entering or pasting XSLT version 2.0 code. Tools l l Go To Line: Brings up the Go To Line dialog where you can enter a line number and jump directly to that line. Editor Options...: Opens the "Editor Options" on page 833.
Licensing This plugin requires the OL Connect Workflow Imaging license. Workflow Imaging is an add-on license bundle for OL Connect Workflow that includes the Image and Fax plugins; see "About PlanetPress Image" on page 770 and "About PlanetPress Fax" on page 769. Without a valid Imaging license, the plugin will fail with an error. In the trial version, the plugin will work, but the resulting PDF file be watermarked. Input This task accepts any job file as input.
l l External file: Adds the attachments to an external file. Use the Browse button to select a PDF/A-3 compliant file. Note that the task doesn't verify that the target file is PDF/A-3 compliant. If it is a PDF file that is non-PDF/A-3 compliant, the task will add the attachments to it, but it will not convert the file into a PDF/A-3 compliant file. Attachments: Specify which files should be attached to the target file.
l Relationship: Specifies what the attachment is in relation to the (entire) PDF document: l l l l l Alternative: An alternative representation of the PDF document; for instance, an XML version of the invoice in the PDF. Data: Data that is visually represented in the PDF; a CSV file with the detail lines of the invoice, for example. Source: The source that the PDF was created from. If the target PDF was created from a Word file, that Word file would be the source.
l Properties: l l The DocumentFileName, DocumentType and Version are read-only. ConformanceLevel: Each standard specifies a number of different levels a file can conform to. For information about these levels please refer to the specifications of the standard. On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area.
l l l Output format: The output format can be either PNG or JPG. Resolution: Specify the resolution of the bitmaps (pixels per inch). The minimum is 12, the maximum is 1200. For example, with the minimum of 12, a PDF page that is 8,5 inch wide is converted into a bitmap of 102 pixels wide, which could be used as a thumbnail on a web page. Page range: An asterisk (*) means: convert all pages.
Input Any data file, in any format. Processing A new KeySet is added to the Data Repository, or updated, using the data provided. Output The unmodified input file. This task does not change the data file in any way. The only modification is a single variable or Job Info variable, if the Store Result option is selected. Task properties General tab l l Group: Use the drop-down to select into which group the KeySet is inserted, or in which group the KeySet should be updated.
l l l age IS NOT NULL l last_name LIKE 'La%' l province IN ('QC', 'ON', 'AB') Add KeySet when condition is false: If the update condition above is false, a new KeySet is added to the group. If unchecked, no data is changed in the repository. Store the result ID in variable: Select a variable or Job Info in which an array of inserted or updated IDs will be placed. The array of IDs in the form of [1, 2, 3, 4, 2443, 532, 5457, ...
Task properties General Tab l New file name: Enter the job file’s new name.You can use any combination of text, variables and data selections; see "Variable task properties" on page 337. On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area.
Output Whatever file the Run Script action generates, Metadata it modifies or creates, etc. Note When using Run Script as a Condition, the output of the task can be within the branch or on the main trunk. To control the output, use the "Script.ReturnValue" on page 175 variable in your script. Properties The Script Editor menu options are as follows. l File l l l Export: Lets you save the current script as a file. l Print: Prints the current script. Edit l Undo: Undo the last edit.
l l l Language: Select the language in which your script is written. Choices are VBScript, JavaScript, Perl or Python. Tools l l Go To Line: Brings up the Go To Line dialog where you can enter a line number and jump directly to that line. Editor Options...: Opens the "Editor Options" on page 833. Help l Contents and Indexes: Opens the Editor Help (this page) The other options of the window are: l l l The script editor text box: This is where you enter your script that will be used.
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Search and Replace Search and Replace Action tasks are used to locate and replace strings of data within the job file and to replace them with other strings of data. Note that this Action task cannot be used with binary files. For more advanced search and replace functionality, see "Advanced Search and Replace" on page 406.
l l Find: Enter the string of data for which to search. In this variable property box, you may enter static characters, variables, job information elements, data selections, or any combination of these. Replace with: Enter the string of data to use as a replacement. Since this is also a variable property box, the same as above applies. l button: Click to add a new line to the list of words to find and replace. l button: Click to remove the currently selected line from the list.
Input Any image file that you wish to upload to the printer. Processing The currently active image data file converted to PostScript. The image's resolution, scan orientation, and quality can be modified, depending on the selected option. All files are converted into PostScript format for storage on the printer. If a virtual drive, the file is automatically sent to it. Output A PostScript file containing the necessary code to save the data file on the hard drive.
l l l l l Image compression level: Select the level at which you want images to be compressed. Values can range from 1 (compress up to 1% of the image’s original size) to 100 (do not compress). For example if you set this box to 75, the Image Downloader compresses all images by 75% when it converts those image to PostScript. The default compression level is 70%. Send to Virtual Drive of: Select the computers and / or printers to which the images are to be sent.
Input Any data file in any format. Processing A copy of the data file is saved on the hard drive at the specified location. Output The original data file, Metadata and Job Info variables are not modified, they are passed on to the next task. Task properties General Tab l l l l Folder: Enter the path of the folder to which the files are to be saved. File name: Enter the name of the output files generated by this task.
Set Job Infos and Variables Add Set Job Infos and Variables action tasks to set Job Info elements as well as custom variables (see "About variables" on page 727). You can set multiple variables and Job Info values in a single task. Be aware that lines are processed from top to bottom. Input Any data file in any format. Processing This task assigns the defined values to local or global variables or Job Info variables. It does not modify the data file nor the Metadata.
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. SOAP Client plugin SOAP Client plugin tasks can be used as Input, Output and Action tasks, although their basic function is to generate output. SOAP (Simple Object Access Protocol) is a light protocol that defines a standard XML format used to communicate among systems across different architectures, languages, and operating systems.
Task properties General Tab l WSDL address: Enter the URL address of the WSDL file, or choose a previously selected address from the drop-down list. Note The WSDL Address of a PlanetPress Workflow SOAP server is the following: http://127.0.0.1:8080/wsdl/isoapact (assuming you are on the same machine and did not change the default HTTP port). l l l Get: Click to get the WSDL file from the SOAP server and populate the Service box below.
l l l Value: Lets you enter fixed or variable values. To exchange variable information between the Web service and PlanetPress Workflow, you must use job information variables %1 to %9 or variable %c (which contains the entire job file). Note that return values (arguments which are used to return information to the SOAP Client) are displayed in bold font. Namespace: Displays the namespace of the arguments associated with the selected method.
when printing to a PostScript printer that does not recognize them. PlanetPress Workflow provides an easy way to automatically filter these characters through its Standard Filter task. Input Text-based data files such as line printer data (see "Line printer emulation" on page 67) and ASCII data files (see "ASCII emulation" on page 63) data files, which contain HP PCL control characters. Processing All HP PCL characters are removed from the data file.
Translator Translator action tasks can convert your data from its current encoding to a different encoding. The same data may be converted back and forth as required. The Translator action task is useful for data files using foreign languages, as well as to convert Unicode data files so that they can be manipulated within Workflow. Note that if Workflow's only job is to pass the data file to a task, there's no need to convert the data file. The OL Connect Server does support Unicode data files.
Task properties General Tab l l l l Source encoding: Select the current data encoding. Note that the source encoding is not selected automatically and you must therefore select the proper encoding from this list in order for the conversion process to be performed successfully. Target encoding: Select the encoding to which you want the data to be converted.
Note Although it is more common to perform both phases in a single pass, each phase can be performed selectively, as required. Input A print job in EMF format, generally captured from a WinQueue input task. Processing The EMF job is converted into a text-only, "Line printer emulation" on page 67 data file. Output A Line Printer file. Metadata, Job Info variables and other variables are not changed.
maximum to minimum font size (in points), that is less than 0.60, two text passages are not recognized as belonging together. For example, if two text passages are formatted with different font sizes. Passage 1 with 10, passage 2 with 18 point. The ratio 0.56 is smaller than the adjusted value 0.60. Therefore those two text passages are recognized as not belonging together.
factor the font's height and size is multiplied with. The value for the font's height therefore is taken from the corresponding font's attributes. For example, if the height of that font example in 10 point size is 0.32 cm. There is a passage found that is positioned 0.15 cm above - which means 0.15/0.31 = 0.48 < 0.50 - the previous text passage. So the two passages are not recognized as belonging together. l Windows Print Converter: Select this option if the task is to generate a Line Printer file.
If the current job file isn't JSON or XML (depending on the type of conversion requested), or if the conversion fails for any reason, the task raises an error and the current job file and metadata remain unchanged. JSON to XML conversion When a JSON source file contains a single JSON object, that object's key will be used as the root node name in the resulting XML file, and the root node will be populated with the data inside of the JSON object.
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Data splitters Splitter action tasks are used to split single data files into multiple data files. Splitters initiate a recurring cycle that stops only when the original file has been completely processed. When a given splitter creates a file, it hands it down to the task that follows, and all the tasks on the same branch are performed until the output task.
de-emulated. Most times, the emulation/de-emulation process is completely transparent. However, in some cases, there may be minute differences. When using the ASCII or Channel Skip emulation, if there are missing line feed characters (when lines end with a single carriage return in ASCII, or when lines start with a No line feed channel in Channel Skip), the output data will be different from the input data, but the change will not be significant.
Database Splitter The Database Splitter is used to split database files into multiple data files that are passed to subsequent tasks in the process. Input Database data (see "Database emulation" on page 75). Processing The file is separated into multiple chunks according to the rules set in the task's properties. Output Multiple data files, sent one after the other to the rest of the tasks in the process. Metadata, job infos and user variables are not modified by this task.
l l l l l l l l l l Operator: Select the condition to fulfill for the condition to be true and thus for the splitting process to take place. Value: Enter the condition value. Note that you can use the popup menu's Get Data command to select the value and populate this box automatically Match case: Select to force the splitter to match the character casing when resolving the Field value change or Field value condition.
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Emulated Data Splitter Emulated Data Splitter action tasks are used to split emulated data files (with the exception of XML and database data files - refer to "XML Splitter" on page 493 or "Database Splitter" on page 478) into multiple data files that are passed to subsequent tasks in the process.
Task properties General Tab l Split data file on emulated page group: Select to split the data file based on pages (rather than on a word found within the emulated data) and to activate the option from this group, which is used to tailor exactly how you want the page based splitting process to take place. l l Page(s) per output: Enter the number of pages to include in the file generated by the splitter in this edit box below or use the spin buttons.
l l Trim selection: Select to force the splitter to strip empty trailing characters. When this option is not selected, blank trailing characters, if any, are considered in the matching process, so the word “DAY” will not be considered as matching the word “DAY”. Note that this setting applies only to the Word change option. Where to split: By default, the task splits the file at the beginning of the line on which the condition is met (the default value is 0).
have more options than the other ones, this is only because it contains combined features from these other splitters. Warning The Generic Splitter, while seemingly more feature-rich, is slower than the other splitters by an order of magnitude. Whenever encountering the Generic Splitter, it is always recommended to replace it with a more appropriate splitter instead. Input Any data file. Processing The file is separated into multiple chunks according to the rules set in the task's properties.
l A word: If you choose “A word” in the Split data file on list box (the Use emulation option must be selected), the following boxes are displayed: l l l Word: Enter the string of characters to search for as the splitting criteria. In this variable property box, you may enter static characters, variables, job information elements or any combination of these. Get: Click to get a static string of characters from the sample data file.
l l Split when word found: You may not want to split the file every time the string of characters entered above is found, but only every other time, or every third time. If so, enter the number of times in this box. A word change: If you choose A word change in the Split data file on list box (the Use emulation option must be selected), the following boxes are displayed. l l l Get: Click to select a search region.
l l A page number: If you choose A page number in the Split data file on list box (the Use emulation option must be selected), the following boxes are displayed. l l l Split when word changed: You may not want to split the file every time the string of characters entered above changes, but only every other time, or every third time. If so, enter the number of times in this box. Pages per output file: Enter a number of pages after which to split the file.
l l l Before or after: In the previous box, you entered where you wanted to split the file. Here is where you specify whether you want the Generic Splitter to split the file X number of pages or records before or after the string. Choose 5 in the Pages or records box and “Records after” in this box, for example, to split the file 5 records after the record that matches the condition.
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. In-Stream Splitter In-Stream Splitter action tasks are used to split non-emulated data files into multiple data files that are passed to subsequent tasks in the process. Note Performing the splitting process on raw, non-emulated data speeds up the splitting process.
l l l l l l l From column: Enter a value corresponding to the first column in which the splitter must start searching for the word. To column: Enter a value corresponding to the last column in which the splitter must start searching for the word. Match case: Select to force the splitter to match the character casing of the string of characters entered above with the characters found in the file. If this option is selected, “DAY” and “Day” will not be considered as matching the search string “day”.
input, the Metadata Sequencer might perform better. For more information and some test results, see this How-to: Performance testing grounds. In the case of Connect Print output, using Print Presets to separate the output is preferable to using the PDF Splitter. How to separate Print output in Connect is explained in the Connect Online Help: How to split print output into multiple files. Input A PDF data file (see "PDF emulation" on page 68).
tailor exactly how you want the region based splitting process to take place. l l l l l l l l l l l On region content change: Select if you want the data file to be split when the word found at a given location changes. Get button: Click to go to the Data Selector and select the location associated with the On region change option. Specific word: Enter the word to use as the splitting criteria.
l l l After: If you entered a value other than 0 in the Where to split box, select this option if you want to split the file a given number of lines after the line on which the condition is met. When condition is found: By default, the task splits the file every time the condition is met (the default value is 1). If you want the task to split the file only when the condition has been met twice, for example, enter the number 2 in this box.
On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area. XML Splitter XML Splitter action tasks use the XSLT language to split XML data files into multiple XML data files that are passed to subsequent tasks in the process. The XML splitter includes options to add a new root node within the generated files, as well as to change the original file’s encoding to UTF8.
l Standard XML splitter The following options are only displayed when the Standard XML splitter option is selected in the Split method box. l l l l l l l l l l Condition node path: In the tree view, select the XML node to consider to determine when to split the file. To indicate whether you want the file to be split whenever this node is encountered or whenever the information in this node changes, see the Condition group below.
l l l Advanced XML splitter: The following options and buttons are only displayed when the Advanced XML splitter option is selected in the Split method box. Note that you should not use this option before you have completed all the required settings using the Standard XML splitter option. Refresh XSLT button: Once you have made all the required settings using the Standard XML splitter option, click this button to display the XML code generated by the XML splitter.
On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Process logic tasks A process is like a flowchart. The data files captured by the Input tasks become job files (see "Job file" on page 52) that travel down the process. Many processes include multiple process logic tasks.
Note Branches, Loops and other Process logic tasks do not generally modify the job file, though some may change system variables. The only exception is the Run Script action, which can be a condition that also modifies the data. Warning Branches, Loops and Conditions do NOT modify metadata in any way. Furthermore, even if a branch does a backup of Job Info variables and the data file, it does not back up the metadata. Keep this in mind when designing a process.
Task properties Backup Tab l l l l Backup job file: Select if you want PlanetPress Workflow to use identical copies of the job file for the main and secondary branches. When this option is not selected, the file generated by the output task located at the end of the secondary branch is used as the job file for the main branch. Note that if the secondary branch ends with a Delete output task, the main branch will receive the job file in the state it was just before the delete.
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Comment Comments can be used to clarify your process either for yourself or others, to explain branches and scripts, or add information for anyone editing the configuration in the future. Comments do not open, modify or otherwise process the job file in any way, and are simply ignored at run-time.
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. File Name Condition File Name Condition tasks test the original name of the job file traveling down the process branch, or in other words, the name of the file received by the last input task appearing above the condition. Task properties General Tab l l File name mask: Enter one file name mask or multiple masks separated by a semicolon (;). See "Masks" on page 340.
Task properties General Tab l l l File size is: Select whether the condition is to check if the job file is smaller (less than) or larger (more than) then the specified value. Kbytes: Enter the minimum (more than) or maximum (less than) size setting in kilobytes. Invert condition result: Select to toggle the result of the condition (true becomes false and vice versa). On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks.
Task properties General Tab l l l l l Subprocess: Drop down list containing all the available subprocesses in the current configuration. Backup job file: Select if you want to use identical copies of the job file for the main process and the subprocess. Backup job information: Select if you want to use identical copies of the job file information for the main process and subprocess. Once the subprocess completes its execution, the main process will retrieve the original job information values.
Task properties General Tab l l l l Number of iterations: The number of times the loop should be repeated. Every task after the Loop action task will be repeated this number of times. The number may be static, or use a variable (see "Variable task properties" on page 738). Store current iteration in Job Info #: The Job Info in which the loop's iteration should be stored. Useful for sequential file names or conditions based on the iteration.
or a Condition from a contextual menu. (See also: "About branches and conditions" on page 137.) For more information on scripts, what languages are supported and how to write scripts and conditions, please see the related chapter, "Using Scripts" on page 143. Input Any data file, in any format. Processing The script is executed. The script can modify anything such as the data file, Job Info variables, Metadata, or even other files on the operating system.
l Edit l Undo: Undo the last edit. l Cut: Cut the current selection (only available if there is selected text in the editor). l l l l l l Delete: Delete the current selection (only available if there is selected text in the editor). Select All: Select all of the contents of the editor. l Find: Brings up the Find dialog. l Find Again: Repeats the previous search and finds the next occurrence. l Replace: Brings up the Replace dialog.
l Script filename and path: Either the full path of the script, or click the Browse button to navigate to the file. This option is only available if you choose external script file in the Script running from option. Warning With the Run Script action, the On Error tab is accessible by right-clicking on the action in your process and clicking Advanced Properties.
Note that a process called through the Send To Process plugin will not self-replicate, even if the process' preferences specify that it should. The initial Input task is being bypassed, and since it's the Input task that initiates the self-replication procedure, self-replication cannot occur. Task properties General Tab l Process: The name of the target process to send the current job to. Note that startup processes and subprocesses are not available.
Management Information Base Object Identifiers A Management Information Base (MIB) is a database of Object Identifiers (OIDs) that can be used to monitor device objects using SNMP. An MIB OID can point be a printer tray, cartridge or hard disk, or to modem mode. Using an SNMP condition, PlanetPress Workflow can communicate with a device located at a given IP address and request the status of the object identified by a given MIB OID number.
l l Printer Queue group (displayed when Printer Queue is selected in the Condition Type box) l l l l Condition type: Select Printer Queue to test a standard printer status condition or User Defined to test a status identified using a printer specific identification code. Bear in mind that the failure to comply with any of the test conditions selected below will make the whole condition False. Printer status: Select Idle or Printing to test whether the printer is currently idle or printing.
Text Condition Text Condition tasks can be used to perform two different types of tests: l l To test the presence of a string within the job file. You can, for example, search for the string “Gold member” on the first line of the job file. As another example, you could search for a variable string retrieved via a job info variable or a data selection in a given location in the job file. To compare two strings. As with the test above, this test can also be used to search for a string in a given location.
comparison. If you chose an operator that compares numeric values, you should select this option. l l l l l l On numeric error: This option is only available when the Numeric comparison option is selected. Select the behavior you prefer when PlanetPress Workflow is unable to successfully perform a numeric comparison. Select ”Return the error”, if you want the Text condition to fail altogether. Select ”Return true”, if you want the condition to be considered True.
change time intervals, for instance, that range from 15 minutes to 24 hours. You may choose to use days or dates, and you may also select specific weeks or months. The Time of Day Condition differs from the process schedule in the fact that you could put this condition after generating some output, and you can also run tasks when the condition itself is false, which is not the case for a process outside of schedule. You can choose contiguous as well as separate time blocks as required.
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Connector tasks A Connector, as the name implies, is a task that connects to something outside of PlanetPress Workflow itself. In some cases those are other parts of the PlanetPress Workflow, but in other cases we offer connectors for third-party applications or systems.
Task properties General Tab l Register Job to the SureTrac Server group: Check this option to enable the group. l l l l l Process Verification Job Name: The SureTrac job that this PDF should fall under. Use the button next to the list to retrieve a list of available SureTrac jobs from the server. Mailrun ID: A unique identification for the current job.
This task can be added as an Action task (see "Action tasks" on page 402) or as a Condition Task. When used as a Condition task, the success of the delete operation determines whether the condition returns True or False. Input This task doesn't require an input file. It does need a Repository ID and password, and the ID of the document to delete. Processing This task connects to a Capture OnTheGo Repository and requests removal of a document with a given document ID.
On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Input from SharePoint The Input from SharePoint task can be used to retrieve files from a SharePoint server on your network, filtering on your template fields and creating Metadata to use in your process.
Task properties General Tab Note For this tab to work, you must have entered your SharePoint Connection information in the Connection Tab. l l l l l l l SharePoint Site: The name of the SharePoint site from where you want to retrieve documents. You can click on the Refresh button to display a list of sites on your SharePoint server. Document Library: The document library where you want to retrieve the files.
Connection Tab l l l l Server Name: The name of the SharePoint server. This can either be a server name (e.g. http://SharePoint2003 ) or an IP address (e.g. http://192.168.1.123 ). Both http:// and https:// (secure) connections are accepted. Domain: The active directory domain for the logon credentials. This is not necessary if the SharePoint server is not part of a domain. User Name: A valid user name that has access to the SharePoint site and is able to read and write to document libraries.
On Error Tab Laserfiche Repository Output The Laserfiche Repository Output task publishes files - and optionally sets index values into a Laserfiche server. This task uploads any documents in a Laserfiche repository, optionally filling the index information on the Laserfiche server with dynamic information that can be taken from PlanetPress Workflow PDI files (for PlanetPress Workflow archives only). Note The Laserfiche Repository Output requires the Laserfiche run-time version 8.
Task Properties General Tab l Laserfiche configuration group l l Folder: Enter the Laserfiche client repository folder where the documents will be exported. The user can specify the remote folder by clicking the Browse… button. Note: If the Folder field is empty, the documents will be exported by default to the root folder Import Format group l l l l l l l Laserfiche Pages: Converts all images files (*.bmp, *.gif, *.jpeg, *.pcx, *.png, *.tif, *.tiff, *.
Connection Tab l Server Name: The server name or IP address of the server you wish to connect to. l Repository: The name of the repository you wish to send the files to. l User name: A user name in Laserfiche that has access to the above repository. l Password: The password for the above user name. l Test Connection: Click to verify that the information entered in this tab is correct and the server accepts it.
Lookup in Microsoft® Excel® Documents The Lookup in Microsoft® Excel® Documents action task is used to complement your job file's Metadata by retrieving data from a Microsoft® Excel® spreadsheet on your system. The data retrieved is based on existing data in your Metadata, and it will either be added to your Metadata or will append or replace your existing Metadata if it exists.
Excel® Documents action task updates the value of all 'ItemDesc' Metadata fields with their corresponding foreign language descriptions. Input Any compatible data file. This task requires Metadata to be present. Processing The task parses each level of the Metadata and, for each field of the specified name it finds, a lookup is made. If a field of the same name appears on multiple levels, the lookup will happen for all fields, on all levels, individually. Output The original data file is unchanged.
l l l l l l l Add Field: Creates a new field with the data. This may cause multiple fields to be created. Replace field value: Replaces any existing field with the new content. Only the last result will be displayed. If the field does not exist, it will create it. Append field value: Ads the data to the existing field within the same one. No "separator" is added. If the field does not exist, it will create it. Result Field: The Metadata field name in which the result should be stored.
Notes l Microsoft® Word® needs to be installed for this task to be functional and to test the connection. l Microsoft Word must not be currently opened when the automation task runs. l Microsoft Word 2003 and up are supported. l l l l l While debugging this task, the printer shows the message that the document can not be printed. This message is normal and will not appear when running a live configuration.
Output The output is either: l A PDF file accompanied with basic PDF metadata. This is the default output. The Metadata contains one Document level, and one Data page (and Page) level for each PDF page generated by the document. When Mail Merge is not selected, this is the only available choice. Note The Objectif Lune Printer Driver will naturally add a margin to the PDF generated by this task. If your PDF is full bleed you will not get the desired results using this option.
l l l SQL Statement: An SQL statement that is understood by the database you are using and that will return a series of records that the Microsoft® Word® template is expecting. Note that no validation is made on SQL statements except if they are for Microsoft Access and Excel data files. You can use the Test Connection button to test the SQL and connection string.
Input This task ignores the input data file and any Metadata unless data selections are used in the variable data fields. Processing This task does not process the data or Metadata file. The information entered in the Deposit tab of this task is sent to the repository configured in the Repository tab. Output The output that this task produces is the information sent to the Capture OnTheGo online repository (the document ID).
l l l l File Type: Select the appropriate document type. HTML for forms that users can fill out, and PDF for documents users can read. Cover Image: Enter the path to a cover image that is shown in the repository and library list, as well as the document property. The maximum image size is 512x512 px and it is required to be in JPG or PNG format. Use the Browse button to locate an image on the local drive. The Cover Image is optional and, if omitted, displays a default image based on the file type.
the names are case insensitive. Click the button marked with a plus sign to add a category to this list box. To remove a category, make a selection in the list and then click the button marked with an X. l Fail process if any of the categories does not exist: Check this box if you want the process to fail if any of the categories listed above does not exist on the Capture OnTheGo Server.
l l l Time zone: When you enter a number of days in the For box or a date in the Until box above, the computer’s time zone appears in this box. You may select a different time zone if required. Document Tracking: l l l Until: If you want the document to remain in the repository until a given date, select this option and enter a date in the corresponding box (the date format must be “YYYY-MM-DD” - note that you can use the date picker).
Input Any data file, with optional Metadata. Processing The task connects to the selected Document store and uploads the current data file. If the file already exists, it will be overwritten and, if this option is selected, marked as "checked in". The information accompanying the file (the SharePoint Metadata) is either updated or created. Output The output of this task is the original data file.
l l l l Field Name: Name of the field as set in SharePoint Document Library. Field Information: The information to enter in the SharePoint Document's Metadata for this field. Use PDF/A: Check to use the information contained within an PDF. This PDF must have been created with PlanetPress Image and contain an Index field (data selection) of which the name corresponds exactly to the Field Name in the SharePoint Document Library.
l l l Domain: The active directory domain for the log-on credentials. This is not necessary if the SharePoint server is not part of a domain. User Name: A valid user name that has access to the SharePoint site and is able to read and write to document libraries. Password: The correct password for the user name. On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area.
the PlanetPress Fax host specified in the properties. If the file is a TIFF file in the proper format and the "Pass-through" option is selected, no processing is done, the file is sent as-is. Output A TIFF in the CCITT Group 4 compression, and information for the FAX server to know where to send the file. Task properties General Tab l l l l l Host: Select the IP address of the PlanetPress Fax host to which you want the request to be sent.
Since this task is an Output, it is not possible to immediately act on the generated image before continuing. When necessary to immediately retrieve the generated file, the "Digital Action" on page 431 task should be used instead. In addition to the job-specific PlanetPress Image properties you configure in the task’s Properties dialog box, there are configurable options common to all PlanetPress Image outputs processed by a given computer (see "PlanetPress Image preferences" on page 828).
Processing & Output Multiple things can happen, depending on the options chosen and the type of data this task receives: l l l If the data file and a document are selected, and Printer Centric mode is used, the data file is sent to the PlanetPress Image host which merges the data and document to produce output.
l l List only documents using VDX compilation: Check to ensure that only documents that are compatible with the VDX compilation method are shown in the list, if producing VDX output. Run mode group (only with PlanetPress Design document) l l l l Optimized PostScript Stream: Select to merge the selected document with the data received by this task before sending it to PlanetPress Image. Note that some features, such as the Time and Date functions, require that this option be selected.
l l l l l l l Color depth: Enter the color depth of the output image in bits per pixel (bpp). The color depth is measured in bits, because each pixel of the output image can be described with a varied number of bits. A higher bit number allows for more colors. It also increases the image file size. A 1-bit color depth produces monochrome images.
l l Automatically Add Extension: Check if you want the correct extension for the image type to be appended to the file name automatically, rather than having to add it in the Filename box. The Output Type determines the extension to be used. Index group: This group lets you specify which type of index must be created for each document generated by this task. PDI files are used by PlanetPress Search as indexing information.
l l l l l l l Optimize for fast web view: Select to minimize file size and facilitate page downloading. Title: Enter a title for the document. If you leave this box empty, the document’s name will be used as the document’s title. Since this is a variable property box, you may use variables and data selections and let PlanetPress Workflow interpret this information at run-time. Author: You may enter the name of the author of the document.
images with large areas of single shades or repeating patterns, such as screen shots and simple images created with paint or drawing programs. JPEG removes image data and may reduce image quality, but may be suitable for continuous-tone photographs containing more detail than can be reproduced onscreen or in print. Since JPEG eliminates data, it can achieve much smaller file sizes than Flate compression. Select Auto to let the application choose the best compression method automatically.
sampling. Select Average to average pixel color in each sample area and to replace the entire area with a pixel of the average color. Select Subsample to use a pixel in the center of the sample area and replace the entire area with that pixel value. This method is significantly faster, but results in images that are less smooth. Select Bicubic to use a weighted average to determine pixel shades. This method is the slowest but most precise and results in the smoothest tonal gradations.
actually used in the document. This option can only be used if the Embed all fonts option is selected. Note that if more than 35% of the characters included in a font are used in the document, the entire font is embedded. This option often produces smaller PDF files and ensures proper PDF display. l Initial view group l l Zoom factor: Select the magnification at which you want Adobe Acrobat or Adobe Reader (or other PDF viewer) to open the generated PDF.
l l l l l l l Data source name: Enter the name of the computer on which the database runs. This option is available only when you select SQL Server database or Oracle database in the Database type box. Use default database: Select to use the default database associated with your user profile on that SQL Server or Oracle database. Clear to enter the name of the database in the box that appears.
l l PReS Classic 6.3.0 or higher must be installed on the same system. A valid PReS Classic license (either dongle or software based) must be available on the same system. Note All PReS Classic licenses are issued and controlled by the PReS License Server and not Connect. Thus a separate PReS Classic license is required. Input A PReS Classic job and the resources it needs.
Task properties General Tab l PDC File: Select either an un-compiled PReS Classic script file (PDS) which will need to be compiled on the fly, or a pre-compiled PReS Classic job file (PDC). The job needs to be specified exactly. If you want to compile the job at run time, then you must select a PDS file. If you wish to use a pre-compiled PReS Classic job, then select the PDC file, rather than the PDS.
Note If the PDC File selection contains a folder path and the Working Folder also has an entry, then the PDC File entry will be appended to the Working Folder entry. One should be very cautious doing this, as it could easily lead to errors. l PDL Type: Select the desired PReS Classic output type for the job. Note Not all PReS Classic jobs can be swapped between output types. Jobs designed for certain output types (such as AFPDS) will likely have settings specific to the original output type.
Note It is heavily recommended that this setting be left as ‘Auto’, as PReS Classic licenses being assigned to different PRNx instances is extremely rare. l Time-out: The time in seconds that the Connect Workflow waits for a response from the PReS Print Control to make sure it is running. If Connect Workflow does not receive a response in the allotted time it will terminate the Print Control and continue to the next step in the workflow.
Processing The data file is merged with the selected PrintShop Mail Design document, producing the number of records selected in the task properties. This merging uses the PrintShop Mail engine (PSMail.exe) to generate the output. Output The output produced by this task is dependent on the options selected: it can be PDF, a Windows EMF print job, a PostScript print job or a JPG file. PrintShop Mail 7 can also output PDF/VT and PPML/VDX.
l l l l l l l l l Distilling options file: Enter the name and path of a distilling options file (or "joboptions" file) or use the Browse button to navigate to that file. This option is only available when PDF is selected in the Output type box. PDF Type: Select Preview or Print to select which type of PDF should be generated. This option is only available when PDF is selected in the Output type box. PostScript Driver: Select which driver to use to generate the job.
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. ZUGFeRD plugin The ZUGFeRD plugin provides a way to enrich German PDF invoices with data specific to the invoice. This is done by embedding the data in a standardized XML format within the PDF itself. For general information on the Plugin, see "ZUGFeRD" on page 772. Input A PDF file that is PDF/A compliant. The PDF/A conformity level doesn't matter. It may be 1, 2 or 3.
including Workflow information that relates to the currently processing invoice (such as Metadata and variables) into the ZUGFeRD fields. For more information on Workflow context menu data selection options, see this page: Workflow Variable Properties l Zu verwendendes PDF group: Allows selection of the PDF file to process and enrich with the ZUGFeRD-XML information. Select from: l l Workflow Jobdatei: Use the incoming Workflow Job File. Datei: Specify a specific PDF.
when the drop down icon is selected. Note The date entry must be formatted in standardized UTC format: yyyy-mm-dd Any other formatting will lead to a run-time error. l Lieferant group contains all the required values and information related to the seller, delivery and/or the invoicing party. l l l Name: The individual or company name. This field supports alphanumeric strings and can be set via Workflow data and/or variables. Adresse: The postal address (sans post code and city entries).
variables. However, the country code must always follow the standard of exactly two uppercase letters only. Note The plugin does not check if a given country code is in the list of valid country codes. It is the responsibility of the user to ensure that only valid country codes are entered. This field can be set via Workflow data and/or variables. l l Art der Steuernummer: The two letter code for the tax identity number. Select from the drop down list box.
variables. l Postleitzahl: The postal address post/ZIP code. Note No postal code validation is done by the plugin, so it is up to the user to make sure that the postal code entry is valid and in the correct format for the indicated country. This field can be set via Workflow data and/or variables. l l Ort: The postal address city/town. This field supports alphanumeric strings and can be set via Workflow data and/or variables.
For more information on Workflow context menu data selection options, see this page: Workflow Variable Properties l Zahlungsinformationen group contains payment related information. l l Zahlungsreferenz: The payment reference, purpose, or payment number serving as identifier for the payment. This field supports alphanumeric strings and can be set via Workflow data and/or variables. Währung: This is a 3-letter currency code, as defined in the ISO 4217 3A standard.
l BIC: This is an international bank code that identifies particular banks worldwide, using the Bank Identifier Code (BIC) standard. The standard consists of a 4-letter institution or bank code, a 2-letter country code (following the ISO 3166-1 alpha-2 standard), a 2-character (letter or digits) location code and an optional 3-character (letter or digits) branch code. Note The plugin does not validate bank IBAN/BIC codes. It is the responsibility of the user to ensure that valid codes are entered.
This entry should be a numeric currency entry, which can be set via Workflow data and/or variables. l Detaillierte steuerliche Informationen group contains detailed taxation information. l l l l l l Gesamtbetrag der Positionen: The total amount. This entry should be a numeric currency entry, which can be set via Workflow data and/or variables. Bruttosumme: The grand total amount. This entry should be a numeric currency entry, which can be set via Workflow data and/or variables.
PlanetPress Capture Note PlanetPress Capture is only available in version 7.2 and higher of PlanetPress Suite Production. It is not available in older versions, nor is it available in the Office and Watch versions of PlanetPress Suite. PlanetPress Capture is not compatible with OL Connect Designer templates. PlanetPress Capture is a set of tools available in PlanetPress Workflow that enable output and input for interaction with an Anoto Digital Pen.
page 568 or "Find Capture Documents" on page 574 task. However, it is also possible to directly retrieve the required information from a specific Document ID. When a specific ID is used, the data file and Metadata are completely ignored by this task's condition rules, and the database information is used instead. Processing The condition is evaluated using the specified rules, combination (condition is true when...) and scope (condition scope).
l l l l Document is empty: Condition will be true if the document is open but no Capture Field is filled. Document is on error: Condition will be true if a logical error was triggered while processing the PGC. This can happen, for example, if a field was re-written when it should not, a List Field set to only accept one option contains ink in both options, etc.
l Condition: Defines what should trigger the condition: l Ink is Present: Triggered by the presence or absence of ink in the field. l l l l l l l l l l All: Ink should be present in all fields of this name in your document. Index: The specified index of the Capture Field of this name should contain ink. The Index property is generated when a Capture Field object is repeated or is part of a runpage. This index is 1-based.
l l l l Error: A logical error was detected in the field. This can happen, for example, if a field was re-written when it should not, a List Field set to only accept one option contains ink in both options, etc. ICR Value: Triggered when the value given by the ICR engine compares with the specified value. Operators are available for the comparison (such as Equal, Not Equal, Lower or Higher Than, Contains and etc).
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Capture Fields Generator The Capture Fields Generator action task is used to generate Capture patterns in your job, which will then be printed for use with an Anoto Digital Pen. It also interacts with the Capture database and does some operations.
If using the Metadata Sequencer it is generally recommended to place the Sequencer and the Capture Fields Generator tasks within a branch and, within the Capture Field Generator's On Error properties tab, to set it to stop the branch if any errors occur. This is to ensure that if such an error occurs most of your document sequences will get generated and you will not have to start the job over from the beginning.
l Document Title group: Determines a Title for the document. This title is accessible in the Capture Database and can be used to search for a document or retrieve a list of document using other tasks. l l l l l l Custom: Use the title in the input field as set by the user. The field is variable so the title can be set on a per-document basis using data or metadata selections.
over 200 patents worldwide, including but not limited to US6663008, US7172131, US7248250, US7281668, JP3872498, JP3842283, CN1595440, SE517445, RU2256225, and AU773011. Capture Fields Processor The Capture Fields Processor action task is used to update the Capture database using information received from an incoming PGC file, which generally originates from a communication by the Anoto penDirector.
your PGC file before using this task and to create an error handling process to capture these errors. Logical errors do not cause this task to exit. For example, if a List Item Capture Field is set to only accept a single option but contains ink in more than one option, or if a Capture Field that does not accept re-writing receives more ink, the task will still complete. The inks that are relevant to logical errors are still added to the PDF document, but they are added on a separate "error" layer.
l l CapTemplateName: Name of the PlanetPress Connect document used to generate the document. Page Level: l CaptureField: Information on each capture field on the page. Repeated for each capture field that is present. Note There is no method of obtaining the information from a PGC except through a successful processing of this task, or via the use of the PlanetPress Capture API within a Script (see "Using Scripts" on page 143).
For example, accented letters are not correctly recognized in the English ICR database. l l l l Fail if new ink is found on non-rewritable fields: Check to trigger the On Error tab if and when a field set as Disable Rewriting receives ink in a new session. Ignore out of bounds ink data: Check to continue processing even if receiving a PGC that causes ink to be outside of any Capture Field to appear. This may happen if updating the wrong document.
Capture PGC Splitter The Capture PGC Splitter task can be used to separate each document into its own PGC file so they can be processed separately. The splitter then sends each document PGC to the next action, which should be the Capture Fields Processor task. Note that using the Capture PGC Splitter will cause your process to take more time, since each PGC must pass through the Capture Fields Processor and then the Get Capture Document task.
l Type: Specify from where the Pattern Sequence should be taken. l l l l None: Do not use a Pattern Sequence. Pen Information: Use the Pattern Sequence assigned to the pen in the PlanetPress Capture Database. Custom: Overwrite the pen's information and specify a Pattern Sequence manually or use a data selection. Custom Pattern Sequence: If you choose Custom in the Type drop-down, enter a manual Pattern Sequence or a data selection that contains the pattern sequence to be used.
Processing A query is made to the Capture database and the ICR data is retrieved. The document that is queried must be available in the database (must not have been closed and retrieved previously). Output The original data file is output by this task, along with the original Metadata file that has been enhanced with the ICR data at the selected level.
Note The Find Capture Document task makes multiple simultaneous statements to the database when requesting a list of documents. For this task to work, the Allow multiple statements option must be checked in the ODBC connection setup done in the control panel.
the job metadata when the "Capture Fields Generator" on page 565 ads it to the Capture database. l Document-Based Condition: Select this option to set up an advanced filter containing one or more conditions. l Condition Grid: Displays the list of current condition criteria that were set for document retrieval. l Filter: The selected filter type.
l l l l l l l l l l l l l l Equal: Inclusive filter, where anything equal (either by string or numeric comparison) is included in the results. Not Equal: Exclusive filter, where anything not equal to the condition is included in the results. Less Than: Numerical comparison, where anything lower than the specified value is included. Greater Than: Numerical comparison, where anything higher than the specified value is included.
l l l Remove button: Click to remove the currently selected condition from the grid. To select a row, simply click on any of its 3 components. Condition Operator: Select either "All items are met" to force all conditions to be true for a document to be included, or "At least one item is met" to include documents where a minimum of 1 condition is true. Create Advanced Data File: Click to retrieve additional information about each document in the result list.
Input A data file in PGC or PDF format that is accompanied by valid Metadata. This Metadata must contain Capture information and is generally available after a "Capture Fields Processor" on page 568 or "Find Capture Documents" on page 574 task. However, it is also possible to directly retrieve the required information from a specific Document ID. When a specific ID is used, the data file and Metadata are completely ignored by this task's condition rules, and the database information is used instead.
l ICR_[FieldName]_Cfd : The confidence value (in percentage) of the engine for the value provided. Task properties General Tab l Document Origin group: l Document to process: Determines where the document information is read l l l l l From Specific ID: Select to specify an exact Document ID from the database. This document does not need to be loaded as a data file or its Metadata manually obtained, as this task simply looks up the information directly in the PlanetPress Capture database.
PGC to PDF Converter The PGC to PDF Converter task extracts the digital ink located in a PGC file and adds it to a blank PDF, creating one page per document in the PGC. It's main use is to process PGCs that generated errors when processing them, as part of an Error Handling process. Note When adding this task to your process, you will be asked if you want to add the task as an Action or a Condition. This task should only be used as an Action. If used as a condition, it will always return False.
Note This task was built using a custom plugin system and does not display the On Error tab in the regular view. To access the On Error tab, right-click on the task and select Advanced Properties... On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Metadata tasks Metadata tasks are plugins that can create or edit metadata for a job file.
This task is put into effect in the following example processes. l "Example: Daily sales report from PDF files" on page 295 l Basic Functional Capture Workflow l Capture Web Manager Workflow Note that Capture can only be used with PlanetPress Suite. Input A data file in any supported emulation (see "About data emulation" on page 60).
Task properties General Tab l l Documents: Select the Do not use a document (passthrough) option to create Metadata based on the data file alone. Alternatively, as a PlanetPress Suite user you can select a specific PlanetPress Design document to be merged with the data file. Only the Metadata generated by this merge will be retrieved.
If the Extract option is used, Metadata present inside of the PDF file is extracted from it. If no Metadata is embedded, the task generates an error: W3976. Output The PDF file with embedded Metadata (the Metadata is not deleted from the PDF File on extraction, so this task will always output a PDF with embedded Metadata).
Note This task will automatically loop through the Metadata and repeat its action for each of your Metadata's datapages. This task should not be placed after a Metadata Sequencer. Input Any data file with accompanying Metadata. Processing Fields are added, removed, modified, etc, according to the actions defined in the task properties.
Task properties General Tab l Action: Select the type of Metadata Field Management action to perform. Five action types are available: l l l l l l Add/Replace: Create a new Metadata field. If the name already exists, the value is overwritten with the new one. Duplicate: Create a new Metadata field. If the field already exists, a new instance is created. Append: Append the new value at the end of the current one. If no field with that name exists, a new one is created.
l l l l Auto-detect: Interpret automatically the value. This option is ideal for documents using mixed decimal separators. Note that the auto-detect option encountering the value 1,000 (with a comma separator), interprets it as a thousand while interpreting 1.000 (with a dot separator), as one. .: Treat every value with the dot (".") decimal separator. Commas (",") are treated as thousand separator. ,: Treat every value with the comma (",") decimal separator. Dots (".
Output This task outputs the exact same data that was given to it. Its Metadata will either be missing (Delete Metadata), Changed (Load Metadata) or the same (Save Metadata). Properties l Chose an action group l l l l l Load metadata file: Loads an external Metadata file that was previously saved. This can be useful in Error processes if you have previously saved the Metadata to file (ErrorBin outputs do not transfer Metadata).
Input Any data file with accompanying Metadata. Processing Any Metadata that does not correspond to the rules set forth by the filter are removed from the active Metadata. Note that the 'removed' Metadata is still present in the file, but is unselected: they are disabled and ignored on all tasks that use Metadata afterward. Output The original data file is output, along with the modified Metadata.
On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Special Considerations l l The task CANNOT re-select unselected nodes if the condition is false for those nodes. Filter rules cannot be based on the following metadata attributes: SelectedIndexInJob, SelectedIndexInGroup, SelectedIndexInDocument and SelectedIndex.
Example of a process with the Metadata Level Creation task Given a document input (created with Metadata), this task can be used to regroup the PDF pages of the received print stream in logical (Metadata) documents, based on the keyword “Page 1 of” printed on the pages, and then treat each newly created document individually in the rest of the process The process begins with the following tasks: 1. WinQueue Input: Intercepts a printed data file sent to a Windows printer queue. 2.
Task properties General Tab l l Document: Create a new Document level. Note: Attributes and Fields are deleted for all new Document levels created as well as existing Groups. Group: Create a new Group level. Note Attributes and Fields are deleted for all new Group levels created. l l Delimiter defines if the Condition parameter is triggering the beginning or the end of a Group or Document. If the delimiter option is set to None, the action is not performed.
Note When using a PlanetPress Design document as input, the PDF Splitter will do the job quicker than the Metadata Sequencer task. However, when using a PDF as input, the Metadata Sequencer might perform better. For more information and some test results, see this How-to: Performance testing grounds. Input Any data file with accompanying Metadata. Processing A loop is established and the Metadata is separated into chunks, as defined in the rules set forth in the task properties.
set to 5, a 100 document job file will be divided into 5 sequences of 20 documents each. l The following rule: Determine if a new sequence starts or if the current one ends. For each Metadata level, the current value of the specified Metadata attribute/field is compared with the one in memory. If they are different, either a new sequence starts or the current sequence is ended. The next sequence starts with the next Metadata level being processed. For details see the "Rule Interface" on page 895.
l l l Sort by: The drop down displays a list of available fields and attributes in that level, letting you select on which to sort. The field or attributes must be present for every instance of the level you are searching on, or the task raises an error. Order: Choose Ascending (orders like a,b,c, or 1,2,3) or Descending (orders like 3,2,1 or c,b,a) order. If the Numeric sorting option is not checked, numbers are sorted like this: "1, 10, 11, 12, 2, 3, 4, 5, 6, 7, 8, 9".
When all the indexes are collected, a PDI file is generated with those indexes. Output The output is the same as the input, no modification is done to either the data file or the metadata. However, a PDI file is generated and saved in the location specified in the task. Task properties General Tab l l l Archive Folder: Specifies where the PDI file should be saved. This should be the same location as the PDF file that the PDI refers to. Filename: The file name for the PDI.
The PlanetPress Design document needs to be properly set up with the N-Up object and proper virtual pages in order to correctly use this task: l l l l All PlanetPress Design document templates must use the N-Up object on both the front and the back pages of the duplex document. Each instance of the N-Up object must have the “change data page with each repeat” option checked.
PlanetPress Design document. For example, a 2 horizontal x 3 vertical is 6-up, so this number should be 6. l Number of data pages that make up a single duplex virtual document: Either 1 if your document is duplex (has a front and back), whether the back has variable data or not, or 2 if your document is simplex or the data is already properly duplicated so the front and back already match. On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks.
OL Connect Send tasks l "Get Data" below l "Get Job Data" on page 605 l "Job Processor" on page 608 Get Data The Get Data plugin allows OL Connect Send users (admins, accounting personnel, print masters ...) to get information about all jobs received with OL Connect Send on a dedicated machine. It allows queries of the OL Connect Send Database to be made for the production of reports.
l Workflow variables l Job variables l Names. Tip No spaces are allowed around the listed names, respectively before or after a semicolon. Operators l Searches are case-insensitive. l Multiple entries in one filter field are combined with: OR. l Entries in different filter fields are combined with: AND. Example 1 A valid user name search string, entered in the Filter Users field, would be: %\{global.
Date and Time Definitions Both date and time entries must be notated in UTC format. During runtime the dates are checked and if any other date/time notation is used, a Workflow error log entry is created. UTC notation is described here: https://www.cl.cam.ac.uk/~mgk25/iso-time.html. Valid date/time entries: 2016-07-12 It is possible to only define a date without a time. 2016-%m-%d Standard Workflow variables for year, month and day are allowed.
Results File Format The following result file formats are selectable: l XML l JSON l CSV (Separator = semicolon (0x3B), string indicator = quote (0x22)). Note This file is not automatically saved to disk. The retrieved job info is written to a temporary results file that will be passed on as the new Workflow job file. To save the results file, use a Send to Folder plugin and configure that appropriately.
applications do not use the general print job information to define the number of copies. In such (rare) cases, the Number of Copies sent in the job can differ from what the user entered in the print dialog. For example: "IrfanView" does not use the regular Copies indicator, but instead sends the same job as many times as indicated by Copies in its print dialog. l l l l l l l l Number of pages: This is the number of pages for one copy of the print job.
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Get Job Data Creating an interactive process for incoming print jobs using OL Connect Send requires that the relevant information about the respective job is available and can be used in Workflow. Job Information retrieval is made easy with the Get Job Data plugin. The plugin appears in the Plug-in Bar of Workflow under OL Connect Send.
Select Job ID Source The plugin can be used in a generic way. Whenever information about a specific print job is required, it can be retrieved as long as the related job ID is known. However, the plugin has been implemented in a way that it can also be used very easily in the OL Connect Send interaction process. It can get the related job ID from the incoming data of the HTTP Server Input plugin.
l Write to Variables: This allows print job information to be stored in Workflow variables by using a simple drop-down list. In this case, the HTTP Server Input data will be kept as Workflow job file. If the same Workflow variable is assigned more than once, the plugin will give a warning and will not close until the issue is fixed. Returned information For each job received by the OL Connect Send Job Processor plugin the following values will be available.
number of pages, as calculated by the spooler and reported by OL Connect Send, can differ from that value as shown to the user in the application itself. l l l l l l l User name: This is the Windows user name of the user who started the application to produce the print job. It is not - in all cases - the user name of the user who is currently logged into the system. Original file name: This is the "file name" as sent from the application to the Windows spooling system.
Input The Job Processor plugin must be added to a Workflow job transfer process that starts with an HTTP Server Input. The Job Processor plugin is the only other task in that process. The action name of the HTTP Input task must match the last part of the URL for print job submission, set in the OL Connect Send Printer Driver installer. By default this is olcs_transfer.
Timeout During a job transfer from the OL Connect Send Printer Driver to Workflow, a timeout could occur (indicated by a log entry like “ERROR: sendBinaryContents: Could not open request. Reason: 12002”). In this case, the timeout for the HTTP service in Workflow needs to be increased. It is recommended to use a value of more than 10 minutes (>600 seconds). Additionally, the timeout in the browser on the client side should be enhanced. Please see the help pages for your browser about how to do this.
“%CommonProgramFiles(x86)%\Objectif Lune\\Plugins\CPD”. By adding the entry “DBPort = ” under [HSQLDBSETTINGS] and then restarting the service, the communication port is changed. Note that Workflow has to be restarted after such a modification. Output The plugin stores the incoming print job in the target folder with the file name specified in the plugin. If no extension is defined by the user for the file name, the default “.
To facilitate using job related information for the creation of the target folder and file name/s, the Job Processor plugin maps job relevant information to the standard Workflow variables (%1 to %8). The following mappings apply: Information Workflow Variable When licensed When unlicensed Job ID %1 Job ID Job ID License status for this job %2 "Licensed" "Unlicensed" Username 1 %3 The user name "na" IP Address 1 %4 The IP address The IP address No.
Any OL Connect Send Printer Driver can communicate with any plugin, as long as this third version number part is identical. On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area. OL Connect tasks OL Connect tasks are available in PlanetPress Workflow 8.0 and up.
l "Merge Jobs" on page 655 l "Render Email Content" on page 656 l "Retrieve Items" on page 660 l "Set Properties" on page 664 l "Update Data Records" on page 666 All In One The All In One task extracts data from the job file, merges the data with a Connect Designer template, and creates print output. (See also: "OL Connect print jobs" on page 111.
given to the Content Creation part of the task. In order to optimize the process, blocks of 100 records are sent sequentially to the Content Creation in parallel, instead of waiting for the whole record set to be created. l Source: Indicates the source of the Record Set Metadata: l Data Mapping Configuration: Executes data mapping on the appropriate source.
l l Filter: l l l l l l l l l Add a condition: Click to add a new condition line. This adds the line to the current condition level, by default with an AND operator. Switch conditions: Click to swap two conditions on the same level, or two groups of conditions. Delete the selected condition: Click to delete the currently selected conditions in the list. Clear the rule: Click to delete all rules in the list. Note: This cannot be undone.
task that attempts to access records in the database will fail. Content Creation Tab The Content Creation step generates Content Items either by merging a Record Set with a Template, or by processing a PDF/VT file into individual content items. l Template: Select the appropriate template or option to execute it: l l l l "None": Select to skip Content Creation completely. "%o": Select to use a dynamic template name. Click on %o to change the expression that determines the name of the template to use.
l l Runtime Parameters: The Runtime Parameters defined in the selected Job Creation Preset are displayed and their values can be edited here. Right-click the field to open the contextual menu that allows to select variables, data and lookup functions (see "Data selections" on page 54). Note that it is not possible to change a parameter's type here; that can only be set in the Job Creation Preset itself.
l l Through Workflow: Select to replace the current job file with the output produced by the server. Every option in the Output Preset is still used, except for the output location. Note that when the output is separated, the current job file is not replaced with the actual output files but with a CSV file that lists the paths to the outputted files (e.g. “C:\Users\Administrator\Connect\filestore\3836.2859982401376467470\template_ 0001.pdf,C:\Users\Administrator\Connect\filestore\3836.2859982401376467470\
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Sort Parameters The Sort Parameters define how to sort the entities retrieved from the Connect Database using either the "Retrieve Items" on page 660 task, or the Filter source in the "All In One" on page 614's Data Mapper task. l Sort items based on: Lists the different sorts to apply to the entities. l l l Name: Click and enter the name for the Value or the Property to sort on.
JSON The Create Email Content task supports two types of JSON: l l A JSON object or an array of JSON objects representing records. If a value in a record object is a string, it is considered to be a field value. If a value in a record object is a JSON object, it is considered to be a nested table with detail records. For examples, see "JSON string samples" on page 633. A JSON Record Data List (see the REST API Cookbook and "JSON Record Data List example" on page 94).
Note If sending email is not included in the license, the emails will be sent to the sender instead of to the intended recipients. Properties General Tab l Template l l l l "%o": Select to use a dynamic template name. Click on %o to change the expression that determines the name of the template to use. Template Names: Select the appropriate template. Adding template is done through the Send to Workflow option in the Designer Module. Section: Enter the section name that will generate output.
Warning The JSON format is not validated by the plugin; it is passed as is to the server. Email Info tab l l l l l l Sender Address: Enter the email address that appears in the "From" field of the email. Alternatively you may enter the sender's name and email address in the following format: John Smith . It depends on the email client which information gets displayed: the sender's name or email address, or both.
OL Connect Proxy Tab This tab is common to all OL Connect tasks and defines where to process the jobs sent through these tasks. When these fields are empty, they use the defaults set in the "OL Connect preferences" on page 806. Note Defaults are not used unless the configuration is sent to the Workflow service. l OL Connect Proxy Address: Enter the machine name or IP Address where the OL Connect Server resides. l Port: Enter the port to use to communicate with the OL Connect Server.
Note The result of a Retrieve Items task cannot be used with a Job Creation Preset. Use the IDs in the metadata instead (see the Properties below). Processing The task prepares the content items or content sets for printing, tagging them as printable. Only the content items that are part of the job will generate output. Output The task outputs a Print Job ready to be sent to the "Create Output" on page 627 task for printing.
in the Job Creation Preset will be used to try and parse the input parameter value. In order to make this work: o Boolean values need to be entered as either “true” or “false”. (When the comparison actually occurs, it will be a full Boolean comparison. Thus it can compare this runtime parameter with Boolean data values that are stored as 0/1 in data fields.) o Numeric string values need to be parseable as a number (either a whole integer or decimal value).
On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Create Output The Create Output task generates Print output in a format specified by a Connect Print Preset and sends this output to the appropriate target location. See also: "About printing" on page 111.
Properties The Create Output task properties are as follows: General Tab l Output Preset file: Select which Output Preset to use to generate the output. To be used in this dialog, a preset must have been sent to PlanetPress Workflow using the Package File function in PlanetPress Connect. l l l Preset Names: Select the appropriate preset to generate output. Output Management group: l l l "%o": Select to use a dynamic preset name.
Note Defaults are not used unless the configuration is sent to the Workflow service. l OL Connect Proxy Address: Enter the machine name or IP Address where the OL Connect Server resides. l Port: Enter the port to use to communicate with the OL Connect Server. Default: 9340 l User name: Enter the user name expected by the OL Connect Server. l Password: Enter the password expected by the OL Connect Server for the above user name.
Output The output is a PDF/VT with default quality settings. The metadata embedded within the PDF/VT is the one generated by the PlanetPress Document. Properties Note that the Connect Proxy tab is not present in the Create PDF/VT Action task properties, as this task does not communicate with the OL Connect Server. General Tab l l l Documents: Select a specific PlanetPress Design document if you want all the jobs to be generated with that document.
To make the rendering process as fast as possible, the generated PDF isn't optimized for print production purposes. Note Content creation may be aborted by a script in a Connect template that raises a fatal error. This triggers the On Error tab of the Content Creation task. See Designer Script API. Properties Datamapper tab The Create Preview PDF plugin gets one record from the source selected on the Datamapper tab.
Note When the data mapping configuration provides multiple records, the preview is created based on the first record. Note The Create Preview PDF plugin cannot parse Workflow automation variables. Instead it uses the default values set up in the Preprocessor of the data mapping configuration.
l Metadata uses existing metadata, generally the output of a Create Record Set or a Retrieve Items task set to retrieve a record. Update fields with metadata: when this option is selected, the plugin will update fields in the Connect database based on the metadata content. This is only useful if the Workflow process has modified the metadata and the corresponding fields should be updated in the database before creating the preview PDF.
A JSON string with references to local variables and Job Info 2: { "first":"%{first}", "last":"%{last}", "email":"%2" } A JSON string containing a local variable and various lookups: { "jobid":"%{jobid}", "account":"lookup(OLCS_jobs, account, jobid, '%{jobid}')", "datafile_name":"lookup(OLCS_jobs, datafile_name, jobid, '% {jobid}')", "pages":"lookup(OLCS_jobs, pages, jobid, '%{jobid}')", "documents":"lookup(OLCS_jobs, documents, jobid, '%{jobid}')", "recordsetid":"lookup(OLCS_jobs, recordsetid, jobid, '%{jo
Content Creation tab The Create Preview PDF plugin creates a preview PDF from a template selected on the Content Creation tab, using the record that results from the data source selected on the Datamapper tab. The record is then merged with the template to create a preview PDF. Select the appropriate template or option: l l %o: Select to use a dynamic template name. Click on %o to change the expression that determines the name of the template to use.
Create Print Content The Create Print Content task generates a set of printable content items from a template's Print Context, and saves those content items in the database until output creation is requested. This task also accepts a PDF/VT file as input (see "Create PDF/VT" on page 629), allowing the task to be used without a Connect Template. Input This task can receive either Metadata containing information regarding a valid Record Set, or JSON data, or a PDF/VT File (see "Create PDF/VT" on page 629).
set based on the provided data, like the "Execute Data Mapping" on page 645 task does. Job Creation Presets need such a record set to group, sort and filter items. Processing In the case of a record set or a JSON object/array and template, this task loops through each record (or object) in the set (or array). For each record or JSON object, one or more pages are generated using the record's data and these pages are saved as a content item in the database.
l l Template Names: Select the appropriate template. Adding a template to the resources is done through the Send to Workflow option in the Designer Module. Data Source (see "Input" on page 636): l Metadata: l l Update Records from Metadata: If the process metadata has been modified by any of the "Metadata tasks" on page 582, check this option to update the records in the Connect database with the metadata and use the updated records.
l OL Connect Proxy Address: Enter the machine name or IP Address where the OL Connect Server resides. l Port: Enter the port to use to communicate with the OL Connect Server. Default: 9340 l User name: Enter the user name expected by the OL Connect Server. l Password: Enter the password expected by the OL Connect Server for the above user name. On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks.
JSON The Create Web Content task supports two types of JSON: l l A JSON object or an array of JSON objects representing records. If a value in a record object is a string, it is considered to be a field value. If a value in a record object is a JSON object, it is considered to be a nested table with detail records. For examples, see "JSON string samples" on page 633. A JSON Record Data List (see the REST API Cookbook and "JSON Record Data List example" on page 94).
Properties General Tab l Template File: l l l l "%o": Select to use a dynamic template name. Click on %o to change the expression that determines the name of the template to use. Template Names: Select the appropriate template. Adding template is done through the Send to Workflow option in the Designer Module. Section: Enter the section name that will generate output. Only one section can be output. If no section is defined or if the section name is invalid, the default section will be output.
Warning The JSON format is not validated by the plugin; it is passed as is to the server. Note Only the first record or JSON object is processed, since this task can only generate HTML output for a single record. l l Embed all resources: Check this option to download the resources and embed them in the HTML file. Do not alter HTML: Check this option to prevent that the Create Web Content task modifies the HTML.
preferences" on page 806. Note Defaults are not used unless the configuration is sent to the Workflow service. l OL Connect Proxy Address: Enter the machine name or IP Address where the OL Connect Server resides. l Port: Enter the port to use to communicate with the OL Connect Server. Default: 9340 l User name: Enter the user name expected by the OL Connect Server. l Password: Enter the password expected by the OL Connect Server for the above user name.
GetMeta(_vger_prop_folder[0], 10, Job.Group[0].Document[0]) GetMeta(_vger_prop_eml[0], 10, Job.Group[0].Document[0]). The "Mailjet" on page 721 and "SendGrid" on page 723 plugins offer the possibility to add extra attachments to a rendered email message via Workflow. Note that any such attachments will not be part of the EML file produced by the Render Email Content task. Tip Double-click an .eml to open it in your email client.
l JSON: A JSON object representing an email message. For an example of such an object, see the "Render Email Content" on page 656 task. That task can output a JSON object (or an array of JSON objects) containing information about email messages. Note Information about the Connect Server (host, user name etc.) is taken from the Workflow Preferences (see "OL Connect preferences" on page 806).
Note To open a Microsoft Access database, you have to use the Load External File task just before the Execute Data Mapping task. Processing The task executes the selected data mapping configuration on the appropriate data source, or converts the PDF/VT into a Record Set directly. If the data mapping configuration expects a database data source, the Data Source option is ignored and the database is accessed instead.
Module. Click the Open data model of selected configuration button to view the data model attached to the configuration in the Data Mapper module, to verify that the correct one is used. Only works for configurations listed (will not work for "None" or "Dynamic" options). l Output Type group: l l l l l Metadata - IDs only: Select to only output the Record and Job IDs in the Metadata.
unselected, to make looping through all errors easy. Tip To determine if there were any errors in a job and handle it accordingly, you can use a Condition that checks if GetMeta(SelectedCount[0], 11, Job.Group[0]) is greater than 0, immediately after the task (see "Conditions" on page 138). OL Connect Proxy Tab This tab is common to all OL Connect tasks and defines where to process the jobs sent through these tasks.
File Store - Delete File The File Store - Delete File task deletes a file from the OL Connect File Store, using either a file name or File Store ID. Input The task requires either the name of the file in the OL Connect File Store or its File Store ID. The name of a file is chosen and its File Store ID is returned when uploading it with the "File Store - Upload File" on page 651 task.
l Port: Enter the port to use to communicate with the OL Connect Server. Default: 9340 l User name: Enter the user name expected by the OL Connect Server. l Password: Enter the password expected by the OL Connect Server for the above user name. On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area.
OL Connect Proxy Tab This tab is common to all OL Connect tasks and defines where to process the jobs sent through these tasks. When these fields are empty, they use the defaults set in the "OL Connect preferences" on page 806. Note Defaults are not used unless the configuration is sent to the Workflow service. l OL Connect Proxy Address: Enter the machine name or IP Address where the OL Connect Server resides. l Port: Enter the port to use to communicate with the OL Connect Server.
Processing The task tries to upload the current job file to the OL Connect File Store by making a call to the /rest/serverengine/filestore/DataFile REST endpoint; see File Store Service: Upload File in the REST API Cookbook. Output When a file is uploaded to the Connect File Store, it is automatically assigned a File Store ID. The task stores the returned File Store ID in the specified variable. This task does not modify the Job File.
l OL Connect Proxy Address: Enter the machine name or IP Address where the OL Connect Server resides. l Port: Enter the port to use to communicate with the OL Connect Server. Default: 9340 l User name: Enter the user name expected by the OL Connect Server. l Password: Enter the password expected by the OL Connect Server for the above user name. On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks.
Task properties General Tab l Set types to mark for deletion based on metadata content: l l l Job Set: Tag any Job set created by the "Create Job" on page 624 task or the "Retrieve Items" on page 660 task set to retrieve Job Sets. Content Set: Tag any Content set created by the "Create Print Content" on page 636 task or the "Retrieve Items" on page 660 task set to retrieve Content Sets.
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Merge Jobs The Merge Jobs Action task merges an external Metadata file containing an OL Connect Job with the current Job File. Input The task must receive a Metadata Job File, which is output from the "Create Job" on page 624 task. The selected Metadata file must also be the output of a Create Job task. Processing The current Metadata Job File is merged with the selected external Metadata file.
Render Email Content The Render Email Content task pre-renders emails from a template's Email Context and stores them in the File Store, along with their attachments. Note The Render Email Content task works only under PlanetPress Workflows that are licensed for sending emails. It is not available for users with Demo, Test or Reseller licenses. Input This task must receive either Metadata containing information regarding a valid Record Set, or JSON data.
Items" on page 660 task is set to output Records in JSON, it outputs this kind of JSON data. If the input is JSON, the task performs a REST call to the /rest/serverengine/workflow/contentcreation/email/{templateId} endpoint on the Connect Server. For more information see the REST API Cookbook. Processing This task loops through each record in a Record Set or through each JSON object in an array. For each record or JSON object, the task generates an HTML email using that record's or object's data.
"eml":"c5f97db0-45ca-4f1d-be4d-473d000c92bd.eml", "body":"07decd87-d03c-4969-bc2a-7527cc594878.html", "text":"7a4e5217-0103-487f-a4f8-77d37d0c1087.txt"} ], "contentSet":8769} Known issue If the Render Email Content plugin receives JSON input and outputs Metadata, only 1 record will be written to the Metadata. This issue is fixed in version 2020.1.
Warning The JSON format is not validated by the plugin; it is passed as is to the server. l Output Method (see "Output" on page 657): Select how to output information about the emails that were created, including the email addresses (to, from, etc.), subject, and the names of the folder, HTML file, attachments, (optional) plain text email file (see Email output settings in the Email context and sections) and EML file (see below). l l l Metadata: Write the information to the current Metadata.
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Retrieve Items The Retrieve Items Action task locates and extracts items from the OL Connect Database so they can be used with further tasks. The items are retrieved using a set of conditions working together. Since this task can retrieve items at any level, it can be used to generate Metadata (see "Metadata" on page 76) or JSON data used in multiple tasks.
Task properties General Tab l Entity to retrieve: Use the drop-down to select which items to retrieve. l l l l l l l Record Set: Retrieves one or more Record Sets, including all their records. Output similar to the "Execute Data Mapping" on page 645 task. Content Item: Retrieves one or more Content Items, whether or not they are part of a Content Set. Output similar to the "Create Print Content" on page 636 or "Create Web Content" on page 639 tasks.
its rules into the list. l l l Export the rule: Click to open a Save dialog and save the Rules file to disk. Rule Viewer: Displays a text-based view of the condition using operators and parentheses. Output Type group: l l l Metadata - IDs only: Select to only output minimal metadata containing the entity IDs. Metadata: Select to output IDs as well as record details in the metadata, useful for further sorting and filtering of the metadata.
l Sort items based on: Use the [...] to open the "Sort Parameters" on page 620 dialog and define how documents are sorted within the group, for example by Zip Code. OL Connect Proxy Tab This tab is common to all OL Connect tasks and defines where to process the jobs sent through these tasks. When these fields are empty, they use the defaults set in the "OL Connect preferences" on page 806. Note Defaults are not used unless the configuration is sent to the Workflow service.
l Add: Click to add a new line to the list. l Remove: Click to remove the currently selected line in the list. l Move Up: Click to move the currently selected line up one position in the list. l Move Down: Click to move the currently selected line down one position in the list. l Validate Names: Click to check the each of line in the list against the currently active Metadata (see "Metadata" on page 76).
Record Set, Content Item, Content Set, Job l Properties: Add all the properties to be added l Name: The name of the property. l Value: The value to apply to the property. l Add entry: Click to add another line to the Properties list. l Remove entry: Click to delete the currently selected line in the Properties list. l Move entry up: Click to move the currently selected line up in the Properties list. l Move entry down: Click to move the currently selected line down in the Properties list.
Update Data Records The Update Data Records action task updates records in the OL Connect Database using values from the current Metadata or from JSON. Each of the OL Connect Content Creation tasks can do the same, if the Update Records from Metadata option is enabled for that task. The Update Data Records task can be useful when data needs to be updated multiple times before actually generating content, for instance when Postal Address Cleansing and Sorting is a two-pass process.
preferences" on page 806. Note Defaults are not used unless the configuration is sent to the Workflow service. l OL Connect Proxy Address: Enter the machine name or IP Address where the OL Connect Server resides. l Port: Enter the port to use to communicate with the OL Connect Server. Default: 9340 l User name: Enter the user name expected by the OL Connect Server. l Password: Enter the password expected by the OL Connect Server for the above user name.
Other tasks available in PlanetPress Workflow can also be used to generate output, such as Digital Action, Create VDX and PrintForm Action tasks. Unlike Output tasks, Action tasks are only considered completed once the output file has been generated. In the case of a Digital Action Action task, for example, PlanetPress Workflow will consider the task completed only once the image file has actually been created. This means that no other task from the same process can be performed in the meantime.
Note that Capture can only be used with PlanetPress Suite. Input Any data file, with optional metadata. Processing The data file is either deleted directly or sent to the Windows Recycle Bin. Task properties General tab l Move to recycle bin: Select to send the deleted files to the Windows recycle bin. When this option is not selected, files are deleted permanently. On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks.
Processing The file is sent to the FTP Server and location defined in the task properties. Task properties General Tab l FTP Server: Enter the IP address or host name of the FTP server. l Port number: Set the plugin to use a specific port number. l l Use FTP Client default port number: Use the value as specified in the Preferences (port 21 is the default value). FTP Port: Enter the specific port number to use when Use FTP Client default port number is unchecked. Enter a value between 1 and 9999.
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. SFTP Output The SFTP Output task sends job files to other computers using a secured FTP protocol. It is similar to the Send to Folder output task but sends to an FTP connection instead of a local drive. The "SFTP Input" on page 390 and SFTP Output tasks are part of a separate installer and are not included in the Workflow installer.
l Port Number Group l l l Use default port: Check to use the default port used by the protocol selected above. Port number: Set to use a specific port number. Note: There is no validation to ensure the port is available. It is the user's responsibility to ensure the selected port is available and not being monitored by another application or another Workflow task. File Options group l l Directory: Enter the directory to which the job files are to be uploaded.
On Error Tab Miscellaneous Tab The Miscellaneous tab is common to all tasks. Check the option Use as step description to display the text next to the icon of the plugin in the Process area. SOAP Client plugin SOAP Client plugin tasks can be used as Input, Output and Action tasks, although their basic function is to generate output.
Task properties General Tab l WSDL address: Enter the URL address of the WSDL file, or choose a previously selected address from the drop-down list. Note The WSDL Address of a PlanetPress Workflow SOAP server is the following: http://127.0.0.1:8080/wsdl/isoapact (assuming you are on the same machine and did not change the default HTTP port). l l l Get: Click to get the WSDL file from the SOAP server and populate the Service box below.
l l l Value: Lets you enter fixed or variable values. To exchange variable information between the Web service and PlanetPress Workflow, you must use job information variables %1 to %9 or variable %c (which contains the entire job file). Note that return values (arguments which are used to return information to the SOAP Client) are displayed in bold font. Namespace: Displays the namespace of the arguments associated with the selected method.
Note This type of output task does not support PDF transparency and duo-tone features, so you should not use it with PlanetPress Design documents that use those features. Input This task can accept either a data file with a correct emulation (see "About data emulation" on page 60), which is then merged to a PlanetPress Design document, or a PDF file which is to be printed natively.
Note This option is not functional when natively printing PDFs (without a PlanetPress Design document). l Documents: Select a specific PlanetPress Design document if you want all the jobs to be printed with that document. l l Natively print PDF file: This special option can be used if your job file is a PDF. The job will .
Printer Queue Output The Printer Queue Output task dispatches jobs to selected PlanetPress Workflow Printer Queues (see "PlanetPress Workflow printer queues" on page 113). Note that you must have created at least one Printer Queue in PlanetPress Workflow before you can add your first Printer Queue Output task. You can select multiple Printer Queues in a Printer Queue Output task and choose exactly how your jobs will be dispatched to the selected printers.
on page 44) if you want all the jobs to be printed with that document. To use a document chosen at run-time for each job, enter a dynamic document name using a combination of text, variables and data selections. To enable the dynamic document name box, click inside it. To disable it, press Enter. Note that in the later case, you must be certain that the documents that will be chosen at run-time will in fact be available locally or at all the selected printer.
to each one of the selected Workflow printer queues. For a hundred page job, for example, if two queues were selected, each one will get 50 pages. l l l l l Round robin: Round robin means that complete jobs will be sent in turn to each one of the selected Workflow printer queues. For example, Queue_1 will get the first job, Queue_2 will get the second job, and so forth. Page delimiter group: These options are enabled when you choose Split job or Queue balancing load balancing options.
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Secure Email Output The Secure Email Output task sends SMTP email messages with SSL or TLS. Note that this plugin cannot be used on a Windows instance that uses a multi-byte language (e.g. Japanese, Chinese). The workaround is to either use a different Windows language or use the standard Email Input/Output plugins.
Note When specifying multiple recipients for the To, CC and BCC fields, separate the e-mail addresses with semi-colons (;). l To: Enter the email address(es) of the recipient(s). l Cc: Specify addresses to which a copy of the generated emails are to be sent. l l l Bcc: Specify discreet addresses (other recipients will not be able to see these addresses) to which a copy of the generated emails are to be sent. Subject: Enter the subject of the email.
l l l l Attach input job file: Select to attach the current job file to the email that the task sends. Rename to: Check this option to rename the job file before attaching it to the email, and enter a name. You may use text, variables and data selections (see "Variable task properties" on page 337). File: Select additional or more additional files to include as attachments. You may enter the file name directly and use text, variables and data selections (see "Variable task properties" on page 337).
Send Email The Send Email output task sends the data files it receives via email. Note In some combinations of Microsoft Outlook and Windows versions, it is not possible for Outlook to be opened while PlanetPress Workflow is running, so emails are not sent out automatically. To correct this, make sure to log on to Windows on the PlanetPress Workflow server using the same login that PlanetPress Workflow is using, and open Outlook before starting the PlanetPress Workflow services.
Task properties Recipients Tab l l l l l To: Enter the email address(es) of the recipient(s). Remember this is a variable property box and you can therefore use various schemes to use email addresses that change with each job at run-time. You can use any combination of text, variables and data selections; see "Variable task properties" on page 337. Cc: Specify addresses to which a copy of the generated emails are to be sent.
l l l l l l File: Select additional files to include as attachments. You may enter the file name directly and use text, variables and data selections. You may also use the Browse button to navigate and select the file. To add the file to the list displayed in the Attach box, you must the click the downward pointing arrow button. Attach: Lists the files that will be attached to the messages sent from PlanetPress Workflow for this task.
l l l l l Outgoing mail (SMTP): Enter the IP address of the mail server PlanetPress Workflow is to use to send emails via SMTP. Port: Specify the outgoing SMTP Port if it is different from the default port (25). Server requires authentication: Select if the outgoing server mentioned above requires authentication. To use authentication you must enter information in the Account name and Password boxes below.
Task properties General Tab l l l l Folder: Enter the path of the folder to which the files are to be saved. File name: Enter the name of the output files generated by this task. To prevent each new file from overwriting the previous one, you should use variable names. You can use any combination of text, variables and data selections; see "Variable task properties" on page 337.
The following plugins are not initially installed with Workflow but they are available for download on the Resource Center (help.objectiflune.com). Once installed, they appear in the Document Management category. l "Connection tab" on page 691 l "Connection tab" on page 704 l "Advanced properties" on page 712. l "Advanced properties" on page 714. l Therefore2Way. (The manual for this plug-in is provided with the plugin's installer.
Plugin legal notices and acknowledgments Copyright © 2020 Objectif Lune Incorporated. All rights reserved. DocuWare Download The DocuWare Download plugin Downloads files of any file type from a dedicated DocuWare CRM system. Installation This plugin is not installed with Workflow, but it is available for free download from the Resource Center (help.objectiflune.com). After downloading the .PPK file, you will then need to import it into Workflow yourself. See See Importing a plugin.
Warning The plugin is not designed to be run in multi-threaded, multi-process or auto-replicate environments. It has not been designed for parallellization in regards to internal resource usage, file and data access, or logged-on users. Task properties Connection tab The Connection tab fields set the connection parameters. You can use static text and/or Workflow variables, data and lookup functions.
Clicking this option will obscure the displayed password. Note When the password is set via a variable, it is important to know that the password might be visible. It is the user's responsibility to protect the passwords in such cases. Test Connection This button tests the connection details entered in the Connections tab. If a successful connection is made, then Connection Success will appear as the current status.
Alternatively, you can enter the File Cabinet entry directly. You may also use variables, data and lookup functions. Right-clicking within the field opens the contextual menu. See "Data selections" on page 54 to assist with this. If the File Cabinet specified in the text box does not exist at run time, the plugin will replace it with the first File Cabinet name on the previously extracted Cabinet list. The File Cabinet entry is case-sensitive.
You can add or remove search criteria using the following options: You can populate the table with all the available Index Field options at any time by selecting the Add missing fields ( ) button. If selected initially this will add all the available fields to the table. If selected after some fields had already been added via the field picker button ( ), it will add any missing fields to the end of the Index data table. You can Add ( ) or Remove ( ( ) within the table.
searches for the local variable of that name. Plugin legal notices and acknowledgments Copyright © 2020 Objectif Lune Incorporated. All rights reserved. DocuWare Output Warning The DocuWare Output plugin will cease to operate as of April 2020. It has been replaced by the new DocuWare Upload plugin. See this see page for details on how to install and use the newer "Connection tab" on page 704.
Processing After establishing a connection with the DocuWare system, the plugin will try to upload the specified file (either the Job File, or an external file) with the given index values to the selected File Cabinet. The plugin won't modify the file to upload in any way. If any issue is detected during a file upload, the log messages and the related file and its index values will be stored in a configurable folder (see "Login tab" on page 701).
to select a file, and/or right-click the field to open the contextual menu that allows to select variables, data and lookup functions (see "Data selections" on page 54). l File name (Subject) for upload: Enter the file name to use as document name in DocuWare. You may also select variables, data and lookup functions (see "Data selections" on page 54). Right-click the field to open the contextual menu. Note that the plugin will not verify the validity of the resulting file name.
as static text, without any variables or lookup functions. . l Select a File Cabinet from the drop-down list. Initially the drop-down list is empty. Click the button next to it, to fill it. The plugin will extract the list of File Cabinets from the DocuWare server. If the File Cabinet specified in the text box does not exist, the plugin replaces it with the first File Cabinet name on the extracted list. The index table is also filled after clicking the button.
system). l Corresponding metadata file: With this method, the plugin will look for a file with the exact name as the document file, but with the extension ".meta", in the same folder as the document file. If the input file is the Workflow Job File, the Metadata file is looked for in the Workflow Job File folder. If the input file is an External File, the Metadata file must be located in the same folder as this external file.
Tip It is recommended to refresh the list before defining any index values. Click the button next to the Target File Cabinet name to refresh the list. Note In DocuWare specific index fields can be set to be visible or invisible. The API used by the plugin is currently not able to filter. This can lead to differences between indexes shown in the DocuWare interface vs. those visible in the plugin. It also isn't possible for the plugin to show which index entries are mandatory and which are not.
All responsibility for defining correct values lies with the user. XML structure In order to pass index data via an XML file, the structure of the file must be like it is in this example: 12345 98765 ...
Working Directory In case of any upload issue, the log messages and the related file and its index values will be stored in the Working Directory defined here. You can use static text and/or Workflow variables, data and lookup functions. Right-clicking the field opens the contextual menu that allows to add variables, data and lookup functions (see "Data selections" on page 54). Info Tab DocuWare and Objectif Lune have been working together successfully for many years.
After downloading the .PPK file, you will then need to import it into Workflow yourself. See See Importing a plugin. Once imported, the DocuWare Upload plugin will appear in the Uncategorized category within the Plug-In Bar. To be able to use this plugin you need a working DocuWare installation and user account with appropriate permissions. Input The input of this plugin can be a file of any type.
Task properties Connection tab The Connection tab fields set the connection parameters. You can use static text and/or Workflow variables, data and lookup functions. Right-clicking a field opens the contextual menu that allows to add variables, data and lookup functions (see "Data selections" on page 54), where available. DocuWare Server Enter the DocuWare Host address. For example https://mycompany.docuware.cloud Organization Enter registered Organization name.
Test Connection This button tests the connection details entered in the Connections tab. If a successful connection is made, then Connection Success will appear as the current status. When a successful connection is made a listing of all the available cabinets and fields for that login will be downloaded and stored locally, for use in the Upload tab. Once a connection has been established and the cabinet and file information obtained, the plugin will open upon the Upload tab when next plugin is next opened.
the validity of the file name, if it were not browsed for. If no upload file has been specified, DocuWare will take the name of the uploaded file as the document name. If the Workflow Job File is to be uploaded, it is highly recommended renaming the file, as otherwise the Workflow temporary file name will become the document name. l File type: Enter the type of file, from the list contained in the drop down box.
field screen entry, whenever a new Cabinet is selected. l Create a new document / Update existing document selection: Choose between these two options. Each does as the name suggests. l l Create a new document will load the document as a new document to the DocuWare server. This document will be named based upon the document name field (as seen highlighted in the Document name field screen entry).
Index Data Select whatever Index fields you want to add via this index table. You can populate the table with all the available Index Field options at any time by selecting the Add missing fields ( ) button. If selected initially this will add all the available fields to the table. If selected after some fields had already been added via the field picker button ( ), it will add any missing fields to the end of the Index data table.
l l yyyy-mm-dd l yyyy-mm-dd HH:MM:SS Yes/No, True/False, 0/1 values: Such values may be entered as either "Yes", "1", "True" or "No", "0", "False". Any other value will raise an error. Also note that index names are case-sensitive. Note Fields with empty values will not be saved when the OK button is pressed. Response Specify an optional Workflow variable that is used to store the result. The DocuWare plugin searches for the variable by name and sets the JSON response into the variable.
These plugins are not installed with Workflow, but they are available for free download from the Resource Center (help.objectiflune.com). After downloading the .PPK files, you will then need to import them into Workflow yourself. See .See Importing a plugin. Once installed, the M-Files plugins will appear in the Document Management category in the Plug-In Bar. Note To be able to use this plugin you need a working M-Files installation and a user account with appropriate permissions.
Processing The M-Files Download plugin starts by sending a login request to the M-Files Server. Once the connection is established, it tries to download a copy of the specified file from the Vault that it is connected to. If the search for files results in multiple files being found, then only the first file is downloaded. The downloaded file is not removed from the M-Files Server. The plugin saves either the file name or the (JSON) response that it gets from the M-Files Server in the specified variable.
l l l Property Definition ID: The property to search for. Property Definition IDs can be found in the Metadata Structure of the respective Vault on the M-Files server. Value: The value to search for. Response: Select whether to store either the file name or the response that the plugin gets from the M-Files server in a variable, and specify the name of the variable to use.
Processing The M-Files Upload plugin starts by sending a login request to the M-Files server. Once the connection is established, it tries to upload the specified file to the M-Files server, either as a new document or as the new version of an existing document. The plugin saves the (JSON) response that it gets from the M-Files Server in the specified variable. Output The output of this plugin is the unchanged Job File. Task properties General Tab All of the properties on this tab are dynamic.
l l Update: In this mode, the file is added as the new version of an existing document (at the root level of the Vault) and its properties may be changed. To find the existing document, the plugin needs the following data: l l l Document Class ID: Document classes are defined (per vault) on the M-Files server. Specify the desired Class by giving its ID (an integer). Property ID: Enter the integer that identifies one property of the existing document.
Check the option Use as step description to display the text next to the icon of the plugin in the Process area. Input from SharePoint The Input from SharePoint task can be used to retrieve files from a SharePoint server on your network, filtering on your template fields and creating Metadata to use in your process. When the Input from SharePoint task runs, it first lists all of the files to download then runs the process once for each file in the list.
Task properties General Tab Note For this tab to work, you must have entered your SharePoint Connection information in the Connection Tab. l l l l l l l SharePoint Site: The name of the SharePoint site from where you want to retrieve documents. You can click on the Refresh button to display a list of sites on your SharePoint server. Document Library: The document library where you want to retrieve the files.
Connection Tab l l l l Server Name: The name of the SharePoint server. This can either be a server name (e.g. http://SharePoint2003 ) or an IP address (e.g. http://192.168.1.123 ). Both http:// and https:// (secure) connections are accepted. Domain: The active directory domain for the logon credentials. This is not necessary if the SharePoint server is not part of a domain. User Name: A valid user name that has access to the SharePoint site and is able to read and write to document libraries.
On Error Tab Output to SharePoint The Output to SharePoint action task can be used to send files to an existing Microsoft SharePoint server. This task is put into effect in the following use cases and example processes: l Capture Post Processing Workflow Note that Capture is only available with PlanetPress Suite. Input Any data file, with optional Metadata. Processing The task connects to the selected Document store and uploads the current data file.
l Force folder creation: If the folder does not exist, it will be created. l Error if the file name exists: Task will generate an error if the file name is already there. l l Mark the document as checked in: Sets the "Checked in" property of the document on the SharePoint server. Configure Fields: Opens the Configure SharePoint Metadata Fields dialog. Configure SharePoint Metadata Fields dialog This dialog lets you setup the information you want to assign to the SharePoint Metadata information.
Note Document libraries using the Content Type system in SharePoint 2007 and higher (as well as Windows SharePoint Services 3.0 and higher) are supported in PlanetPress Workflow 7.4 and higher only. Connection Tab l l l l Server Name: The name of the SharePoint server. This can either be a server name (e.g. http://SharePoint2003 ) or an IP address (e.g. http://192.168.1.123 ). Both http:// and https:// (secure) connections are accepted. Domain: The active directory domain for the log-on credentials.
l "Mailjet" below l "SendGrid" on page 723 Note In order to use one of these tasks, you will need to have an account that allows you to send email through the respective Email Service Provider. Mailjet Note l l The Mailjet plugin is not installed by default. It is available for download on the Resource Center (help.objectiflune.com). Make sure that the version number of Workflow and the plugin match, to avoid compatibility issues.
or a Connect File Store ID ("fileid"), for example: [{"fileid":100034, "disposition":"attachment"}] Optionally, you may provide a name ("name") to override the name that the plugin creates for an extra attachment. Examples: [{"fileid":100034,"name":"example.pdf","disposition":"attachment"}] [{"url":"file:///C:/Terms-andConditions.pdf","name":"terms.pdf","disposition":"attachment"}] All attachments should be combined in one array: [{"url":"file:///C:/Terms-andConditions.
l l l Custom Campaign: Each e-mail going through Mailjet is attached to a campaign. Specify the campaign name here. If the campaign doesn't already exist it will be automatically created in the Mailjet system. When sending email through Mailjet's Web API it is allowed to send multiple emails with the same campaign name to the same contacts. Headers (optional): A JSON object containing one or more key/value pairs of header names and the value to substitute for them:.
l l The SendGrid plugin is not installed by default. It is available for download on the Resource Center (help.objectiflune.com). Make sure that the version number of Workflow and the plugin match, to avoid compatibility issues. To be able to send email using the SendGrid plugin, you need a SendGrid account and API key. The SendGrid plugin allows you to: l l l Tag the emails with category names, which help organize your email analytics (see About categories).
Conditions.pdf","disposition":"attachment","name":"Terms.pdf"},{"name":"Take action Mandie.pdf","disposition":"attachment"}] The order of the key/value pairs is not important. Processing The plugin communicates with the Connect Server to retrieve each email message's body, any attachments and the plain text version (if available) from the File Store, using the folder ID and file names specified in the output of the Render Email Content task.
id, x-sg-eid, received, dkim-signature, Content-Type, ContentTransfer-Encoding, To, From, Subject, Reply-To, CC, BCC. l Debug settings: l l Send all messages to the Test Address: When this option is checked, SendGrid will only send the emails to the given Test Address. This allows you to review the result and to test ESP specific options like open rates and click through statistics. Log email messages: Check this option to get a copy of each message in the Messages window of Workflow.
additional plugins and re-opening the configuration will restore the plugins and their properties. l Opening a configuration that contains plugins only available in PlanetPress Workflow (such as Create PDF) from a PlanetPress Watch installation will cause these plugins to be replaced by Unknown tasks.
Job Info variables Job Infos contain information on any job file that comes out of the initial input task or any secondary input tasks. There are only 9 Job Infos available numbered from 1 to 9. They can be accessed directly anywhere where variable properties are accepted, by using the number of the variable preceded by a percent sign, for example, %2 or %9. Not all available Job Infos will actually be used by input tasks.
Note that Job Infos don't change whilst the task executes. Consequently, the value of the field that contains the Job Info will be the same in each of the records in the resulting record set.
Variable Name Example value when interpreted file extension %z Job file size in bytes 34134 %o Original file name invoice_june2nd.
Variable Name Example value when interpreted minute %r Run mode (0: runtime, 1:debug) 0 %s Current second 41 %v Current millisecond 24 %u Unique 13char string (will be different every time it is used) 0ZIS4CW8U47VI00 %U Unique 36character string consisting of 32 alphanumeric, lower case characters and four hyphens.
Variable Name Example value when interpreted characters). %t Current temporary folder C:\Documents and Settings\All Users\Application Data\Objectif Lune\PlanetPress Workflow 7\PlanetPress Watch\Spool\6.tmp\ %e Current Metadata file name job00ZAIZ2C4FXON16CE6C566.dat.meta %E Current Metadata path and file name C:\Documents and Settings\All Users\Application Data\Objectif Lune\PlanetPress Workflow 7\PlanetPress Watch\Spool\5.tmp\job00ZAIZ2C4FXON16CE6C566.dat.
Initial input tasks do not modify the value of %i. However, the following tasks do trigger the variable: l Barcode scan l Capture Field Processor l All Splitters (Including the Metadata Sequencer) l Get Capture Document l Loop l Capture PGC Splitter l PrintShop Mail Error handling variables The error handling variables are read only and are filled by the On Error mechanism.
Variable Name {error.process} % {error.tasktype} The type of task that triggered the error % {error.taskname} The name of the task that triggered the error % {error.taskindex} The position of the task in the process % {error.errormsg} The error message, as entered in the OnError tab of the task. This is the same message as appears in PlanetPress Workflow Log file. %{error.errorid} The error ID, as entered in the OnError tab of the task.
1. Select the process where you want to add the variable. 2. Now you can use one of two methods: l l Click on the Home tab of the PlanetPress Workflow Ribbon, then click Local Variable in the Variables group. Right-click on the process in the Configuration Components area, then click on Insert Local Variable. Deleting a variable l Right-click on the variable name in the Configuration Components pane and click Delete. Note Deleting a variable does not delete any reference to it.
Tip Variables may be used as variable properties in Task Properties (see "Variable task properties" on page 738). Global variables Global variables are set at the level of the configuration file and are shared between all processes and tasks. To refer to a global variable, for example in a variable task property (see: "About Tasks" on page 334), use its name preceded by "global." and surrounded by curly brackets, for example: % {global.myGlobalVariable}.
1. Double-click on the global variable in the Configuration Components pane. (Rightclicking then clicking Properties also works.) 2. Enter the new value for your global variable. 3. Click OK to save the new value. Deleting a variable l Right-click on the variable name in the Configuration Components pane and click Delete. Note Deleting a variable does not delete any reference to it.
Tip Variables may be used as variable properties in Task Properties (see "Variable task properties" below). Variable task properties When you edit tasks, you may notice that some of the properties that you can modify have a red (or more precisely, a maroon) title. This means that the property can be dynamically determined whenever your process runs, that is to say it will not remain static.
an output file name: %O_@(1,1,1,30, KeepCase,Trim)_%y-%m-%d.txt. This would translate in the original file name, followed by part of the first line of a text data file, then the current date. Inserting variables in task properties In any variable properties box, you may use the contextual (right-click) menu to add variables and control characters, as well as to get data and make data selections.
You can quickly identify variable information that is already present in your variable properties as such: l l l l l A percentage sign identifies system variables, as well as standard and custom job info variables — %f, for example. A backslash indicates a control character — \004, for example. An at sign (@) indicates a data selection for emulations other than database — @ (1,1,1,1,17,KeepCase,Trim), for example.
versions of PlanetPress Suite. PlanetPress Capture is not compatible with OL Connect Designer templates. PlanetPress Capture is a set of tools available in PlanetPress Workflow that enable output and input for interaction with an Anoto Digital Pen. Anoto Digital Pens are electronic devices containing a camera, processor, memory and communication capabilities and they can recognize their location on any paper where a special Anoto pattern is printed.
contains 20,000 patterns (8 in demo mode, See "PlanetPress Capture License Management" on page 805) which can be used to generate documents. Capture Condition PlanetPress Workflow task that is used for post-processing of documents after they have been processed by the Capture Fields Processor. Conditions can be made on the document status or the presence (or absence) of ink on any of the Capture Fields on the document. Capture-Ready Document A PlanetPress Connect document (*.
Contamination The act of writing on a "wrong" document, aka one that has a Pattern Sequence different that the one for which it was produced.. This can happen in architectures with more than one sequence being used such as when a pen is docked in the wrong location or if two pens are swapped. ICR (Intelligent Character Recognition) Recognizing text that has been hand-written with the Anoto Digital Pen. This feature is currently not implemented in PlanetPress Capture, but will be in the (near) future.
Pen ID The serial number of the Anoto Digital Pen. It is registered in the PlanetPress Capture database and is present in each PGC file. PGC File Pen Generated Coordinates; PGC File containing all ink processed while the pen was undocked along with the Pen ID. It is possible that a single document requires multiple PGC, just as it is possible that a single PGC have multiple documents. Pidget Type of PlanetPress Capture object.
with Capture Fields, you must review and understand the Critical PlanetPress Capture Implementation Restrictions. Database considerations (ODBC) Note On 64-bit operating systems, the ODBC Data Sources created by the Data Source (ODBC) icon in the Administrative Tools will not appear here, as PlanetPress Suite is 32bit and cannot access the 64-bit data sources. In order to create an ODBC connection visible by PlanetPress, you will need to access the 32-bit version of the ODBC manager, available in C:\Windo
l MySQL l l l l l Database can be in any location, but performance will depend on the speed of the connection between PlanetPress and the MySQL server. MySQL's performance has been slower than SQL Server and SQL Server Express during our tests. By default, MySQL is configured not to allow any SQL request larger than 16 megs. In the event where 2 requests are made simultaneously on the same record, MySQL will queue one of the requests and execute it once the first one is done.
Security Considerations PlanetPress Capture introduces new and efficient methods for digitally capturing the contents of ink laded out on physical paper. However, because of its nature, some end users may voice concerns about security and privacy.
someone located anywhere between penDirector and PlanetPress Workflow could use software such as a packet sniffer to retrieve its parts and recreate the PGC files. This may be resolvable by create a secure VPN tunnel for each location where penDirector is installed instead of going through regular remote HTTP server. l l l The PlanetPress Capture database, since it can be external to PlanetPress Workflow such as on a MySQL server, will be dependent on your own database security.
used when printing a "Preview" from PlanetPress Design. So in reality, the number of available patterns for document generation is 19990, but for simplicity's sake this FAQ uses the round number "20,000". In a typical PlanetPress Capture implementation, a process in PlanetPress Workflow generates output (generally, this output is directly printed) and, at the same time, will "lock" one pattern for each page that it generates, if that page contains a pattern.
and those 19,000 documents are written on using one or more Anoto Digital Pens, which are then processed back into the system. The example above actually uses numbers that are much higher than our typical PlanetPress Capture user. That is to say, a vast majority of our users will never have to worry about reaching the pattern limitation, unless their implementation is missing important parts, such as the "cleanup" process.
l Pen-Based Sequences: In this case, each pen is attributed a specific pattern sequence. When documents are printed, they are set to attribute a pattern sequence to each document in relation to which pen it will be signed on. For example, the shipping company may have decided to print each "route" using the route number as a pattern sequence, and each pen is tagged (with a label) as being for use with a specific pattern sequence also.
Contamination The single but critical danger with any implementation that deals with PlanetPress Capture is "Contamination". Basically, contamination happens when an Anoto Digital Pen writes on a "wrong" document or is docked in the wrong location. This can happen any number of ways and in different situations, and can have devastating effects in some of those cases so please pay special attention to this section.
In all of these cases, the errors often do not appear when the wrong document is updated - it actually occurs when the "right" data is processed. This happens precisely because the Pen and Production have no idea that the wrong data is received and will generally close the document after that "wrong" data has been processed - this often works with no error. However, when the "right" data is processed, then it tries to update a document that has already been closed by the "wrong" data, and thus fails.
In order to use penDirector, it needs to be downloaded from the Objectif Lune website, on this page. This software must be installed after PlanetPress Workflow. The setup will install a preconfigured version of penDirector which can be immediately used with PlanetPress Capture. The communication between penDirector and PlanetPress Workflow is either through a folder transfer or HTTP Post communication. To configure this communication: 1.
6. When the pen is found, click on it and then click Add. 7. When asked for the PIN, enter the one noted above. 8. Click OK to save the settings. The settings for Bluetooth PGC handling are separate from the ones used when docking. Through Bluetooth, only a single storage and PGC Post URL location can be set for all PGCs.
Printer limitations Any document printed with Capture Fields (aka Anoto Patterns) must be sent through a Laser printer. Bubble jet printers are not supported and will most likely cause reading errors with Anoto Digital Pens. Thermal printers will not work either due to the low quality printout and the absence of actual blank ink on the paper.
Paper quality The PlanetPress Capture technology, when generating the Anoto Pattern, already accounts for ink dispersion on laser printers and on general-use laser paper. Therefore, using paper that is not of the same quality (for example, one where the dispersion rate is much higher) or the same type (reflective paper) may not permit the pen's camera to read the pattern properly.
Knowing this, the best practice when creating fields is that they have, at the very least, a 7mm margin on each size of the actual area you want to capture from. For example, an effective 30mm wide pattern will actually be 44mm wide using these margins. The margin should be for both the vertical size and the horizontal size.
PlanetPress Capture ICR The term "ICR", which means "Intelligent Character Recognition" is an evolution on the popularly-known "OCR", which is "Optical Character Recognition". The difference between the two is easily explained: While OCR can only recognize characters using the finished shape (for example, in scanned documents and pictures), ICR relies on much more data which is provided by the Anoto Digital Pen: the path that the pen takes, the exact timing of this path, start and stop points, etc.
Guide). This must be either a Multi-Area Field or a Text Field. l l l The Capture Fields Processor must have the Perform ICR Recognition option checked, and language needs to be selected. Once the ICR data is available, do something with it. This is done by reading the ICR data that is available in the metadata generated by the Get Capture Document task. The metadata is also readable by the Capture Condition task, including the captured text and the reliability of this text.
l l l ICR Value: The alpha, numeric or alphanumeric value that was determined by the ICR engine. ICR Confidence: A percentage value that the ICR engine gives to any specific value, when comparing the pen data with it's character database. ICR Resemblance: A percentage value that defines how closely the value resembles the "average" character shape. Both the Confidence and Resemblance can be used together to make an informed decision on the contents received by ICR.
The following guidelines are applicable when configuring a PlanetPress Capture object that utilizes ICR: l l l l l l l The collected data is expected to be a number, therefore the numeric mask type must be selected, or The collected data is expected to be a letter, therefore the alphabet mask type must be selected, If upper case letters are expected, select Upper case in the Case option menu. The captured characters would be immediately converted to capital letter i.e.
The following diagram illustrates the available mask types. It is recommended to select the mask type that is the closest to the desired result. An alphanumeric field should be used as a last resort. Guidelines for Capture-Ready Fields l l Target: Form designer What: Only one character per Capture field can be recognized. When expecting multiple characters making up a word or phrase, you must make sure that the user only writes one character per field.
Why: To avoid any ink marks that would spill over from one field to another. If both fields A and B are to close in proximity and the ink marks from field A spill over to field B, then the marks captured on field B would be considered as being part of a character written on field B. For example, if a number spills over and is written over two fields like numbers 9, 1 or 7; then the bottom tip of these numbers could be considered as number 1 in the second field.
How: Make sure there’s enough space between each field. You must re-design the document if that’s the case. There’s no minimum value that is required as the distance between 2 fields, except for the 7mm border that is required in order for the Anoto digital pen to recognize the pattern being used. Writing in a Legible Way l l Target: User. What: It is important to write in a legible way i.e. applying yourself by writing well defined numbers and letter that are easily interpreted.
Selecting the Correct Language When Using the Capture Field Processor Task l l Target: Workflow designer. What: It is crucial that the correct language is selected when using the ICR recognition option. This will affect how the captured data is interpreted. Why: The available filters to interpret the ink marks done with the Anoto digital pen, allow you to select the engine language to be used. Doing so will give you results that are the closest match to the captured data.
Possibility of Interpretation Error in an Automated Process l l Target: Workflow designer What: We cannot be 100% sure that a character would be recognized by PlanetPress Capture as it should. Therefore, the analysis of a value interpreted with ICR should only occur if the level of confidence is superior to a determined level.
Why: An automated process can treat the characters incorrectly due to an incorrect interpretation of a value. This occurrence should be minimized as much as possible. How: Allow for a special process (possibly manual handling) in the case the automated process didn’t reach a high confidence level in its analysis of the ink marks. Use the plugin Capture condition that includes the ICRContent option. This can be configured to be a true condition if the confidence level is greater than a certain value.
to run it on every computer where PlanetPress Workflow is running, but you may also choose to run it on computers more or less dedicated to PlanetPress Fax. Since the faxing program must always be running and ready to receive requests from PlanetPress Workflow, it should be included in the Windows Startup group. PlanetPress Fax can associate a different fax number with each page it sends via the faxing software.
may choose to run it on every computer where PlanetPress Workflow is running, but you may also choose to run it on computers more or less dedicated to PlanetPress Image. Note that in the case of Digital Action tasks, PlanetPress Workflow and the PlanetPress Image service must be running on the same computer. Note The minimum time required to generate a PlanetPress Image document is approximately 10 times longer on Windows 2000 than on Windows XP/2003.
OL Connect Send tasks l "Get Data" on page 600 l "Get Job Data" on page 605 l "Job Processor" on page 608 ZUGFeRD The ZUGFeRD plugin provides a way to enrich German PDF invoices with data specific to the invoice. This is done by embedding the data in a standardized XML format within the PDF itself. ZUGFeRD is an acronym for Zentraler User Guide des Forums elektronische Rechnungen Deutschland. In English this translates to Central User Guidelines of the Forum for Electronic Billing in Germany.
Plugin language The plugin is only available in German, as its application is only really relevant to documents created for the German market. Plugin usage For help on how to use the ZUGFeRD plugin, see "ZUGFeRD plugin" below. Plugin Legal Notices and Acknowledgments Copyright © 2020, Objectif Lune Inc. All rights reserved. The ZUGFeRD name and logo are protected under copyright and used with permission of the Arbeitsgemeinschaft für wirtschaftliche Verwaltung e.V. in Germany. The Objectif Lune Inc.
If the incoming PDF is not PDF/A compliant, the plugin will not touch it but will instead forward the untouched PDF as the Job File. If the incoming PDF already contains ZUGFeRD data, the plugin will not touch it but will instead forward the untouched PDF as the Job File. Properties ZUGFeRD I Tab The ZUGFeRD data entry options are too large to fit within a single entry tab, so the data entry options have been split over two tabs. ZUGFeRD I is the first of these.
instead forward the untouched PDF as the Job File. If the incoming PDF already contains ZUGFeRD data, the plugin will not touch it but will instead forward the untouched PDF as the Job File. l Rechnung group contains invoice related information. l l l Rechnungsnummer: The invoice number. This field supports alphanumeric strings and can be set via Workflow data and/or variables. Dokumentenart: The document type. This field will always be set to "RECHNUNG" (invoice), to cater for BASIC invoices.
Note No postal code validation is done by the plugin, so it is up to the user to make sure that the postal code entry is valid and in the correct format for the indicated country. This field can be set via Workflow data and/or variables. l l Ort: The postal address city/town. This field supports alphanumeric strings and can be set via Workflow data and/or variables. Ländercode: A 2-letter country code as defined by the industry standard ISO 31661 alpha-2.
Note The plugin does not check if a given tax ID number conforms to any rules. It is the responsibility of the user to ensure that only valid tax ID numbers are entered. This field can be set via Workflow data and/or variables. l Käufer group contains all the required values and information related to the buyer. l l l Name: The individual or company name. This field supports alphanumeric strings and can be set via Workflow data and/or variables.
Note The plugin does not check if a given country code is in the list of valid country codes. It is the responsibility of the user to ensure that only valid country codes are entered. This field can be set via Workflow data and/or variables. ZUGFeRD II Tab The ZUGFeRD data entry options are too large to fit within a single entry tab, so the data entry options have been split over two tabs.ZUGFeRD II is the second of these. All the entry fields on the ZUGFeRD II tab support the use of variable data.
l IBAN: A bank account number following the International Bank Account Number (IBAN) standard. The IBAN consists of an alphabetical country code, followed by two check digits, and then up to thirty five characters for the bank account number. The bank account number can include the domestic bank account number, the branch identifier, and potential routing information. Note The plugin does not validate bank IBAN/BIC codes. It is the responsibility of the user to ensure that valid codes are entered.
Note The plugin will accept any string. The user needs to take care to only enter valid tax codes as defined in the UNCL 5153 (see http://www.unece.org/trade/untdid/d97b/uncl/uncl5153.htm ). This field can be set via Workflow data and/or variables. l l l l Steuerprozentsatz: The tax rate entry. This is the percentage that applies for the taxation calculation. This entry should be a numeric currency entry, which can be set via Workflow data and/or variables.
and/or variables. Bei Fehler/ On Error Tab For a description of the options on the On Error tab see "Using the On Error tab" on page 100. Anmerkungen/ Comments Tab The Comments tab is common to all tasks. It contains a text area (Task comments) that lets you write comments about the task. These comments are saved when the dialog is closed with the OK button, and are displayed in the Task Comments Pane.
information on how to configure the account used by the services, see "Workflow Services" on page 900. Available Input services Input services are used to pull in data files. The input services used by PlanetPress Workflow are: l l l l l LPD (Line Printer Daemon) Input service: Inputs data sent from an LPR client. The LPD/LPR printing protocol is a common way to send print jobs that, in turn, use the TCP/IP protocol to communicate through the network.
l l l l PlanetPress Fax: Outputs jobs as faxes. You use PlanetPress Fax as an interface to WinFax PRO or Windows Fax, to send faxes you create from documents. You can install multiple instances of the PlanetPress Fax service on your network, and have PlanetPress Workflow send jobs to one or more of these instances. Each instance of PlanetPress Fax can generate faxes and dispatch them from the host on which it runs, using a local faxing program, such as WinFax PRO, Captaris RightFax or Windows Fax.
into its processes, but it keeps on performing tasks until all the files which are currently under process have been completely processed. l Click Pause to pause the service. The PlanetPress Workflow service temporarily stops performing jobs. Note If you send a new configuration when PlanetPress Workflow is paused, it will continue using the old configuration when you resume processing until you stop and restart it. See also: "Saving and sending a Workflow Configuration" on page 140.
the lower right corner of the PlanetPress Workflow Configuration program: . This is to draw your attention to the fact that your PlanetPress Workflow may have rights that differ from your rights, and that this application and its services may therefore not be able to perform some of the actions you can perform when you create or edit a given configuration.
themselves using a local or network account. The first time you start the PlanetPress Workflow Configuration program, the application automatically asks you to choose an account (see below). You can also manually start this procedure from the PlanetPress Workflow Tools by following this procedure: click on the Tools tab in PlanetPress Workflow Ribbon, then click Configure Services.
PlanetPress Workflow applies the user account information to all the services (PlanetPress Workflow, PlanetPress Fax, PlanetPress Image, LPD input, Serial input, Telnet input, FTP output, LPR output, and PlanetPress Messenger), that run on this computer. The PlanetPress Workflow Configuration program does not test user names and passwords, but merely associates them with the services that require them. If you enter a bad user name or password, these services will be denied access to the selected account.
Preferences PlanetPress Workflow Configuration program lets you configure a variety of options, from how the application itself looks or behaves, to plugin specific options. Most of PlanetPress Workflow preferences are located in the PlanetPress Workflow Preferences window, accessible through the Preferences button in the PlanetPress Workflow button, or the key combination Ctrl+Alt+P.
l "Telnet Input plugin preferences" on page 823 l "PlanetPress Fax plugin preferences" on page 824 l "FTP Output Service preferences" on page 827 l "PlanetPress Image preferences" on page 828 l "LPR Output preferences" on page 832 l "PrintShop Web Connect Service preferences" on page 833 Note Preferences are saved automatically and applied immediately.
l l Highlighted tasks and branches: Select the background color for highlighted tasks and branches in the Process Area’s invisible grid. Disabled tasks and branches: Select the background color for disabled tasks and branches in the Process Area’s invisible grid. Inactive process l Color: Select the color to use to identify inactive processes in the Configuration Components pane. l Bold: Select to use a bold font to display inactive processes.
l Reset to default button: Click to reset all the Object Inspector options to their default values. Configuration Components pane appearance preferences Colors This window lets you set the color of individual Configuration Components pane elements. To change the color of a given element, select it in the list box above and then choose a color from the drop-down list below.
Default configuration behavior preferences l Use default configuration: Check to use default input and output tasks when you create a new process. If this group is not selected, each new process you will add will begin and end with unknown tasks. l l l l l l l l Default input task: Select an input task to use as the default input task when you add a new process. Click the Configure button located to the right of this box to set the properties of the selected input task.
JavaScript 1.5 (ECMA-262 3rd edition + ECMA-327 (ES-CP) + JSON). Enhanced JScript allows the use of more recent JavaScript syntax. Many methods - basic methods like Date.now(), String.trim(), btoa ()/atob() and more advanced methods like Array.forEach() - are added to the JScript engine via the polyfill.js library. l 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.
l l l l l l l l l l l Invalid name: Select to have PlanetPress Workflow warn you when you try to rename an object in the Configuration Components incorrectly. Names can include letters, numbers, and underscores; the first character of a name cannot be a number. Printer queues update: Select to have PlanetPress Workflow prompt you when adding a document to a group under the Documents category in the Configuration Components pane.
l l l l l l l l l Prompt on overwrite of a document: Select to have PlanetPress Workflow prompt for confirmation when a document that is being imported using File | Import Document is about to overwrite an existing document. Prompt on Document overwrite when service is running: Select to have PlanetPress Workflow prompt for confirmation when a document that is being imported using File | Import Document is about to overwrite an existing document.
l Warn on Component Rename: Select to have PlanetPress Workflow prompt for action when configuration components, such as processes, are imported from an external configuration file. Imported components can overwrite existing components, or be renamed automatically with unique names. Sample Data behavior preferences Sample Data behavior preferences control the way theData Selectordisplays the sample data file.
resources as configured for this user. l l l l Password: Enter the NetWare password corresponding to the user name you entered in the previous text box. Tree: Enter the NetWare Directory Services (NDS) tree where the user resides. This is the user you entered in the user name text box. Click Trees to navigate to the desired tree. You must enter a value for the Tree text box. Context: Enter the context on the NDS tree where the user you enter in the user name text box resides.
The available PlanetPress Capture user options are: l Mode: Choose between Server and Client mode. Client and Server mode are used for multi-server architectures. See PlanetPress Capture Server/Client. l Port: Select the port used to connect two servers together. The default value is 5864. l Document and Pattern Database group l l l Use ODBC Database: Check to ignore the default location for the Microsoft Access database (MDB) and use an ODBC connection to your own database location instead.
selected. Note that this validation occurs for every ink file (i.e. PGC file) the local system processes, which may cause a slight delay for the operation depending on the connection speed and latency between the two systems. Note The Server/Client mode is only used for managing pen licenses and has no impact on the Capture Database itself. The database can be stored locally or remotely, regardless of the Server/Client mode specified.
l l Content Status: Search using the status of the document, whether it is Open, Closed, Complete, Partial or in Error. Operator: Select how to do the comparison l Equal: The mask and database information are exactly the same. l Not equal: The mask and database information are different. l l l l l l Less than: If the mask and database information are both numbers, the mask will be a smaller number.
l Close documents: Click to close the document and release the pattern it uses. Warning This will prevent the document to be further updated, may cause errors when docking any pen that signed the printed version of the document. This cannot be undone. PlanetPress Capture ODBC Settings This dialog is used to set up the connection to a PlanetPress Capture Database through an ODBC connection. To access this dialog, See "PlanetPress Capture preferences" on page 797.
l l l Type: Click to display a drop-down of supported database types. This must correspond to the database type of the DSN chosen in the previous option. user name: If the database is secured with a user name and password, enter the user name here. Password: If the database is secured with a user name and password, enter the password here.
l l l Database file (mdb) must be local to the PlanetPress Workflow computer. It cannot be located on a network drive or another server. l Total database size is limited to 4GB of data. l Total size of a single table is 2GB. l May be unstable in large implementations. MySQL l l l l l The recommended ideal setup is a dedicated SQL Server PC, accessed by PlanetPress Workflow through an ODBC connection on the local network.
Options and Controls Top Toolbar l l l Read PGC File: Click to display a File Open dialog. Browse to an existing PGC file, and open it. PlanetPress Capture will read the serial number from the PGC file and register the pen. Print Pen Activation File: Click to print a page containing a special pattern. Any pen that writes on this pattern and is then docked will be registered in the database.
To register a pen using the registration pattern 1. Click on the Print pen activation file button in the top toolbar of this dialog. 2. Use the Windows Print dialog to print to the desired printer. 3. Write or make a line on the printed pattern. 4. Dock the pen in its cradle. 5. Click on the Read PGC File button in the top toolbar of this dialog. 6. If necessary, enter an optional pattern sequence and User ID for each pen.
Technical To add a pen pack, PlanetPress must be activated using a PlanetPress Production license. if PlanetPress Production is in trial mode, no pen pack can be added because the Pen Pack uses the serial number. Options and Controls PlanetPress Capture Pen Licenses Group l l Import License...: Click to open the Import License dialog. Browse to a PPLIC (PlanetPress License) file on your computer and open it to import the license.
The available OL Connect user options define the default behavior of OL Connect tasks' OL Connect Proxy tab. These values are used unless they are overwritten in a task's properties: l Server Connect Settings l l l l l Connect Proxy Address: Enter the machine name or IP Address where the OL Connect Server resides. Port: Enter the port to use to communicate with the OL Connect Server. Default: 9340 User name: Enter the user name expected by the OL Connect Server.
Warning The default values are generally correct for the greatest majority of PDF data files. Only change these values if you understand what they are for. Delta Width Defines the tolerance for the distance between two text fragments, either positive (space between fragments) or negative (kerning text where letters overlap). When this value is at 0, the two fragments will need to be exactly one beside the other with no space or overlap between them.
At 0, the font size must be exactly the same between two fragments. At 1, a greater variance in font size is accepted. Accepted values range from 0 to 1. The default value is 0.65, recommended values are between 0.60 and 1.00. Gap Defines how spaces between two fragments are processed. If the space between two fragments is too small, the text extraction will sometimes eliminate that space and count the two fragments as a single word. To resolve this, the Gap setting can be changed.
l l l l l l Task failure: Select to only track when tasks in the processes running in a PlanetPress Workflow configuration fail. Task success and failure with details: Select to track when the tasks in processes running in PlanetPress Workflow succeed and fail, with details. Details can include why tasks fail and how successful tasks are executed. All events with details: Select to log everything that happens in PlanetPress Workflow.
Alambic. Preferences l PlanetPress Alambic options group l l l Let me set up how many instances to run: Select this option if you want to limit the number of instances of the Alambic that PlanetPress Workflow can run. Then enter the number of instances, a value ranging from 1 to 32, in the box below. When this option is not selected, PlanetPress Workflow starts a minimum of three instances and a maximum of eight, based on the number of CPUs available on the server.
Preferences l l l Port: Select the port to use. The default port is 8080, the official HTTP alternate port, so as not to interfere with the standard HTTP port (80). To block any regular HTTP traffic (for example if only using HTTPS connections) the port can be set to 0. Note that it is possible to use both the NodeJS Server and the standard HTTP Server simultaneously, provided that they are not set to listen to the same port. See "NodeJS Server Input plugin preferences 1" on page 818.
This password is encrypted within PlanetPress Workflow server and is not saved in plain text. l Encryption protocol: Choose your cryptographic protocol (SSL or TSL). This is determined by the software that generated the keys. Note When SSL is enabled and a user sends a query prefixed with https://, then this specific communication will be sent through port 443, which cannot be changed in Workflow. However, http:// requests will still be received on the port specified in http server preferences.
separated by an underscore (e.g. row_0). The first part is considered to be the element's name. All content after the first underscore (preferably an integer) will be used as index, which is given as an attribute of the element (e.g. ; also see "PHP arrays example" below). This option makes it much easier to select all elements on the same level in a data mapping configuration, and to convert the XML to a JSON object.
Resulting XML Structure with PHP-like arrays email@example.com Peter Parker Objectif Lune 122 253 dent 361 341 dent Resulting XML structure with Enhanced PHP-like arrays email@example.
HTTP Server Input plugin preferences 2 The second set of HTTP Server Input plugin preferences is used to enable serving static HTTP resources, as part of an HTTP Server workflow. These resources are referred to within the HTML response file and do not pass through a process to get served so the process is very quick.
Even though it is strongly recommended to use the element in web pages, some might use another encoding or not have the element at all, affecting the character set used by the browser to send the parameters and file names. l l System language: Sets the encoding attribute in the request XML file to the system codepage (e.g. Windows-1252). UTF-8: Causes all parameters as well as file names from the request to be interpreted as a UTF-8 text stream.
Preferences l Protocol options group l l l l l Log all Winsock and network messages: Select to have PlanetPress Workflow keep a log of all Winsock and other network messages that occur through the LPD service. These are messages related to jobs being sent from other systems through LPR, and being received by PlanetPress Workflow via LPD. Since these messages can accumulate, you have the option of not logging them.
configure secure communication for the NodeJS Server. Click the PlanetPress Workflow button and then the Preferences button, to open the Preferences dialog. The NodeJS Server Input 1 preferences page can be found under Plugin. Note Workflow's NodeJS and ppNode folders can be found in %PROGRAMFILES%\Objectif Lune\. l l l Port: Select the port to use. The task's default port is 9090. Port numbers > 9999 are possible.
l l l l l l Root certificate: Enter the absolute path to the Root Certificate, or click the Browse button and select the file in the Browse dialog. The file generally ends with a .crt extension. Certificate: Enter the absolute path to the site Certificate, or click the Browse button and select the file in the Browse dialog. The file generally ends with a .crt extension. Key: Enter the absolute path to the Private Key File. This file generally ends with a .key extension.
remote site. Use the buttons below the list to add or delete mount points and to change the order of the mount points in the list. l Remote site: Type the address of the server to which the request should be redirected. Note The 'Forward all HTTP traffic to HTTPS' option (see "NodeJS Server Input plugin preferences 1" on page 818) does not affect proxies. All routes set as proxy in Workflow will be forwarded to the target specified in the proxy list.
Testing the server l To test the server address and domain, enter a username and password and click the Test server button. Note The user name and password aren't part of the plugin preferences. Users will have to provide their credentials themselves and will be presented with an HTML page for that purpose.
l l l l l Parity: Select the type of parity used for error detection. The parity transfers through the serial connection as a single bit. It is used to verify that each set of data bits transfers correctly. It is then stripped away before the data file passes through the rest of the PlanetPress Workflow process. Select None to ignore all parity bits; no error detection occurs. Stop bits: Since most serial ports operate asynchronously, the transmitted byte must be identified by start and stop bits.
l Use Job Delimiters: Check this option if your Telnet input is a single stream that can contain multiple jobs. The box lets you enter one or more possible delimiters (separated by a line return), either a direct string (such as %%EOJOB) or an ASCII character (\001). For a list of ASCII characters, see http://www.asciitable.com/.
distance, prefix, and area code, and fax number to the ones it receives from PlanetPress Fax. If any of the values it receives from PlanetPress Fax are empty, it uses its own default values. For example, if the data selection did not contain a dialing prefix, WinFax PRO uses its default dialing prefix. Select Dial as entered to limit PlanetPress Fax to removing any spaces or parentheses that appear in the data selection, and sending the result to WinFax PRO.
l l l Expand folder paths in UNC (Universal Naming Conventions) format: Select to have PlanetPress Fax use complete network server path names (\\servername\sharename\path\filename). This naming convention works well with Windows operating systems, Novell NetWare, and other operating systems when using a local naming system (such as the DOS naming system in Windows) would result in “File not found” error messages. Dialing options button: Click to set the appropriate options as required.
l Dialing options button: Click to set the appropriate options as required. Since these options are specific to the faxing program, refer to the faxing program’s documentation for more information. Captaris RightFax options l l l l l RightFax Printer: Select a RightFax printer. A RightFax printer is a fax driver that makes it possible to send faxes automatically. This printer will output faxes without prompting the user for fax addressing information.
kept in the Log folder, which is located in the PlanetPress Workflow installation folder. They are named ftpdate.log, where date is the current date in yyyymmdd numerical format. Note that changing this option also affects the log displayed in the PlanetPress Workflow Service Console. l l l Interval: Select the interval (in seconds) at which the FTP service is to dispatch jobs from the ftpPut folder to the FTP sites. Back up job on error: Select to move the job file to a local folder ftpPut\error if an e
l Send to the administrator group l l l l l l l l l Daily log: Select to send an email to the administrator every day at midnight (according to the local system clock) reporting the daily activity of PlanetPress Image. The log is sent to all addresses you enter in the Administrator’s address(es) text box. Error log: Select to send an email that includes the current error log to the administrator when an error occurs.
PlanetPress Image 2 or database tab Add PDF to PlanetPress Search database group: Select to populate a PlanetPress Search database using the documents created by PlanetPress Image and to activate the related options. Refer to the PlanetPress Search User Guide for more information on this PlanetPress Workflow software. l l l l l l l l l l Database type: Select the type of the database in which you want to create a table (Access, or SQL Server).
PlanetPress Image 3 or network tab The options in this section are identical to the ones in the Network User Options section. However, they determine how PlanetPress Image will interact with your Novell NetWare system, not the PlanetPress Workflow Service. PlanetPress Image 4 or login tab l l Use Microsoft Outlook: Select to use Microsoft Outlook on the host computer running PlanetPress Image to send the error messages to the administrators.
LPR Output preferences LPR output user options control certain functions of the LPR Client service, which in turn has a direct impact on all LPR output tasks performed by PlanetPress Workflow on a given computer. Options l Protocol options group l l l l l Log all Winsock and network messages: Select to have PlanetPress Workflow keep a log of all Winsock and other network messages that occur through the LPR output.
l LPR settings group l l Time-out: Set the time in seconds the PlanetPress Workflow process waits when it sends jobs using the LPR protocol. The default value for the Time-out property is 7200 seconds (2 hours). On a time-out, partially sent data files are not passed to the rest of the process; the LPR output resets and is ready to send further data files. Log messages include the time-out duration.
Script Editor and XSLT Editor" on page 145). There are a number of options for the editors, which you can set via the menu: Tools > Options, in the editor. Most of the options listed below are valid for both editors. Those options which are only valid for a specific editor are identified as such. l Editor l l l l l l l l Auto indent mode: Select to automatically position the insertion pointer under the first non-blank character of the preceding line when you press ENTER.
l l l l l l l l l l Cursor beyond EOF: Select to make it possible to position the pointer beyond the end of the program file. Clear to prevent this. If you clear Insert mode and select Cursor beyond EOF, you can only overwrite the existing lines of the program; you cannot add lines to it. Cursor beyond EOL: Select to make it possible to position the pointer beyond the end of the line. Clear to prevent this. Keep trailing blanks: Select to preserve any blank spaces occurring at the end of a line.
l l l Block indent: Enter the number of spaces to jump for each block indent. The default is 2 and the maximum is 16. The Block indent typically should agree with the tab stops in the Tab stops option. Perform a block indent by selecting a region of code and pressing CTRL+SHIFT+I (to indent the code to the right) or CTRL+SHIFT+U (to move the code to the left). Tab stops: Use to set the number of spaces to advance when you enter a tab character or to set a series of tab stops.
the distance from the left margin to the right margin indicator is 80 characters. Use the drop-down list to select a previously-entered margin position. l l l l l Gutter: Select to have the Editor display a gutter between the Commands and Code areas. Use the Gutter width option to set the width of the gutter. Select the Line numbers on gutter option to display line numbers in this area. Gutter width: Enter the width, in pixels, of the gutter.
l l Italic: Select to italicize the element highlighted in the Element list box when it is displayed in the Script Editor. Underline: Select to underline the element highlighted in the Element list box when it is displayed in the Script Editor.
The user interface This chapter centers on the PlanetPress Workflow Configuration program, which you use to create and edit your configurations. The basic user interface elements are as follows: l "PlanetPress Workflow Button" on page 849. l " The Quick Access Toolbar" on page 915. This toolbar is customizable. l The ribbon tabs; see "The PlanetPress Workflow Ribbon" on page 916. l "The Process area" on page 907 l "Configuration Components pane" on page 850.
Customizing the Workspace You can combine and attach the Configuration Components pane, Messages area and Object Inspector into a single secondary window that can be docked to and undocked from the main PlanetPress Workflow Configuration program window. Combining and attaching areas can facilitate the management of your screen real estate. It lets you reposition multiple areas in a single operation.
above it (undocked position). You dock a window when you attach it to the Program window, and you undock it when you detach it from the Program window. The Configuration Components pane, the Object Inspector and the Messages area can each be displayed inside its own window, whether docked or undocked, but they can also be displayed attached or combined inside the same window. l l l When separate areas are displayed simultaneously, they appear in different sections of the Program window.
the Messages area. The area will jump from an undocked to a docked position and viceversa. Show or hide areas of the program window You can choose to hide or display any of the customizable areas in PlanetPress Workflow program. Hidden areas will still contain the same information but will not be visible. To show or hide a Program window area: 1. In the PlanetPress Workflow Ribbon, click the View tab. 2. From the Show/Hide group, click on any area name to hide or display it.
a tab appears at the bottom of the rectangle. Switching between combined areas At the bottom of the combined area, click the tab of the area you want to bring to the top. If all the tabs are not displayed, use the left and right arrows to navigate between them. Image: The left and right arrows let you show hidden tabs. Reordering tabs in a combined area At the bottom of the combined area, click the tab of the area you want to move, drag it to the left or right and drop it at the desired position.
Taking an area out of a combined area To take an area out of a combined area, do one of the following: l l Click the tab displaying the name of the area you want to take out and move the mouse pointer so as to drag the area away from the combined area. As you drag, a rectangle is displayed to show the landing position. Release the mouse button when the rectangle is away from the combined area. Double-click the tab of the area you want to take out of the combined area.
Image: Attaching an area to a group of combined areas. The rectangle showing the landing position is not tabbed and the area will therefore be moved next to the combined area. Maximize or restore attached areas To maximize or restore attached areas, do one of the following. l To maximize a vertically attached area, click the upward pointing arrow on its title bar. l To restore a vertically attached area, click the downward pointing arrow on its title bar.
Image: A) Click to maximize this area. B) Click to restore this currently maximized area.
Image: C) Click to maximize this area. D) Click to restore this currently maximized area. Taking an attached area out of a group To take an attached area out of a group, do one of the following: l l Click the title bar displaying the name of the attached area you want to take out and move the mouse pointer so as to drag the area away from the group. As you drag, a rectangle is displayed to show the landing position. Release the mouse button when the rectangle is away from the group.
To resize a program window area: 1. Move the pointer to an edge of the area that you want to resize, to display the resize pointer. 2. Then click and drag to resize the area. Change the Interface language PlanetPress Workflow can be used in multiple languages, and the list of available languages grows as we translate the software. The first time you use PlanetPress Workflow, it starts in the language used for the installation.
Japanese. PlanetPress Workflow Button The PlanetPress Workflow button provides access to the File menu options. Options l l l l l New: Closes the configuration that is currently opened and creates a new configuration, with a single example process and no printer queues. See "Creating a new configuration" on page 35. Open: Displays the dialog to open an existing configuration file. Save: Saves the current configuration.
l l l l l Close: Closes the configuration that is currently opened and creates a new configuration, with a single example process and no printer queues. Closing the current configuration is the same as creating a new one. Recent Documents: Displays a list of the 9 most recently opened configuration files. Click on any of them to open it. Select Language: Click to display the language selection dialog, which changes PlanetPress Workflow interface language.
l Cut, Copy, Paste: Controls the clipboard. l Delete: Deletes the process from the configuration. l Rename: Renames the process. l l l Startup: Triggers whether the process is a startup process (runs before any other process). l Group, Ungroup: Triggers grouping functionality. l Properties...: Displays the process' properties, for scheduling and error handling. Subprocesses: Displays a list of subprocesses in your configuration (see: "About processes and subprocesses" on page 126).
l l l Group, Ungroup: Triggers grouping functionality. Properties...: Displays the properties, which lets you set a default value for the global variable. Connect Resources: Displays a list of PlanetPress Connect resources that can be used in processes (see: "Connect resources" on page 40). Different resources are divided into subfolders: l Data Mapping Configurations: Displays a list of data mapping configurations used with the Execute Data Mapping task.
l l l Group, Ungroup: Triggers grouping functionality. Properties...: Displays the properties, which lets you see the form information and select its default printing behaviors. Printer Queues: Displays a list of printer queues in your configuration (see: "PlanetPress Workflow printer queues" on page 113). Right-click on a printer queue to access a dropdown menu that offers these choices: l l Insert Printer Queue: Creates a new printer queue in your configuration.
Note Subprocesses do not have the General tab which is only used for scheduling, but they do have the Information tab. Options General tab l l l l l l l Active: Select to make the process active. Clear to prevent this process from running when you send the configuration to PlanetPress Workflow. Startup: Select to make this process a startup process (see: "Startup processes" on page 127). This option is not available for self-replicating processes and error processes.
that's only scheduled to run one hour per week, it will capture the input 120 times during that period. Note that the polling interval is ignored when multiple files are present in the input and will be used only when there are no longer any files to process. l l Month: Select the month of the year when the process should be run or select All months to have the process run all year long. This option is disabled when "As soon as possible" is checked.
In the Time Grid, a blue block will indicate that the process is active within that time block. White blocks mean the process will not poll. Note that when multiple files are present in the input, these may continue to be processed after the period set in the time grid. The "Folder Listing" on page 354 plugin in combination with a "Time of Day Condition" on page 511 could be used to prevent further processing of those files.
l Click on any block to select / deselect it. l Click and drag from one block to another to toggle all blocks between the two. l l l l Shift-click on any block to toggle all blocks from the top-left corner of the grid to the block you click. To select all of the time segments for a given day or date, click the day or date on the top grid ruler. To deselect all of the time segments for a given day or date, CTRL+click the day or date on the top grid ruler.
l l Description: A one-line box to give a title or short description to your process. Comments: A multi-line box to give more detailed information, for example the file format expected, explanation of the system in general. On Error Tab A process’s On Error tab specifies the default values for error handling of all of the tasks in that process. When a task has its own error handling settings, those settings overwrite the process's default error handling settings.
Document properties options Identification Tab The information here is read-only and gives you information on the document. l l l l l Document: The file name of the document, as entered in PlanetPress Design. This is the name of the file saved in PlanetPress Design, or the name you give it when you add a printer-resident document in your PlanetPress Workflow Configuration.
l Document location group (enabled only when using Printer-Centric mode) l l l l l On printer hard disk: Select if the PlanetPress Design document is on the printer's hard drive. In printer flash memory: Select if the PlanetPress Design document is on the printer's flash memory. RAM: Select if the PlanetPress Design document is on the printer's RAM (Random Access Memory).
Mouse cursor As you drag a configuration component, your mouse cursor will change to indicate the action you are performing, as well as whether the location where the cursor is can accept the configuration component you are dragging. If you try to drag a configuration component in a location that is not accepted, the cursor changes to a "prohibited" icon. If you are moving a configuration component to a valid location, the mouse cursor displays the normal cursor along with a small dotted box.
When dragging configuration components, a horizontal line appears where the component will be dropped (if the location is valid). At the end of this line will be small "dents". If these dents are on top of the line, the component will be placed at the same level (group) as the component before it. If the dents are at the bottom, the component will be placed at the same level (group) as the component after it.
same methods as moving them, with the following differences: l l To copy components using the clipboard buttons and contextual menu, replace Cut by Copy. Otherwise the methods are the same. To copy components using the keyboard shortcuts, replace CTRL+X by CTRL+C. Otherwise the method is the same. Note You can also copy multiple components by selecting more than one then using the methods described above. However, you can only select multiple components from within the same folder.
1. In the PPD/PSM Documents section of the Configuration Components pane, doubleclick a printer-resident document. The PlanetPress Design Document Options dialog box is opened. 2. In the Document name box, enter the new document name and click OK. Reordering objects in the Configuration Components pane There are multiple ways you can reorder objects in the Configuration Components pane.
Grouping Configuration Components Groups help you organize processes, documents, and printer queues. For example, you may create the Invoices, Checks and Reports groups in the Processes section and associate individual processes with each one of these groups. Each group may contain subgroups. Items or processes, and groups, can only be grouped within their own category.
Ungrouping objects To remove a group in the Configuration Components pane, but keep its contents: l Select the group and choose View > Ungroup. l Right-click on the group and select Ungroup from the contextual menu. l Select the group and press CTRL+U. The contents of the group will move one level up. To remove objects from a group, without removing the group itself, select the object or objects and use one of the methods above or drag-and-drop.
l Click a process group, documents group, or printer queue group, then press the Delete key. In the case of process groups and printer queue groups, the group and all its members are deleted. In the case of documents, you are first prompted to confirm the deletion of each member of the group. You can turn off this prompt in the Notification Messages User Options.
Messenger access Manually adding new entries to the list To grant access to the Messenger service you can manually add new entries to the list: l Open the Access Manager. l Make sure you are in the Messenger tab. l In the IP address box, enter the IP address of the remote machine. l Click on the l Add the necessary permissions. l Click OK. l Restart the Messenger service. button.
Note The format of the IP address must be one of the following: l l l l 127.0.0.1: The local computer. Typically this IP should have all the accesses checked. 255.255.255.255: Everyone on the same subnet. This is equivalent to hard-coding the current subnet, such as 192.168.1.255 or 10.0.0.255. 192.168.0.42: A single IP address. This can be any valid address on the same subnet. 10.0.255.255: Any IP in the 10.0.X.X range.
configure IP limitations: l l l l Each permission type (column) is evaluated from top to bottom (column per column) in the order in which they are visible in the Access Manager window. This means that wide ranges should always be at the top to increase performance. For example, if you accept HTTP connections from any IP, the first entry should be 255.255.255.255 with the Allow checkmark in the HTTP Input box. PlanetPress does not continue processing after it has found an "Allow" checkmark.
l Send Config:Grants access to the remote computer to overwrite the configuration on the local PlanetPress Workflow service Note In order for the changes made here to be effective, you will need to restart the PlanetPress Messenger service. This can be done via the PlanetPress Workflow Service Console. SOAP Access The SOAP tab of the Access Manager controls access from SOAP clients to local processes and SOAP processes. Each user name entered in this dialog can have access to one or more processes.
Adding a new SOAP user To add a new SOAP user: 1. Click on the button. 2. Enter the following information under the Username column for the new entry that was created: l l l User name: An alphanumerical user name for the user. Password: A password to protect the user. Note that the password will always revert to ******** (8 stars) when clicking outside of this box - that is normal and is meant to protect the length of the password as much as its contents.
Note In order for the changes made here to be effective, you will need to restart the PlanetPress Messenger service. This can be done via the PlanetPress Workflow Service Console. Activate a printer The Activate a Printer dialog lists the existing activated printers on the system and lets you add new activations. Note Activating a printer is required when you have a PlanetPress Suite Printer License.
The following buttons are available in this dialog: l Add: Brings up the Printer Activation dialog. This dialog lets you enter the information for the printer (see previous section), then click OK to save the new activation. l Delete: Removes the currently selected activation from the list. l Web Activation: Click to access the online activation manager on our website. l OK: Save changes and exit. l Cancel: Exit without saving changes.
Note MySQL, using ODBC 5.0, must be set to use a client-side cursor. Microsoft Access will always work better when using a Server-Side cursor. l l Expect record set: Check if you are expecting a result from the database after executing the SQL query. If the query is expecting a record set in return and does not return one, the task will trigger an error. Test SQL button: Verify the SQL statement's validity.
keys cannot be removed or edited. l l l l DateC is the creation date of the key set. l DateM is the date at which the key set was last modified. Delete Group: Click to delete the currently selected group. Warning: This action cannot be undone. Add Key: Click to add a key to the currently selected group. Enter a key name and click OK. If adding a key to a group with existing data, the key will be empty for all existing key groups. Delete Key: Click to remove the currently selected key in the group.
l l l Clear All Data: Click to delete every key set of every group in the Repository. Warning: This action deletes all your data and cannot be undone. Clear Repository: Click to delete every group in the repository, including all their data. Warning: This action deletes all your data and cannot be undone. Show/Hide System Keys: Click to show or hide the ID, DateC (creation date) and DateM (modification date) keys.
l To add a key set, press Insert. The Add Key Set dialog will appear. Use the arrow buttons to browse through the keys in the key set and add values to them. This dialog has a button at the bottom to add another key set. Navigating with the keyboard Though of course the mouse is the easiest way to navigate through the Data Repository, the keyboard can be used as well. l Press Tab to switch between the Repository Structure, Group Key Sets, Lookup Function Syntax and the Close and Help buttons.
l l Right-click a task property that may contain variables (recognizable by the color of its field label, which is maroon by default) and choose one of the Get Data ... or Get Metadata ... options. Debug your configuration and step through it until the option Debug > View Metadata gets enabled. This happens when the Metadata file has been created by a task in the process.
The Data Selector is essentially the same as the one used in PlanetPress Design. The File Viewer is like a Data Selector without any data related options, such as emulation settings. It is displayed when doing a data selection from the Generic Splitter task (see "Generic Splitter" on page 482) with the Use Emulation option unchecked. The only data formatting codes to which the File Viewer responds are line breaks.
PDF Emulation l l l If you use a PDF emulation, the Data pane displays the data as you would see it in any PDF reader. A new zoom drop-down list is displayed to let you set the zoom in percentage or fit the PDF to the window or the width of the window. A new status bar, displaying the (Left, Top) and (Right, Bottom) coordinate pairs, is shown under the Data pane. XML Emulation l XML data is represented in a tree structure which corresponds to the data in the XML file.
on page 58). This expression is editable, which allows you to customize the string returned by the Metadata selector. Tip The wildcard parameter '?' indicates that the function operates on all nodes (not just one) of a given level; see "Wild card parameter "?"" on page 55. The Enable search on multiple levels option is available when a Metadata is selected under Production information or User defined information. If it is not selected, the option flag includes NoCascade (+2).
Data Selector display preferences The Data Selector Preferences are accessible through the Selector Options tab in the Data tab of the Data Selector. It controls how text-based data files (such as Line Printer, ASCII and Channel Skip) are displayed in the data selector.
1. In the Data Selector, click the Selector Options tab. 2. Change the options that modify the appearance and behavior of the Data pane: l l l l l l l View size: Use to adjust the size of each cell in the Data Pane, and the amount of visible data that is visible. Show used cells: Select this to display in green all cells that contain data.
Font To set the font the Data Selector uses for all emulations except XML and PDF: 1. In the Data Selector, click the Selector Options tab. 2. Click Select Font. 3. In the Font dialog box, set the font you want PlanetPress Workflow to use to display the sample data file in the Data Pane. l Font: Select the font you want to use to display the sample data file in the Data Pane. l Font style: Select a weight for the font. l Size: Select the point size for the font.
The PDF Viewer To open the PDF Viewer: In the Documents section of the Configuration Components pane, expand a document present in the list. Then, right-click on the document's Preview, and click Open in PDF Viewer.
The PDF Viewer is accessible through one of the following methods: l l l In the Documents section of the Configuration Components pane, expand a document present in the list. Then, right-click on the document's Preview, and click Open in PDF Viewer. Click View as PDF in the Debug toolbar. This will show the current data file in the viewer (assuming it is a PDF). If the viewer is opened during debugging, the current state of the PDF will be displayed (instead of the original data file).
l l l l l l l Printer Password: If the printer requires a password, enter it here. Max form cache: Set the size, in bytes, of the PostScript printer form cache. This sets the cache size for all documents that execute on the printer. You base the setting for this option on the number of images in your documents, their sizes, and how frequently each image repeats in a document.
Print Status Page The Print Status Page option sends a command to print information to the selected printer(s), notably: l The serial number and the full version number of the copy of Workflow making the request. l Printer information (printer name, firmware version, etc.). l Information on the current job (paper type, paper tray used, etc.). l Information on the installed devices (printer hard disk, flash drive, etc.). l Memory size information.
Send to File If the Send to File option is checked, a prompt for each of the selected Printer Utilities options will appear in Workflow so the PostScript commands can be saved to disk. This makes it possible to send the commands to the printer at another time and independent from Workflow. Process properties To have access to the properties of a process or subprocess: l Right-click on the process in the Configuration Components pane. l Select Properties.
again once it has completed itself and replicates again as necessary, until all files have been processed. l l l l l l Max percentage of threading (%): Determines how many processes you may have running at the same time. This is a percentage of the maximum number of threads specified in the "Messenger plugin preferences" on page 810. For example if the maximum number of threads is 10 and you specify 50% here, a maximum of 5 replications will occur (the original process + 4 copies).
blocks (4 blocks per hour times 24 hours). If you select 24:00, each segment will represent an entire day. l l Poll once per activity period: Select to perform this process’ initial input task no more than once for each set of contiguous blocks (blocks that are on the top of one another). Choosing this option overrides the polling interval option. By default since the Time Grid blocks are divided by hours, this option will make your polling happen once every hour.
l Click on any block to select / deselect it. l Click and drag from one block to another to toggle all blocks between the two. l Shift-click on any block to toggle all blocks from the top-left corner of the grid to the block you click.
l l l To select all of the time segments for a given day or date, click the day or date on the top grid ruler. To deselect all of the time segments for a given day or date, CTRL+click the day or date on the top grid ruler. To select all the days or dates for a given time segment, click the time segment on the left grid ruler. To deselect all the days or dates for a given time segment, CTRL+click the time segment on the left grid ruler.
On Error Tab A process’s On Error tab specifies the default values for error handling of all of the tasks in that process. When a task has its own error handling settings, those settings overwrite the process's default error handling settings. The Set All Tasks button resets the On Error properties of all the tasks included in the current process to the On Error properties of the process itself.
l IS EQUAL TO OR LESS THAN (<=) l IS CONTAINED IN l IS NOT CONTAINED IN l CONTAINS l IS GREATER THAN l IS LOWER THAN l STARTS WITH l ENDS WITH l VALUE CHANGED Note When "VALUE CHANGED" is selected in the condition, the second parsed field is not considered. Expressions The first expression can either be a custom list or a parsable edit field. The second expression is always a parsable edit field.
l The following rule: (GetMeta(SelectedIndexInDocument[0], 11, Job.Group[?].Document [?].Datapage[?]) Equal 0 loops through all datapages in a job, comparing their index in the document to a value. Index/Count values When using Index/Count values in a rule, please note that these values are zero-based: the first element in any collection has an index of 0 and the last element's index corresponds to the collection's length minus 1.
3. Define condition B. 4. Select condition B and choose Add Sub Condition. This will indent condition B and allow to define the condition C. Specify the logical operator OR. 5. Define condition C. 6. Right click on the first AND operator (the one right after condition A) and choose Add Condition. Specify the logical operator AND. This will create a condition at the same level as A. 7. Define condition D.
l l l l Most tasks have the General tab which lets you configure the main task properties for that specific task. All tasks except for the InputErrorBin, Run Script, Open XLST and Comment tasks have an On Error tab that lets you manage errors generated by the task. For a description of the options that it contains, see "Using the On Error tab" on page 100.
Virtual Drive Manager When you use the "Send Images to Printer" on page 461 Action task in a given process, you have the option of, at the same time, sending the images to the virtual drive (a local storage folder used by PlanetPress Suite applications) of any computer included in your network. You need to do this, for instance, if you plan to run PlanetPress Suite documents that contain dynamic images on those computers (using the Optimized PostScript Stream option).
Set the PlanetPress Workflow applications permissions as required: l l Local System account: Select to run all the PlanetPress Workflow Services (including PlanetPress Workflow, PlanetPress Fax, and PlanetPress Image) under the Local System account. The Local System account is distinct from the Administrator account. It requires no user name or password, and its privileges may exceed those of the user currently logged in.
Image on the same computer after performing this procedure, you will have to perform it once again, so as to choose the same account for all the installed applications. The Debug Information pane The Debug Information pane displays the current values of variables and other information useful in debugging processes (see "Debugging and error handling" on page 99).
selected expression. l Clear Expression List: Removes all expressions. Warning Deleting an expression or clearing the expression list cannot be undone! The Message Area Pane The Messages area is used in Debug mode to indicate the status of your PlanetPress Workflow process as the sample data file is processed and used to generate output. When your PlanetPress Workflow runs in Debug mode, the Messages area displays useful processing and error information.
l l Right-click anywhere in the Message Area and select Clear Messages to clear the contents of the Message Area. Right-click anywhere in the Message Area and select Save to File to display a dialog box that lets you save a copy of the Message Area content to a text file. The Message Area will only display information while running in Debug mode.
included in the group. 2. In the Object Inspector, click an editable property. 3. Depending on the values that can be entered for the selected property, edit the value by typing one or by selecting a new one from the drop-down list. Note If you select multiple objects in the Configuration Components window, some properties that are shared between those objects can be changed in the Object Inspector. Changing a property changes it for all the selected objects.
l Data splitters; see "Data splitters" on page 476. l Process logic; see "Process logic tasks" on page 496. l Connectors; see "Connector tasks" on page 513. l PlanetPress Capture; see "PlanetPress Capture" on page 740. l Metadata related; see "Metadata tasks" on page 582. l OL Connect Send; see "OL Connect Send" on page 771. l OL Connect; see "OL Connect tasks" on page 613. l Document Management; see "Document Management tasks" on page 688. l Outputs; see "Output tasks" on page 667.
l Move plugins from one custom category to another (that you cannot move default plugins from the default categories, you can only copy them) l Copy plugins from one custom category to another by holding the CTRL key. l Delete plugins from any custom category by using the Delete key. l Revert to the default Plug-in Bar by selecting Reset to default. Importing a plugin 1. Click on the popup control ( ). 2. Click on Import Plugin. 3. Browse to the location of the plugin DLL file or PKK file. 4.
l "Cutting, copying and pasting tasks and branches" below l "Disabling tasks and branches" on page 910 l "Editing a task" on page 336 l "Moving a task or branch using drag-and-drop" on page 911 l "Replacing tasks, conditions or branches" on page 913 l "Removing tasks or branches" on page 912 In the Process area you can also: l "Undo a command" on page 915 l "Redo a command" on page 912 l "Highlight a task or branch" on page 910 l "Collapse and expand branches and conditions" on page 914
1. In PlanetPress Workflow Process area, select the task or branch you want to copy and paste. 2. From the Home tab in the Ribbon, choose Copy (or right-click and select Copy from the drop-down menu). 3. To paste the task or branch to a different process, select that process. 4. Select the task or branch crossing above which you want the task or branch to be pasted. 5. From the Home tab in the Ribbon, choose Paste (or right-click and select Paste from the drop-down menu).
Copying the On Error Properties of a task or branch Instead of pasting all properties, you can paste only the properties of the On Error tab of any task or branch on another one: 1. Copy or cut a task or branch from which you want the On Error properties. 2. Select the task or branch where you want to paste the On Error properties. 3. From the Home tab in the Ribbon, choose Paste On Error (or right-click and select Paste On Error from the drop-down menu).
l l When a task is disabled, it is not executed when the process is run in Debug mode (see "Debugging your PlanetPress Workflow process" on page 107) or by the PlanetPress Workflow Service. When a branch is disabled, the whole branch including the tasks inside that branch is ignored and not executed. In the case of conditional branches, this means that the tasks appearing on the True side are not executed. A task, branch or condition that was previously disabled out can be re-enabled at any time.
1. In the PlanetPress Workflow Process area, click the icon of the task or branch you want to move. 2. While holding down the mouse button, drag the icon task or branch over another task or branch. 3. Release the mouse button to drop the dragged item. The dropped task or branch is moved above the item over which it was dropped. When you move a branch, all its tasks are also moved. When you move a conditional branch, all the tasks appearing on the True side of the condition are also moved.
l l l Click on the task or branch you want to delete, go to the Home tab of PlanetPress Workflow Ribbon and click on the Delete button in the Clipboard group. Click on the task or branch you want to delete, and press the Delete (or "Del") key on your keyboard. Right-click on the task or branch you want to delete, and select Delete from the menu. When you remove a branch, all the tasks located in that branch are also deleted. When you delete a task, only that task is deleted.
Warning When you replace a task, you lose all the properties you set in this task. Resize the rows and columns of the Process area The rows and columns of PlanetPress Workflow Process area in which tasks are located can be resized to better visualize the organization of your process. To resize rows and columns of the PlanetPress Workflow Tools Process area: 1. In the PlanetPress Workflow Tools Process area, place your cursor over the separator line dividing each section of row or column rulers. 2.
l l From the View tab in the Ribbon select Collapse or Expand. Press the + key on the numeric keypad to expand the Branch or Condition, or the key to collapse it. To collapse or expand all Branches and Conditions: l l Right-click the icon of a Branch or Condition or the right corner of its line, and select Collapse all or Expand all. From the View tab in the Ribbon, select Collapse all or Expand all.
Adding buttons To add a new button to the Quick Access Toolbar: 1. Locate the button you want to add in one of the tabs of the Ribbon. 2. Right-click on the button. 3. Select Add to Quick Access toolbar. Note The Quick Access Toolbar buttons cannot be moved or reordered. If you wish to reorder them, you will need to remove all the buttons and re-add them in the desired order. Removing buttons To remove a button from the Quick Access Toolbar: 1.
commands that are frequently used and convenient to keep close at hand. You can minimize the Ribbon, and choose the position of the Quick Access Toolbar, as well as the commands it displays. l You can minimize the Ribbon by right-clicking on it and selecting Minimize the Ribbon. l You can also customize the Ribbon's color scheme in the Preferences window. The PlanetPress Workflow Ribbon has five tabs: the Home tab, the View tab, the Debug tab, the Tools tab and the Help tab.
Child/Go to Parent to move around a given process logical nodes (branches or conditions) and a Collapse/Expand, Collapse All and Expand all to collapse or expand branches and conditions in a process. l l The Debug tab includes the Data, Debug and Debug Messages groups. l l l l The Show/Hide group contains four controls to display or hide any of the four panes; the Configuration Components pane, the Object Inspector pane, the Message pane, the Debug Info pane and the Plug-in Bar.
l l l l The Document Manager button opens the " PlanetPress Document Manager" on page 799. The Pen Manager button opens the "PlanetPress Capture Pen Management Tool" on page 803. The Test Page group: l l l The Service Console button opens the "The PlanetPress Workflow Service Console" on the next page, allowing to monitor real-time information on the configuration execution.
changed in the Comments tab. The PlanetPress Workflow Service Console The PlanetPress Workflow Service Console is a centralized service console and log viewer in one. You can use it to individually start and stop PlanetPress Workflow services, as well as to view current and past log files for each service. Note The Service Console has changed greatly since version 7.4. If you are still using an older version of PlanetPress, please see the user manual for your version instead.
To pause a service temporarily: 1. Right-click on the running service. 2. Click on Active to remove the checkmark. If the service was currently processing a file, the service will wait for this action to complete before pausing. Once paused, the service is still "started" but will wait until it is activated again before processing jobs. This is very useful if you want to receive jobs from external services (such as with the LPD Server) but not process them right away. To kill (force quit) a service: 1.
1. In the File menu, click on Open. 2. Browse to the location of the log file you want to open 3. Click on the log file and click Open. The log file is added, by name, at the end of the list of PlanetPress Workflow services. Clicking on it opens the log file in the viewer. Right-clicking on the file brings a menu from which the log file can be refreshed, or removed from the list. The log viewer for existing log files does not refresh automatically since log files for older days do not generally change.
Knowledge Base You can find extra information in Connect Knowledge Bases which complement the information contained in this manual.
Legal Notices and Acknowledgments PlanetPress Workflow, Copyright © 2019, Objectif Lune Incorporated. All rights reserved. The license agreements for the associated open source third party components can be found in the following installation folder: C:\Program Files\Objectif Lune\OL Connect\Legal Notices This application uses the following third party components: l l l l l l l l Adobe PDF Library which is either a registered trademark or trademark of Adobe Systems Incorporated in the United States
l l l l l l l l l l l l IcoMoon. Connect uses unmodified icons from IcoMoon (https://icomoon.io/#iconsicomoon) which have been made available under the Creative Commons By 4.0 license (https://creativecommons.org/licenses/by/4.0). ICU4J 4.4.2 Copyright © 1995-2013 International Business Machines Corporation and others. All rights reserved. J2V8 which is distributed under the terms of the Eclipse Public License (EPL) Version 1.0.
l l l l l l l l l Mchange Commons Java which is licensed under the terms of the Lesser General Public License (LGPL) Version 2.1. The source code can be obtained from the following location: https://mvnrepository.com/artifact/com.mchange/mchange-commons-java Objectweb ASM, Copyright © 2000-2011 INRIA, France Telecom. All rights reserved. Polyfills which is licensed under the Unlicense license. The source code can be obtained from the following location: https://github.com/inexorabletash/polyfill.
l l l XULRunner which is distributed under the terms of the Mozilla Public License Version 2.0. The source code for this can be obtained from the following location: http://ftp.mozilla.org/pub/mozilla.org/xulrunner/releases/latest/source/ zziplib which is licensed under the terms of the Mozilla Public License (MPL) Version 1.1. The source code for this can be obtained from the following location: http://sourceforge.
l Apache Felix and dependencies l Apache Geronimo l Apache HttpClient Mime l Apache POI l Apache ServiceMix l Apache Xerces2 Java Parser l Apache XML Graphics l Apache XML Beans l Barcode4j l Google Collections l Google GSON l Hibernate Validator l Jackson JSON processor l Jetty l Liquibase l LMAX Disruptor l Objenesis l OpenCSV l OPS4J Pax Web l org.json.
This product includes software developed by the Visigoth Software Society (http://www.visigoths.org/). This includes the following subcomponents that are licensed by the Apache Software Foundation under the Apache License, Version 2.0: l freemarker/ext/jsp/web-app_2_2.dtd l freemarker/ext/jsp/web-app_2_3.dtd l freemarker/ext/jsp/web-app_2_4.xsd l freemarker/ext/jsp/web-app_2_5.xsd l freemarker/ext/jsp/web-jsptaglibrary_1_1.dtd l freemarker/ext/jsp/web-jsptaglibrary_1_2.
l This product includes software developed by JSON.org (http://www.json.org/java/index.html). Copyright Information Copyright © 1994-2020 Objectif Lune Inc. All Rights Reserved.