Install Transflo DMS Rendition Print Service
TRANSFLO® Rendition Print Service is a store-and-forward system that receives input spool files as ASCii text or Extensible Markup Language (XML). It identifies their contents, moves the input spool files into a processing archive, and executes a client-specific Visual Basic (VB) script file to process the content. By deferring customer-specific processing to a VB script file, the Rendition Print Service remains largely generic; therefore, it can be adapted to a large number of processing scenarios.
-
As input, Rendition Print can accept text files with and without definitive line numbers as well as XML files.
-
Text files with line numbers are processed using the literal translation of the line numbers.
-
Files with no line numbers are treated internally as if they had line numbers.
-
XML files are processed by node using the Microsoft XML Document Object Model (DOM).
-
The system uses the Windows Event Log and Text Based System Logs to record processing activities, warnings, and failures for system and process event logging.
-
If Rendition Print Service should be able to write files to network-shared folders, it should be set up for domain user login.

-
Processor: 2 x 2.5Ghz with Dual Core
-
RAM: 3GB
-
Disk Space: 500GB
-
Screen Resolution: 1024x768

-
Processor: 2 x 3.0Ghz with Dual Core
-
RAM: 4GB
-
Disk Space: 750GB
-
Screen Resolution: 1024x768

-
Microsoft Windows® 2003 Server R2, SP2
-
Microsoft Windows® Server 2008 (x86 and x64)

-
Microsoft SQL Server 2005 SP2
-
Microsoft SQL Server 2008 (x86 and x64)
Note: The hardware requirements are based on a single system with approximately 10,000 or less images per day.
Please contact Pegasus TransTech Professional Services for requirements for systems processing a higher volume.

The internal processing components of the Rendition Print Service are the Input Manager, the Process Manager, the Invoice Process Component, and the Cleanup Manager.
-
The Input and Process Managers comprise the bulk of the file processing for the system.
-
The Cleanup Manager handles all of the post- processing functions for the system such as file system and database record cleanup.
All of the Rendition Print Service management components operate on a polling or periodic timer basis. They wake up at predetermined intervals, perform their functions, and then suspend themselves until their respective timers wake them up to repeat the cycle. The frequency with which these processes operate can be set independently for each manager process in the Rendition Print Service Administrator window.
The Rendition Print Server Administrator window is split into two panes. The left-hand pane of the window is called the “Object View” pane and the right-hand side is called the “Object Contents” pane.
-
The Object View pane is used to navigate the hierarchy of objects in the system.
-
All of the objects that belong to a parent object in the left-hand side of the window are displayed in the Object Contents pane.

On a periodic basis determined by its polling interval, the Input Manager iterates through all of the records in the TESClient table to determine the disk file directories to scan for client input files. Each client directory is scanned for the presence of files.
When a file is found, the Input Manager examines the file extension characters. The extension characters are used to determine the input file structure or file type and whether the file type is defined for a particular client.
The Input Manager then moves the file into the client archive directory, inserts a record into the TESInputFile table, and sets that record with the appropriate status.
-
A status of Ready on a TESInputFile record indicates a recognized file type.
-
A status of Error indicates that the file structure is either corrupt or in the wrong format. A client file type is recognizable only if it is defined in the TESFileStructure table.
-
Recognized file types are moved to a daily processing sub-folder located in the client’s Archive directory. If a zip file contains a recognized file type, the zip file is moved to the Archive directory and the recognized file is extracted.
Only files with an enabled file structure that is marked with a “Ready” status in the TESInputFile table are processed.
The Input Manager suspends itself when it has completed a scan through all client Input File directories.
When the Input Manager’s sleep period expires, the entire file processing function repeats itself.

The Process Manager manages Invoice Process Components (IPCs), which encapsulate the logic necessary to identify and process individual documents or invoices within an input file.
The Process Manager scans the TESInputFile table for the input file records that have a status of “READY”, and determines if the client that is associated with the file is currently eligible for processing.
If a client is eligible for processing, the Process Manager marks the Input File’s record as “PROCESSING”, adds the client to its active processing list, and launches an IPC to process the file contents.
In addition, the Process Manager suspends itself when it has completed a scan through all of the Input File records that it retrieved previously, and waits for its “sleep” timer to expire to resume processing. Currently, the Process Manager allows each client to have one file undergoing processing at a time.
If there are fifty clients that have files available for processing, there can be fifty Invoice Process Components (one per client) running concurrently.
If one client has files of multiple structure types, Process Manager will execute those files in the order in which they were created (alphabetical order by file extension).

