Objectif Lune joins Upland Software.Learn more >

Back to home

Connect 2018.2 new features summary

PReS Connect 2018.2 is the second release for 2018 and whilst it includes hundreds of bug fixes and improvements
this article highlights some of the new features  available. For a detailed overview of the new features and enhancements in PReS Connect 2018.2 go over the Release Notes here


ERP Template wizards – just add water
The collection of template wizards has been elaborated with a new category: ERP templates. The wizard allows
you to create 7 different document types with a uniform style, and already has a datamodel with appropriate
scripting embedded. Basically, all you need to do, is use the wizard to customize company information, logo, and
color, and then create a data mapping that fits the template’s model.

The 7 document types are the ones often used in ERP environments: Sales Invoice, Sales Packing Slip, Sales
Confirmation, Purchase Order, Project Invoice, Collection Letter, and Free Text Invoice.

The current wizard is named after the style it uses: “Microperspective”. Other wizards with different styles may
follow in future versions.

ERP Template Wizard

Work with JSON sample data
Over the past releases options to use JSON as a data source were added for Content Creation steps in Workflow.
This simplified the Workflows processes for one off documents (including rendering of webpages and emails).
One could simply construct a JSON structure matching the data model of the template (for example in a Run
Script step) and subsequently pass this to the Content Creation step.

Debugging or designing your template with this data was a tedious process as there isn’t a native way to import
JSON data. In order to work with this data one had to convert it to XML first (for example on a branch in your
Workflow process) and create an XML Data Mapper config.

2018.2 introduces options to load JSON data straight into the Data Model. A new JSON Sample Data… option is
added to the Add Data item in the File menu and a JSON Sample Data… icon is added to the toolbar of the Data
Model view. Invoking this option shows a wizard allowing you to select a JSON file on disk or paste JSON data
copied from a Workflow variable. When loading data from disk the contents of the file are placed in the JSON
editor. In case JSON sample data is active invoking the JSON Sample Data… option will show the current data
allowing you to edit its structure and values.

Work With JSON

Post Pagination scripts
The first thing you will notice when looking at the Scripts panel is the separation of Control and User scripts
using dedicated folders. These script types are now grouped to emphasize their execution order. E.g. Control
scripts are executed before the merge process and therefore run before the User scripts.

Secondly a new script type is introduce: Post Pagination scripts. As the name implies these scripts are executed
after the personalization and pagination process. The API for these scripts contains commands to fetch
information about the page elements reside on and their dimensions. The page number information can be used
to generate a cross section Table Of Contents. See the Creating a Table of Contents using a Post Pagination script
article for the recipe.

Sass CSS preprocessor
Maintenance of CSS styles for templates requiring many different style rules can become a tedious undertaking.
Stylesheets files are getting larger, more complex and therefore harder to maintain. Some common challenges:
How to group/organize rules that belong together (e.g. styles for an address block, footer or dynamic table)?
How to update a color value or font family across multiple rules and even across stylesheet files. A CSS
preprocessor solves these problems and helps you write maintainable code.


Connect Designer 2018.2 introduces Sass CSS preprocessor functionality. Sass (Syntactically Awesome Style Sheets) is an extension of CSS that enables you touse things like variables, nested rules, inline imports and more. In Connect Designer options are added to the Stylesheets folder located in the Resources panel to create and compile Sass files (.scss file written using Sass 3 syntax). For more information on the Sass language see: www.sass-lang.com or check the Sassy CSS article.

Dynamic Sheet Configuration settings
A common requirement for dynamic print templates is the ability to switch between simplex and duplex.
Typically this is solved by duplicating a print section, subsequently enable Duplex in the Sheet Configuration dialog and switch between the simplex and duplex section by creating a Control Script (or use the Conditional
Print Section wizard). In version 2018.2 new scripting commands are added to dynamically set Sheet
Configuration options from within a Control Script. This allows you to set the Duplex mode or for example apply
different the Master Pages based on data.

The following Control Script sample enables the Duplex mode for Section 1:

let section = merge.template.contexts.PRINT.sections["Section 1"];
section.sheetConfig.duplex = true;

