Skip to main content

Transformation tasks

AlterDocumentContent - Create, embed, delete or update document content

Use this task to remove existing content of a processed document, add content to this document based on a dynamically resolved path, of even more.

Mandatory settings
KeyTypeDescription
Content pathPatternThe path of the content. Leave this value empty and check 'delete content' to delete the content. This value will be resolved by Fast2 prior to the task execution. Wildcard characters are supported.

Ex/ ${absolutePath}/myFile.txt
**/myFile.txt
${pattern}/*.txt

Optional settings
KeyTypeDescription
Check if file existsBooleanCheck if the content referenced by the path is existing and accessible. If not, an exception is thrown.
If a wildcard is used as content path, the new content path will be skipped if this option is disabled.
Files to excludeString listList here all patterns for files you wish to exclude. One line per match.

Ex/
**/*.xml
**/folder/to/exclude/
*.json to ignore all JSON files

Add content as annotationBooleanCheck this option to add the content as annotation for document. If disabled, the content will be added as regular content to the document.
Delete in-place contentBooleanOverride existing content with the new one, or remove the content attached to the document

AlterDocumentFolder - Change document folders classification

Optional settings
KeyTypeDescriptionDefault value
Clear existing foldersBooleanDelete all existing foldersfalse
Create foldersBooleanSet the permission to create new folderstrue
Append as child to existing folderBooleanAdd as a child of an already existing folder the new folderfalse
Target folder class namePatternThe symbolic name of your new folder, i.e. the path
Folder name to createPatternLeave empty to not create folder
Property mapString/Pattern map

Ex/ targetProperty = ${variableName}

AlterDocumentProperties - Alter multiple document properties

Dive into the punnet to go and modify one or more properties carried by the document

Mandatory settings
KeyTypeDescription
Property mapString/Pattern mapList of the properties to modify. One line per property

Ex/ targetProperty = documentStringGetter

AlterPunnetProperty - Create or update a punnet metadata

Dive at the punnet level to add (or udpate) one or more properties carried by the punnet itself

Mandatory settings
KeyTypeDescription
Source metadataPatternThis field will be resolved by Fast2 prior to the task execution
Optional settings
KeyTypeDescription
Target propertyStringName of the porperty to change. If not set or empty, Fast2 will skip the document

ApplyDroolsTask - Rules from Excel file

Apply functional and/or technical rules from an Excel file. Mainly used for mapping properties during complex migrations but can be used for simple data transformations.

Mandatory settings
KeyTypeDescription
Worksheets nameString listApply the content of the mentioned sheet. Take the first sheet if not set
Excel file pathStringPath to the Excel worksheet

Ex/ ../rules/example.xls

Optional settings
KeyTypeDescriptionDefault value
Static cacheBooleanUse a static cache for rules file. If false, the Excel file will be refreshed for each campaigntrue
worksheetString
Worksheets character encodingStringInform Fast2 of character encoding used by the worksheetCp1252

CSVKeyValueParser - CSV parser

Parse a CSV content and put parsed values as document data

Mandatory settings
KeyTypeDescription
Document Id property nameStringProperty name where the Id is based on
Optional settings
KeyTypeDescriptionDefault value
Regex to parse each lineStringThe regex used for parsing each document^\"?([^\"]*)\"?;\"?([^\"]*)\"?$

CSVQueryTask - CSV Mapping: fetch data from a CSV file

Fetch data from CSV using a key and and extra data from the CSV columns.

Optional settings
KeyTypeDescriptionDefault value
Data name to report resultsStringName of the property where the result status is stored inside the punnetCsvQueryTaskStatus
Check result unicityBooleanIf it's not, populate first found resultfalse
Definition of the CSV to readCsvDescriptor
Skip exceptionBooleanSilent fail instead of throwing exceptionsfalse

ContentURLResolver - Build absolute URL for content