The Invoice Process Component (IPC) performs the bulk of the file processing. By design, the IPC can handle any recognized file type provided that the input file content conforms to the layout described in the File Structure record that defines that file type to the system.
The IPC invoice-parsing process facilitates the handling of spool files which use absolute line numbers but do not contain a leading zero. The Invoice Parsing process treats a line number as an absolute if the current line number is greater than the previous line number. Absolute line numbers are left-justified, while relative line numbers are right- justified.
Currently input files are in either plain ASCii text or XML format. These input files contain the raw data that comprise the documents. Typically, these documents are client invoices but they could also be packing slips or bills of lading.
-
ASCII text files contain data for one or more documents as well as line control and document delimiter information.
The IPC parser uses the line control and document delimiter information to determine where in the file a document starts and ends, and where key identification and sorting elements can be found.
-
XML-formatted files typically describe documents to be parsed according to a document schema.
The IPC parser relies upon the Microsoft XML Core Services (MSXML) system components, formerly known as the Microsoft XML Parser, to load and validate the XML file’s contents.
Regardless of which format is used, the IPC always follows the same processing steps:
-
Parse the file into documents, logging each document into the database as it is parsed.
-
Once all documents are parsed, iterate through the document records and execute the template script for each document record that was created.
-
Internally, a Template Controlobject actually iterates through the TESInvoice table records, retrieving documents generated by the current file as well as any documents of the same file type with a status of REDO (if the configured redo interval has passed).
-
The Template Control object launches a script control object with the file type’s assigned template file to perform whatever custom processing is required.
-
Once the IPC has finished processing all of the documents in a given input file, the IPC notifies the Process Manager that it has completed its task. That notification causes the Process Manager to update its eligible client list and performs cleanup tasks freeing up the resources used by the IPC.
Note: If the you expect your template to work for more than 5 minutes (the default IPC timeout) then you must run the following from a command line:
/IpcTimeOut=[SSS]
[SSS] is the number of seconds of the timeout.
You can also disable the time out by running the following from the command line:
//NoIPCTimeOut
To change the IPC timeout default you can edit the ImagePath value in the Windows® Registry Key:
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/services/ TRANSFLORenditionPrint
Examples
To disable the IPC timeout, edit the ImagePath value as follows:
"C:\Program Files (x86)\Pegasus TransTech\Rendition Print Service\Transflo.SvcHost.exe" /processname="C:\Program Files (x86)\Pegasus TransTech\Rendition Print Service\RPService.exe"/processargs="/process //NoIPCTimeout"
To change the IPC timeout to 10 minutes, edit the ImagePath value as follows:
"C:\Program Files (x86)\Pegasus TransTech\Rendition Print Service\Transflo.SvcHost.exe" /processname="C:\Program Files (x86)\Pegasus TransTech\Rendition Print Service\RPService.exe"/processargs="/process /IPCTimeout=600"
For more information, see High Volume Processing Considerations.
The Invoice Process Component Template Helper is used to ensure that the Report.txt file for a client’s file structure is not overwritten every time an invoice is processed.
In order to achieve this, the Report.txt file name is annotated with the spool file extension to ensure that the different file structures each have their own Report.txt file.
For example, for a file type of SPL, the Report.txt file name would be Report_SPL.txt.
For a file type of SP1, the Report.txt file will have a file name of “Report_SP1.txt”.
The Report.txt file is stored in the daily archive, where the input file being processed is located.
This ensures that the Report.txt files for each day do not overwrite each other.
The Redo.txt file is populated when an invoice within a spool file has its status set to "Redo" by the system.
Note: If a user manually sets the status to “Redo,” the text file is not updated.
If the wild card character (*) is used to specify the spool file extension, the report name would be Report_All.txt.

The Cleanup Manager operates on its own polling interval.
It will remove the input file, the corresponding input file database record, and all document database records once the file has been processed successfully.
The input file’s status is set to “SUCCESSFUL” once all of the included documents contained in the file are marked with a status of “CLEANUP”.
The Cleanup Manager will remove the input files and database records once a file record’s time stamp indicates that it has aged past the number of days to keep limit, which is configured in each client’s properties.
Additionally, the Cleanup Manager executes the Log File Janitor object’s Cleanup method.
The Cleanup method of the Log File Janitor removes any log files belonging to the Input, Process, and Print managers that have also aged beyond the number of days, to keep limit set in the system properties.
The Cleanup Manager removes all Report.txt files when the spool files are deleted from the archive directory, allowing the service to empty the “cleaned up” directory of files.
Note: The Cleanup Manager will not remove database records, system files, or directories if files or records exist from an older day or date.
The cleanup sequence is ordered by date.

Rendition Print Service administration is accomplished through a separate executable, RPAdmin.exe, which provides access to the full range of administrative tasks, including defining service setup values and manipulating the status of input files and their enclosed documents. Setup of the service consists of configuring a database connection to an installed database server, configuring the system root directories, and defining clients and client file structures.
The Rendition Print Service database consists of seven (7) tables.
-
Three of the tables are for system setup data. These are the System Configuration, Client Configuration, and File Structure Configuration tables.
-
Two of the tables, Input File and Invoice, are for transactional data that is generated when input files are received and processed.
-
One table, TableId, is used to hold the seed values used to generate primary keys for tables that do not support an auto-numbering feature, when a new record is inserted into the table.
-
Another table, TES Expression List, contains the valid regular expressions for Rendition Print Service.
The Rendition Print Service requires the admin user to, at minimum, establish a database connection, define a System Admin record, define at least one Client Record, and define at least one File Structure record for that client.
-
The “System Admin” record includes information on the root file directories. Examples of this information include the location where customer and system directories will be created; polling intervals for the various manager components; the maximum number of lines per batch file; and process logging options.
-
The system also requires a TRANSFLO® server queue to be defined. This is where the process files will be inserted for the TRANSFLO® server database.
-
The Client Admin record identifies a client to the system by allowing the user to define a four character moniker, which will in turn be used by the system to create unique sub-folders under the Archive, Input / Output Files, Images, and Log Files system directories. This allows the input and output files for each client to be moved and processed in an entirely compartmentalized fashion. Additionally, this is used as a prefix for process-generated data files.
-
The File Structure records allow the user to identify the multiple file types for a given client. Each “File Structure” record defines a file extension that uniquely identifies an input file type for a client and defines the various attributes of the file’s contents that are used in processing the file’s raw data, such as ID, sort fields, and page continuation. The file extension is limited to the number of characters allowed by the operating system for the entire file name. For example, if the allowed number is 10 characters per file name and the file name without the extension is “12345,” the extension is limited to five characters, e.g., “12345.abcde”.
To set up Rendition Print, see Configure Transflo DMS Rendition Print Service.