The snippet below sets the media and the master pages for the all sheet postions of Section 1:

let section = merge.template.contexts.PRINT.sections["Section 1"];
section.sheetConfig.positions.all.media = "My Media";
section.sheetConfig.positions.all.allowContent = AllowContent.ALL_SIDES;
section.sheetConfig.positions.all.masterFront = "My Master Page";
section.sheetConfig.positions.all.masterBack = null;


Misc enhancements to the Template Designer

  • Specify the Minimum number of pages for print sections.
  • Use control script to change the margins for sections and master pages.
  • Revamped Send to Workflow dialog and introduced a dedicated option to create a Package file.

Send To Workflow

  • An Overview Ruler is added to the right side of the Script editors. The ruler shows annotations
    concerning the entire script. These annotations are shown relative to their position in the script and do
    not move as the user scrolls the script source. There usually is a corresponding annotation on the vertical
    ruler when that portion of the script is visible.
  • Download Remote Resources (CSS stylesheets, JavaScript files, JSON and HTML snippets) to your
    template via the contextual menu of the Resources view. This allows you to keep a link to a centralized file
    but quickly download a copy to your template without having to copy and paste.
  • Export the Data Model in JSON format. Simplifies exchanging the Data Model and comes in handy when
    you want to print an overview of the fields.
  • Black in the output of Print Contexts can now be controlled better. By default, black will now be output as
    a CMYK color. In addition, black overprint can be set for small text. If you prefer your black to be in RGB,
    then you can either define a named color, or set your print context to output your black as RGB.



Dynamic SQL Queries
Custom SQL queries now support the use of dynamic elements which can be built using JavaScript syntax. This
allows the SQL query to use information passed on by Workflow so it can be customised the query dynamically.
For instance, the custom query could contain the following code:

=SELECT {automation.variables.FieldList} FROM {automation.jobInfo.JobInfo9}

which would dynamically get converted to something like:

SELECT id,name FROM MyTable

based on the values of a Workflow process variable named FieldList and of JobInfo(9).

Dynamic XPATH values
The Repeat Step, in XML mode, can now use dynamic XPATH syntax. This allows the Repeat step to loop through
a subset of the entire record without having to use conditions to determine whether each element meets a
specific condition. For instance, the XPATH statement for a Repeat step could contain something like:


which would dynamically get converted to something like:


based on the value of JobInfo(9).

Landscape pages

Landscape PDF pages are now handled correctly when processing a PDF file. The DataMapper displays the pages in a human-friendly way and allows you to select and extracts the data according to the orientation. This allows the DataMapper to process PDF’s that are either completely landscape or that contain a mix of portrait and landscape pages.


  • The default amount of memory allocated to each DM engine has been increased to improve both
    performance and memory management.
  • It is now possible to set the option to ignore empty lines in XLS/XLSX/CSV and DB data. This prevents the
    DataMapper from creating useless empty records.

Job Creation

Size Grouping
The ability to group documents by their size has been extended. Instead of just grouping documents by their
number of pages, the same can now be done with document sets and job segments. And instead of just using
the page count, it is now also possible to use the sheet count for the size of the documents, sets, or segments.
This now makes size grouping also useful for jobs that can contain both simplex and duplex content. And size
grouping can now be useful in combination with comingling when mail pieces can have multiple documents.
For those who don’t recall a “size grouping” feature, you are right; in previous versions this was referred to as
“page break grouping”. You can still find it in the same place: the bottom half of the grouping page in the Job
Creation preset wizard.

Job Creation

The settings above groups documents into document sets by their customer id. Size grouping then creates 3 jobs
segments: the first with sets of only 1 sheet, the second with sets of 2 to 5 sheets, and a third with anything of 6
sheets or larger.
Tip: in Output Creation, you could create an output file per job segment, and use


in the output file mask to automatically name these files appropriately.


Output Creation

We have made a number of improvements to impositioning, both with usability, and by adding new features as
well. This has also caused the layout of the imposition wizard page to be completely redone. As part of this,
some options were also renamed to better reflect their meaning.

Output Creation

