Skip to main content

Text File Input

Description

Text File Input is a step in the Input Plugin for Process Studio Workflows. The Text File Input step reads data from text (txt) file types. The other most used format includes Comma Separated Values (CSV files) generated by spreadsheets and fixed width flat files.

The step reads the text input file based on any one of the following two ways:

Column index: Columns are mapped based on their index position in the text file. For example, if the text file contains columns A, B, and C, column index 0 maps to A, index 1 maps to B, and index 2 maps to C.

OR

Column name: Columns are mapped using their header names, for example, A or C instead of index positions. This approach provides flexibility when the column order changes.

Configurations

Field NameDescription
File tab
File or directorySpecify or browse the path of the input text file.
Note: Press the "add" button to add the file/directory/wildcard combination to the list of selected files (grid) below.
Regular expression*Specify the regular expression you want to use to select the files in the directory specified in the previous field. For example, you want to process all files that have a .txt extension. (See below "Selecting file using Regular Expressions")
Exclude Regular ExpressionSpecify a regular expression that you want to use to exclude the files in the directory specified in the previous field. For example, specify agent in the field if you want to exclude files containing the word in its filename.
Selected FilesThis table contains a list of selected files (or wildcard selections) along with a property specifying if file is required or not. If a file is required and it isn't found, an error is generated. Otherwise, the filename is skipped.
DeleteClick to delete rows from the Selected Files table.
EditClick to modify fields to be edited the Selected Fields table.
Accept filenames from previous stepsText File Input step can accept filenames from a previous step enabling dynamic filename handling.
Enable this checkbox to get filenames from previous steps.
Pass through fields from previous stepEnable this checkbox to add all previous fields coming into the step to the step output. This behaves like a join option.
Step to read filenames fromStep from which to read the filenames
Field in the input to use as filenameText File Input looks in this step to determine which filenames to use
Button: Show filenamesClick button to display a list of all the files selected. Note that if the workflow is to be run on a separate server, the result might be incorrect.
Button: Show file contentClick button to display the first lines of the text-file. In case of any error make sure that the file-format is correct. When in doubt, try both DOS and UNIX formats.
Show content from first data lineHelps you position the data lines in complex text files with multiple header lines and more. It shows the first data line excluding header row.

* Regular expression, searching files using Regular Expressions

The Text File Input step also provides the ability to specify a list of files to read, or a list of directories with wild cards in the form of regular expressions to filter files. Regular expressions are more sophisticated than using '*' and '?' wildcards. Below are a few examples of regular expressions:

FilenameRegular ExpressionFiles selected
/dirA/.userdata.\.txtFind all files in /dirA/ with names containing user data and ending with .txt
/dirB/AAA.*Find all files in /dirB/ with names that start with AAA
/dirC/[ENG:A-Z][ENG:0-9].*Find all files in /dirC/ with names that start with a capital and followed by a digit (A0-Z9)

*Accepting filenames from a previous step

This option allows even more flexibility in combination with other steps such as "Get Filenames". You can construct your filename and pass it to this step. This way the filename can come from any source: text file, database table, etc.