Simple Content URL renaming task : if target property (a list of string) is set, try to find the first path in this list which exists, converting this path to a fully-defined path including intermediary paths, corresponding documentId, extension, .... Otherwise, use Content URL included in Punnet as a wildcarded path (e.g. C:/input//.xml), and resolve to a fully-defined path.

Mandatory settings
KeyTypeDescription
Source folderStringPath of the parent folder, which will be the common part for all target paths in target list
Optional settings
KeyTypeDescriptionDefault value
New mime typeStringNew mime type to set at the end of the new content path
Extension to useStringWildcards accepted*
Process annotation contentsBooleanIf annotations are asked to be migrated, you can filter here to process their content(s) or only their metadatafalse
Scan recursive contentBooleanOnly convert terminal contents and not container onesfalse
Mime type blacklistStringRestrict action on content with this mimetype
Supported mime-typesString listSpecify the list of all mime-types of documents which Fast2 will convert
List of paths to resolveString listRegex wildcards accepted
Throw conversion exceptionsBooleanIf Fast2 performs document conversion, it can either fail silently or pop an error when the action has not been properly completedtrue
Exception on multi-page contentBooleanAsk Fast2 to throw a task exception when running into multi-page contentsfalse
Mime-type : Check document before contentBooleanYou can assume the file extension is accurate, or ask Fast2 to check the content encoding to identify more precisely the document mime-type. By default, Fast2 will check at content levelfalse
findMimeTypeBoolean
Process all contentsBooleanFast2 will either only focus on the first encountered content, or process them alltrue

ConvertAndSaveIS - Convert FileNet Image Services annotations

This task is used to perform the IS annotation conversion and its save into a target referential

Mandatory settings
KeyTypeDescription
Annotation converterFileNetXFDFAnnotationConverterThe FileNet XFDF module used to convert the annotations
IS annotation parserParseISAnnotationSpecific module to parse the Image Services annotations
Optional settings
KeyTypeDescriptionDefault value
Status for all annotation convertedStringValue when all annotation have been converted2
Status for some annotations in exceptionStringValue when some annotation are in exception8
Property name resultStringKeep the conversion resultAnnotationConversionStatut
Skip conversion errorBooleanEither Fast2 will throw an exception if an error occured during the conversion, or it will skip to the next annotationfalse
Convert annotation to XFDFBooleanEither Fast2 converts during annotation process, or leave the annotation to its original formattrue
Annotation accessorAnnotationAccessorChoose annotation accessor to save annotations
Document layout DPIFloatSet here the layout DPI for the document72.0
Status for no-conversion annotationStringValue when no annotation has been converted9

ConvertDateProperties - Convert multiple document/folder date properties

Easily convert date properties from one format to another.

Mandatory settings
KeyTypeDescription
Properties namesList<String>Names of the properties to convert. One line per property
Input date formatStringOriginal date format of the properties to convert (Ex: yyyy-MM-dd)
Output date formatStringDesired date format of the properties after conversion (Ex: dd/MM/yyyy)
Input localeStringLocale of the input date format (Ex: en-US, fr-FR, de-DE)
Output localeStringLocale of the output date format (Ex: en-GB, es-ES, pt-BR)

DeleteContent - Delete local content

Delete the content of your document within your file system. It will retrieve the files targeted by the URL of all the document contents in your punnet

Optional settings
KeyTypeDescriptionDefault value
Delay between two deletion attemptIntegerDelay in milliseconds1000
File path to deleteStringUsed as prefix to select files to delete. This field can be see as a whitelist of the contents to delete. If empty, all accessible contents will be deleted from the machine.
Exception when deletion failedBooleanThrown an exception if the file has been found but the delete operation failed.true
Maximum number of tries for deletionIntegerThrown an exception if the file has not been deleted after this number of tries10
Delete content entryBooleanErase the URL entry from the document, in the punnet.true
Exception when file does not existBooleanThrow an exception if file does not exist. Otherwise, silent failtrue

EmbeddedDbQuery - Query the embedded OpenSearch database

Provide a campaign name, task name, and unique ID field to find a single punnet in the embedded OpenSearch database.

Mandatory settings
KeyTypeDescription
Embedded Db connection providerEmbeddedDbConnectionProvider
Campaign prefixStringGenerally Map name, but can be changed, so the part that comes before _Run#
Fields for OpenSearch queryString/Pattern mapFields used to construct OpenSearch query. Recommended to include at least the following 3: campaign.keyword, stepName.keyword, punnet.documents.documentId.keyword (or similar unique ID). The query should only return one punnet.
Data to enrich current punnetString/Pattern mapList of data coming from the OpenSearch fetched punnet to add to the current punnet. Give a literal name such as edb-hash and an expression to fill the value like ${hash} or ${property('file:content:digest')} for properties with colons in the name.

FileNet35ExtraSearchTask - File Net search

Find your documents inside your File Net 3.5 instance.

Optional settings
KeyTypeDescription
FileNet35ExtraSearchTaskSettings

JSTransform - JavaScript evaluation task

This task serves the purpose of modifying a punnet based on instructions embedded into a JavaScript snippet. The latter can be either directly pasted as task parameter, or read from a given path. If both these ways are used, the task will only consider the script pasted in.

info

The core engine responsible for executing JavaScript transformations has been upgraded from Fast2 2025.4.1, replacing the legacy Nashorn engine with the modern and high-performance GraalVM JS. The new engine is configured to be fully backward-compatible. All existing JavaScript transformation scripts written for Nashorn will continue to function seamlessly without requiring any modifications.

Mandatory settings
KeyTypeDescription
Script or script file pathStringJavascript source or path to JavaScript file with preloaded script. Ex: C:/fast2/script.js OR punnet.getDataSet().addData("data","String", "value");
Optional settings
KeyTypeDescriptionDefault value
(Deprecated) Script file pathStringPath to JavaScript file with preloaded script. Deprecated: use script property instead.
Script engineStringScript engine to use for the JS execution. Use 'nashorn' for JDK8. Other options are available, such as js, javascript, ecmascript.nashorn

MailDeleter - Remove mails

This class allow you to connect to your mail box and select mails to delete. You can search among your mails by term or properties

Optional settings
KeyTypeDescriptionDefault value
Mail connection providerMailBoxProvider
Maximum connection ttlLongTime in milliseconds60
Search term typeStringMessage-Id
Pattern to evaluate propertyString${Message-Id}
Exception when mail not foundBooleanThrow an exception when the mail is not found. Otherwise, silent failtrue
Save message changesBooleantrue

RenameDocumentProperties - Rename multiple document properties

Dive into the punnet to rename one or more properties carried by the document.

Mandatory settings
KeyTypeDescription
Property mapString/String mapList of the properties to rename. One line per property

Ex/ targetProperty = documentStringGetter

Optional settings
KeyTypeDescriptionDefault value
Exception when property rename conflictBooleanThrows an exception if the target property exists, otherwise fails silentlytrue

UpdateSharedObject - Update a shared object value from its name

Use this task to change a system-wide configuration setting at runtime. Mainly used for dynamic campaign variables built as a shared object in Fast2. Be careful: only works with shared object set with Global scope

Mandatory settings
KeyTypeDescription
Shared object new valueStringCan be almost any type of variable (String, int...) except object and tasks of the Fast2 catalog. You can also access to any custom document data value from the pattern using ${variableName}. Already known variables : base, campaign, taskFlowMap, step, punnetTraceId, punnetId and documentId.
Shared object name to updateStringName of the object to update. The shared object will be automatically created if does not already exists.
Optional settings
KeyTypeDescriptionDefault value
Number of executionsIntegerMeans the number of executions per campaign1

XSLTransform - Apply a XSL transformation on XML Punnets

With pretty much straight-forward task you can fine-tune any punnet or document metadata, or even the content targetted by the migration. Build your custom XSL file, and ask Fast2 to apply the changes onto the migration-related data

Mandatory settings
KeyTypeDescription
XSL file pathStringSpecify here the absolute path of the XSL file, as well as the name and the extension of the file. This file can be located on a separate machine
Optional settings
KeyTypeDescription
XSL Stylesheet contentStringEnter here your xsl:stylesheet content