Usability has greatly improved because it now also shows the result when the imposition does not fit the sheet.


Sample Page

Sample page for imposition
The imposition settings are not always meant to work with just your current template. So we have added a
sample page setting that will be used for both the preview, and the validation of the settings. This sample page
now defaults to the size and orientation of the first section of a template, instead of its first media.

Stack by Column impositioning
Next to the existing cut and stack impositioning order, we have introduced an imposition order that is more
suited for continuous feed printing when the imposition has multiple rows. We call this new ordering “Stack by
Column”, and it is very suitable for roll fed label printing.

It works like this: instead of always positioning the subsequent page on the next sheet (until the stack depth is
reached), stack by column first goes to the next row down on the sheet, and then down in the stack. The effect is
that if all sheets are layed out top to bottom consecutively, the impositioned pages are ordered by column. If the
imposition has only 1 row, both methods are identical.


Reverse impositioning
In roll fed applications, reversing the imposition order can be very important, because, when done properly, this
causes the roll output by the printer to have the first page at the outside of the roll so it starts with that page.

Our existing option to reverse the order of impositioning is reversing the order of the resulting imposition sheets
by starting with the last side of the last sheet, and then going backwards. This effectively turns the stack up side
down. It also means that, in case of duplex impositioning, all back sides become front sides and vice versa.

To have an effective way of reversing a Stack by Column imposition that leaves the “by column” order in tact, but
that starts at the last pages in the job, we have added a new option to reverse the imposition, that basically
reverses the incoming sheet order before impositioning. The effect is that not only the order of the imposition
sheets reverse, but the order of the pages on the sheet also reverses.

To properly distinguish between these two ways of reversing, we have renamed our existing reverse to “Stack
upside down”, and our new way of reversing is called “Inverse page order”.


Rotate imposition
In addition to our existing options of having your imposition either upright or rotated 180 degrees upside down,
we can now also rotate your imposition by 90 or 270 degrees.


Metadata in AFP Output
We have added the ability to create metadata in AFP output in a more dynamic way. Connect already had the
ability to add metadata properties from Job Creation as TLE’s to the AFP output. However, this did not yet allow
users to create TLE’s for specific pages, or add TLE’s at the page level that would have different value for each
page. TLE’s are often used to mark the start of documents or mail pieces, to indicate media types, locations for
inserts (including the name of the insert), and other properties required for print production.
To accommodate for this, it is now possible to conditionally create both TLE’s and NOP’s in AFP output by using
inserts in custom printer definitions. In upcoming versions we plan to add user interface features for this in the
Output Preset wizard, in a similar way as we did for Dynamic Print Control for PostScript printers.
In addition to this, we have added an AFP Options page to the Output Preset wizard that will allow users to
control for which job elements page groups will be created in the AFP output. Before, Connect was always
creating page groups for every part of a job, which would lead to pages being nested in three levels of page
groups. Now users can choose to have just one level of page groups, or even no page groups at all.

AFP Metadata

To make sure that metadata properties from Job Creation do not interfere with dynamic TLE’s from the printer
definition inserts, this page also has a setting to turn off TLE creation for metadata properties.

PDF Font Creation
Connect tries to use simple fonts in its output, but dynamically switches to composite fonts when the number of
characters in a font grows too large. In a lot of cases this helps to keep output small. Over time, we have found a
number of cases where this dynamic way of font creation is causing viewing issues with certain viewers, even
though this method is standards compliant.

To accommodate for this, we have added an alternative font creation method that always creates CID fonts with
identity encoding. This can result in somewhat larger output files, but also gives better compatibility with
existing viewers. When generating PDF for non-Western languages, this new option may be the recommended

PDF Font

Font handling
When adding text as additional content from an Output Preset, TTC font files were not supported. TTC font files
are TrueType Collections, where a single file will hold multiple fonts. Since TTC fonts can be important for Asian
language fonts, we have added support for these font files.

Additional text was allowing users to select Bold and Italic for any font, even if the bold or italic version was not
present. We are now only showing the font variation options for a font, if the that font variation is actually