Field NameDescription
Content Tab
File typeSelect from CSV or Fixed length.
SeparatorOne or more characters that separate the fields in a single line of text. Typically, this is; or a tab. Special character (e.g. CHAR ASCII HEX01) can be set with the format $[value], e.g. $[01] or $[6F, FF,00,1F].
EnclosureSome fields can be enclosed by a pair of strings to allow separator characters in fields. The enclosure string is optional. If you use repeat enclosures allow text line 'Not the nine o''clock news.'. With ' the enclosure string, this gets parsed as Not the nine o'clock news. Special characters (e.g. CHAR ASCII HEX01) can be set with the format $[value], e.g. $[01] or $[6F, FF,00,1F].
Allow breaks in enclosed fields?This field is Disabled.
EscapeSpecify an escape character (or characters) if you have these types of characters in your data. If you have \ as an escape character, the text 'Not the nine o'clock news' (with ' the enclosure) gets parsed as Not the nine o'clock news. Special characters (e.g. CHAR HEX01) can be set with the format $[hex value], e.g. $[01] or $[6F,FF,00,1F].
Header & number of header linesEnable if your text file has a header row (first lines in the file); you can specify the number of times the header lines appear.
Footer & number of footer linesEnable if your text file has a footer row (last lines in the file); you can specify the number of times the footer row appears.
Wrapped lines and number of wrapsEnable checkbox if you deal with data lines that have wrapped beyond a specific page limit; note that headers and footers are never considered wrapped.
Specify the number of times wrapped.
Paged layout and page size and doc headerUse these options as a last resort when dealing with texts meant for printing on a line printer; use the number of document header lines to skip introductory texts and the number of lines per page to position the data lines.
CompressionEnable if your text file is placed in a Zip or GZip archive.
Note: Currently, only the first file in the archive is read.
No empty rowsEnable if you do not want to send empty rows to the next steps.
Include filename in outputEnable if you want the filename to be part of the output.
Filename field nameName of the field that contains the filename.
Rownum in output?Enable if you want the row number to be part of the output.
Row number field nameName of the field that contains the row number.
Rownum by file?Enable to reset the row number per file.
FormatCan be either DOS, UNIX or mixed. UNIX files have lines that are terminated by line feeds. DOS files have lines separated by carriage returns and line feeds. If you specify mixed, no verification is done.
EncodingSpecify the text file encoding to use; leave blank to use the default encoding on your system. To use Unicode, specify UTF-8 or UTF-16. On first use, Process Studio searches your system for available encodings.
LimitSets the number of lines that is read from the file; 0 means read all lines.
Be lenient when parsing dates?Disable if you want strict parsing of data fields; if case-lenient parsing is enabled, dates like Jan 32nd will become Feb 1st.
The date format LocaleSpecify the locale is used to parse dates that have been written in full such as "February 2nd, 2006;"
Add filenames to resultEnable checkbox to add the filenames to the internal filename result set. This internal result set can be used later, e.g. to process all read files.
Field NameDescription
Error Handling Tab
Ignore errors?Enable if you want to ignore errors during parsing
Skip error linesEnable if you want to skip those lines that contain errors. You can generate an extra file that contains the line numbers on which the errors occurred. Lines with errors are not skipped, the fields that have parsing errors, will be empty (null)
Error File Field NameSpecify a field name to contain the error file name.
File error message field nameSpecify a field name to contain the message of the error in file.
Error count field nameSpecify a field name to contains the number of errors on the line
Error fields field nameAdd a field to the output stream rows; this field contains the field names on which an error occurred
Error text field nameAdd a field to the output stream rows; this field contains the descriptions of the parsing errors that have occurred
Warnings file directoryWhen warnings are generated, they are placed in this directory. The name of that file is <warning dir>/filename.<date_time>.<warning extension>
Error files directoryWhen errors occur related to non-existing or non-accessible files, they are placed in this directory. The name of the file is <errorfile_dir>/filename.<date_time>.<errorfile_extension>
Failing line numbers files directoryWhen a parsing error occurs on a line, the line number is placed in this directory. The name of that file is <errorline dir>/filename.<date_time>.<errorline extension>
Field NameDescription
Filters Tab
Filter stringSpecify the string for which to search.
Filter positionThe position where the filter string must be at in the line. Zero (0) is the first position in the line. If you specify a value below zero (0) here, the filter string is searched for in the entire string.
Stop on filterSpecify Y here if you want to stop processing the current text file when the filter string is encountered.
Positive matchSpecify Y here if you want to process lines that match the filter, or N if you want to ignore such lines.
Field NameDescription
Fields TabUse the Fields tab to define the specific text file columns to extract and configure their output properties. You can map columns by name or by index, and set data types, formatting, and text processing rules. This configuration determines the final structure of the data flowing to the next workflow step.
Index Based Reading (read based on column index)Select the checkbox to map input fields based on their numerical index (position) rather than the column header name.
Get fields: Click to scan the first row of the Excel file. The step automatically detects the headers and populates the Index Based Reading table with the corresponding names and default settings.
NameSpecify the name of the column as it appears in the output rows.
TypeSelect the data type for the field to ensure correct processing.
Available data types:
- Number
- String
- Date
- Boolean
- Integer
- BigNumber
- Binary
- Timestamp
- Internet Address
FormatSpecify the format to parse the incoming data correctly.
The format is used to read or display field value based on the selected type.
For example, Select MM/dd/yyyy to read a date value like 12/25/2025 correctly.
PositionThis is needed when processing the 'Fixed' file type. It is zero based, so the first character is starting with position 0.
LengthSpecify the maximum allowable length for the field. For strings, this represents the character count; for numbers, it represents the total number of significant digits.
For example, Set Length to 10 to allow a maximum of 10 characters, such as INV1234567.
PrecisionSpecify the number of decimal places allowed for numeric values.
For example, Set Precision to 2 to store values like 123.45
CurrencySpecify the currency symbol used in the input data, such as ₹, $, or €.
For example, enter ₹ to display amounts as ₹5000.
DecimalSpecify the character used as the decimal separator, for example, a dot( . ) or a comma (,).
GroupSpecify the character used to separate thousands or other distinct groups within large numbers. For example, a dot (.) or a comma (,).
Null ifTreat the value as NULL.
DefaultDefault value in case the field in the text file was not specified (empty).
Trim TypeSelect a trimming method to remove unwanted whitespace from the data:
- None
- Left
- Right
- Both
RepeatSelect Y (Yes) to enable the repeat function. When enabled, the step fills empty cells with the value from the immediately preceding row. This is essential for processing vertically grouped data.
For Example:
ItemQty
Apple10
15
20

