Back to home Connect 2018.2 new features summary PlanetPress 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 PlanetPress 2018.2 go over the Release Notes here Designer 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. 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. 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. 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. DataMapper 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: =./address[@state="{automation.jobInfo.JobInfo9}"] which would dynamically get converted to something like: ./address[@state="California"] 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. Miscellaneous 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. 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 ${segment.metadata.ItemSize} in the output file mask to automatically name these files appropriately. Comingling is now a standard feature PlanetPress Connect had a separately licensed option: Comingling. This meant that with PlanetPress Connect, you could only combine content from different templates into one job, if you had bought this option. However, because we didn’t want customers to get a “comingling license error” with every little change to a template, the way to check this was very complex, and every now and then some customer would still get an error, even though they were not really combining content from different templates. To make sure that unjustified license errors can never occur anymore, we decided to improve the value of the standard PlanetPress Connect license, and add comingling as a standard feature. Output Creation Impositioning 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. Usability has greatly improved because it now also shows the result when the imposition does not fit the sheet. 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. 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 choice. 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 available. 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. Workflow 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. Miscellaneous 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. 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 Cancel reply Your email address will not be published. Required fields are marked *Cancel Δ