Improved stability
The engine for output creation (Weaver engine) has been overhauled to use a lot less memory, especially when
running for a long time. We had some cases where users had problems of this engine running out of memory,
and this is now far less likely to happen.

Print Manager

Automatically delete finished jobs
The Print Manager that comes with PReS Connect and PrintShop Mail Connect now has a setting to
automatically delete finished jobs when they are older than a configurable number of days. This is useful for
print operations that handle many jobs.


New HTTP Server Input
We have created a new HTTP Server input for Connect Workflow – named NodeJS Server Input, to differentiate
it from the current HTTP Server (which is still available). It is backward-compatible with the current HTTP Server
(except for PlanetPress Capture requests) and introduces several new enhancements, like the ability to serve
static resources from several folders and an option to present an authentication page to users trying to access
the server – a new set of preferences is available to configure its behaviour.

When any process starts with a NodeJS Input task, Workflow automatically launches the Node.JS server. 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.

Process Grouping and multiple Startup processes
Processes may now be grouped into an infinite number of sublevels, providing a much better way of classifying
and sorting related processes. Groups can be added to existing groups, moved from one group to another or
ungrouped within another group.

In addition, multiple startup processes can now be defined, allowing you to create startup processes that are
specific to certain projects (or groups, or subgroups) and allowing you to specify in which order the processes
should run at launch time. Together with the new multi-level grouping feature, this allows you to design full
projects that comprise related processes and that are initialised with their own specific startup process. With
this feature, you no longer have to modify an existing, tried and tested startup process when you introduce new
functionality that requires some level of initialisation; you can simply create a new, distinct startup process that
takes care of initialising values for the new set of processes.

Pre-validating Data
The Execute DataMapper task now has the option of only validating the data mapping with the data provided,
without actually extracting any data. When running with this option, the task returns a summary of the data
mapping job as well as a list of records that would generate an error, if any. Since no data is extracted, the
operation is very quick and may save you a huge amount of time by allowing you to check for errors prior to
running the actual job.

Improved logging
Logs have been improved, with the Task index of each task being displayed in a fixed location on each log entry.
This allows users to quickly spot to which task a log entry belongs, without having to step through all statements
in order to figure it out. In addition, it is now possible to set a process to create minimal logs, which instructs
Workflow to only log the start/end/duration for that specific process, while other processes keep logging the
standard information. Note that when an error is encountered in a process that is set to use minimal logs, then
the minimal log option is not applied and the entire process gets logged as usual, to allow you to retrace the
source of the problem.


  • The Update Data Records task now supports JSON data with detail tables. This allows the task to modify
    not only records, but also the information in any detail table for any record.
  • The Comment task’s Comment section can now be used as the description for the branch itself.

Connect Server

Engine Setup
Setting up the number of engines for Connect Server to launch, has been separated from the scheduling settings
that control how those engines are used to run tasks. This results in one single settings page to control how
many engines are launched of each type, and it removes some settings from the Scheduling preferences page.
The same separation has been made in the Designer prefererences.

Engine Pref

Automatic engine restarts
To safeguard server availability, it is recommended to restart the Connect engines periodically. Before, Connect
engines would restart every 8 hours by default, and they would all restart at once. Version 2018.1 added the ability to have engines restart in case of very bad memory usage as well. We have made several improvements to allow users more control over these engine restarts.

Rolling restart

Causes engines to restart one by one, instead of all at once. On systems with many engines, this reduces
the system load caused by restarts, and it increases availability.

Schedule restarts in quiet hours

Instead of restarting engines after a certain amount of time, they can now be restarted daily during a
preset period. This allows you to let engine restarts to happen only during outside of business hours, or
during the night.

Improvements for high workload situations
On busy systems, with many requests to Connect Server (for instance, hundreds of simultaneous PDF preview
requests), the internal communication between Connect Server and the engines can now be set to use a
different port from the primary connection port. This prevents the engines from being starved from connections
to the Connect Server if the external connections are not closed fast enough.

These settings are located on the new “Connections” page of the Connect Server Configuration. The “Security”
preferences page for the Connect Server connection is now a sub page of this new page.


Leave a Reply

Your email address will not be published. Required fields are marked *