If Apple appears once and the next rows are blank, if Repeat is set to Y, the step will repeat Apple for those rows.
SecretSelect Y to hide the incoming data for the field. The step masks the value (shows ********) in all downstream steps, previews, and logs. To protect the data, the system completely drops this field by default when sending data to a final output file or database.
Select N to keep the data visible as plain text. The step displays the actual value in previews and logs and writes it normally to any final output file or database.
Important:
Combining a secret field with plain text in an upstream step (for example, using a Calculator step to build "Token: " + secretField) causes the system to treat the result as a new field.
Column Based Reading (read based on column name)Select checkbox Read Based on Column Name to get inputs based on column name. The fields are mapped using their Column Name or Alias Name property instead of column position.
If not selected, columns are read using their index (0, 1, 2...) and Index Based Reading table is available.
When you click Get fields, the header names are automatically copied into the Column Based Reading table.
Advantages:
- Column order changes do not break the workflow.
- Fields are easier to understand and maintain.
Note: If this checkbox is not selected, the table uses column index instead of names.
Fail if column name not foundSelect the checkbox to stop the workflow and report an error if a specified column is missing from the input file.
If the checkbox is cleared, the step continues execution and assigns null value to the missing column, ensuring the workflow does not break due to minor schema changes.
Case insensitive comparisonSelect the checkbox to match column names regardless of capitalization. This allows the step to identify columns even if the header case in the file differs from the configuration (for example, matching ID with id).
Column NameSpecify the name of column.
The column name is the header text from the Excel file.
You can specify the column name in different ways, such as static value, field, parameter, or global/local PS variable.
The column name must follow the format: SheetName.ColumnName
For example: If the sheet name is Country and the column name is Capital:
Create a parameter Param1 = Country.Capital
Then use ${Param1} in the Get Fields Based on Column Name table. If the value is coming from a field, simply select that field in the table.
NameSpecify internal name used for the defined column in the workflow output.
Alias NameSpecify an alternate column name that the system uses when the specified column name is not available in the input file. During execution, the system attempts to match the field using the alias name if the primary column name is missing.
Note: You can configure a maximum of five alias names per field.
Example: If the specified column name is customerID and it is not present in the input file, the system uses the alias name (for example, customer_id, customerid, CustomerId) to locate and read the corresponding column.
TypeSelect the data type for the field to ensure correct processing.
Available data types:
- Number
- String
- Date
- Boolean
- Integer
- BigNumber
- Binary
- Timestamp
- Internet Address
FormatSpecify the format to parse the incoming data correctly.
The format is used to read or display field value based on the selected type.
For example, Select MM/dd/yyyy to read a date value like 12/25/2025 correctly.
LengthSpecify the maximum allowable length for the field. For strings, this represents the character count; for numbers, it represents the total number of significant digits.
For example, Set Length to 10 to allow a maximum of 10 characters, such as INV1234567.
PrecisionSpecify the number of decimal places allowed for numeric values.
For example, Set Precision to 2 to store values like 123.45
CurrencySpecify the currency symbol used in the input data, such as ₹, $, or €.
For example, enter ₹ to display amounts as ₹5000.
DecimalSpecify the character used as the decimal separator, for example, a dot( . ) or a comma (,).
GroupSpecify the character used to separate thousands or other distinct groups within large numbers. For example, a dot (.) or a comma (,).
Null ifTreat this value as NULL.
DefaultDefault value in case the field in the text file was not specified (empty).
Trim TypeSelect a trimming method to remove unwanted whitespace from the data:
- None
- Left
- Right
- Both
RepeatSelect Y (Yes) to enable the repeat function. When enabled, the step fills empty cells with the value from the immediately preceding row. This is essential for processing vertically grouped data.
For Example:
ItemQty
Apple10
15
20

If Apple appears once and the next rows are blank, if Repeat is set to Y, the step will repeat Apple for those rows.
SecretSelect Y to hide the incoming data for the field. The system masks the value (shows ********) in all downstream steps, previews, and logs. To protect the data, the system completely drops this field by default when sending data to a final output file or database.
Select N to keep the data visible as plain text. The system displays the actual value in previews and logs, and writes it normally to any final output file or database.
Important:
- Combining a secret field with plain text in an upstream step (for example, using a Calculator step to build "Token: " + secretField) causes the system to treat the result as a brand-new field. This new field is not protected automatically. Mark the new derived field as a secret manually.
- Renaming a secret column using the Rename Fields step removes the secret status from the new column and exposes the data as plain text.

*Number Formats: For information on valid numeric formats used in this step, view the Number Formatting Table as below.

SymbolLocationLocalizedMeaning
0NumberYesDigit
#NumberYesDigit, zero shows as absent
.NumberYesDecimal separator or monetary decimal separator
-NumberYesMinus sign
,NumberYesGrouping separator
ENumberYesSeparates mantissa and exponent in scientific notation; need not be quoted in prefix or suffix
;Sub pattern boundaryYesSeparates positive and negative sub patterns
%Prefix or suffixYesMultiply by 100 and show as percentage
Prefix or suffixYesMultiply by 1000 and show as per mille
€ (¤)Prefix or suffixNoCurrency sign, replaced by currency symbol. If doubled, replaced by international currency symbol. If present in a pattern, the monetary decimal separator is used instead of the decimal separator.
'Prefix or suffixNoUsed to quote special characters in a prefix or suffix, for example, "'#'#" formats 123 to "#123". To create a single quote itself, use two in a row: "# o''clock".

*Scientific Notation

In a pattern, the exponent character immediately followed by one or more-digit characters indicates scientific notation (for example, "0.###E0" formats the number 1234 as "1.234E3".

*Date formats

LetterDate or Time ComponentPresentationExamples
GEra designatorTextAD
yYearYear1996; 96
MMonth in yearMonthJuly; Jul; 07
wWeek in yearNumber27
WWeek in monthNumber2
DDay in yearNumber189
dDay in monthNumber10
FDay of week in monthNumber2
EDay in weekTextTuesday; Tue
aAm/pm markerTextPM
HHour in day (0-23)Number 0
kHour in day (1-24)Number 24
KHour in am/pm (0-11)Number 0
hHour in am/pm (1-12)Number 12
mMinute in hourNumber 30
sSecond in minuteNumber 55
SMillisecondNumber 978
zTime zoneGeneral time zonePacific Standard Time; PST; GMT-08:00
ZTime zoneRFC 822 time zone-0800
FieldDescription
Additional Output Fields Tab
Short filename fieldSpecify the field name that contains the filename without path information but with an extension.
Extension fieldSpecify the field name that contains the extension of the filename.
Path fieldSpecify the field name that contains the path in operating system format.
Size fieldSpecify the field name that contains the size of the field.
Is hidden fieldSpecify the field name that contains if the file is hidden or not (boolean).
Uri fieldSpecify the field name that contains the URI.
Root uri fieldSpecify the field name that contains only the root part of the URI.
Function/ButtonDescription
Show filenamesClick button to display a list of all the files selected. Note that if the workflow is to be run on a separate server, the result might be incorrect.
Show file contentClick button to display the first lines of the text-file. In case of any error make sure that the file-format is correct. When in doubt, try both DOS and UNIX formats.
Show content from first data lineHelps you position the data lines in complex text files with multiple header lines and more. It shows the first data line excluding header row.
Get fieldsAllows you to guess the layout of the file. In case of a CSV file, this is performed almost automatically. In case you select a file with fixed length fields, you must specify the field boundaries using a wizard.
Minimal WidthClick to set all field lengths to the minimum required width, removing any padding. This optimizes memory usage by trimming unnecessary field length allocations.
Preview rowsPreview the rows generated by this step.