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 commonly used format include Comma Separated Values (CSV files) generated by spreadsheets and fixed width flat files.
Configurations
No. | Field Name | Description |
---|---|---|
1 | File or directory | Specify 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. |
2 | Regular expression*Sp | ecify the regular expression you want to use to select the files in the directory specified in the previous option. For example, you want to process all files that have a .txt extension. (See below "Selecting file using Regular Expressions") |
3 | Selected Files | This 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. |
4 | Accept filenames from previous steps | Text File Input step can accept filenames from a previous step enabling dynamic filename handling.Enable this checkbox to get filenames from previous steps. |
5 | Pass through fields from previous step | Enable this checkbox to add all previous fields coming into the step to the step output. This behaves like a join option. |
6 | Step to read filenames from | Step from which to read the filenames |
7 | Field in the input to use as filename | Text File Input looks in this step to determine which filenames to use |
8 | Button: Show filenames | Click 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. |
9 | Button: Show file content | Click 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. |
10 | Show content from first data line | Helps 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:
Filename. | Regular Expression | Files selected |
---|---|---|
/dirA/ | .userdata..txt | Find 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.
No. | Field Name | Description |
---|---|---|
Content Tab: | ||
1 | File type | Select from CSV or Fixed length. |
2 | Separator | One or more characters that separate the fields in a single line of text. Typically this is; or a tab. Special characters (e.g. CHAR ASCII HEX01) can be set with the format $[value], e.g. $[01] or $[6F,FF,00,1F]. |
3 | Enclosure | Some fields can be enclosed by a pair of strings to allow separator characters in fields. The enclosure string is optional. If you use repeat an 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]. |
4 | Allow breaks in enclosed fields? | This field is Disabled. |
5 | Escape | Specify 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]. |
6 | Header & number of header lines | Enable if your text file has a header row (first lines in the file); you can specify the number of times the header lines appear. |
7 | Footer & number of footer lines | Enable if your text file has a footer row (last lines in the file); you can specify the number of times the footer row appears. |
8 | Wrapped lines and number of wraps | Enable 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. |
9 | Paged layout and page size and doc header | Use 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 |
10 | Compression | Enable if your text file is placed in a Zip or GZip archive. Note: At the moment, only the first file in the archive is read. |
11 | No empty rows | Enable if you do not want to send empty rows to the next steps. |
12 | Include filename in output | Enable if you want the filename to be part of the output. |
13 | Filename field name | Name of the field that contains the filename. |
14 | Rownum in output? | Enable if you want the row number to be part of the output. |
15 | Row number field name | Name of the field that contains the row number. |
16 | Rownum by file? | Enable to reset the row number per file. |
17 | Format | Can 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. |
18 | Encoding | Specify 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. |
19 | Limit | Sets the number of lines that is read from the file; 0 means read all lines. |
20 | 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. |
21 | The date format Locale | Specify the locale is used to parse dates that have been written in full such as "February 2nd, 2006;" |
22 | Add filenames to result | Enable checkbox to add the filenames to the internal filename result set. This internal result set can be used later on, e.g. to process all read files. |
Error Handling Tab | ||
1 | Ignore errors? | Enable if you want to ignore errors during parsing. |
2 | Skip error lines | Enable 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). |
3 | Error File Field Name | Specify a field name to contain the error file name. |
4 | File error message field name | Specify a field name to contain the message of the error in file. |
5 | Error count field name | Specify a field name to contains the number of errors on the line |
6 | Error fields field name | Add a field to the output stream rows; this field contains the field names on which an error occurred. |
7 | Error text field name | Add a field to the output stream rows; this field contains the descriptions of the parsing errors that have occurred. |
8 | Warnings file directory | When warnings are generated, they are placed in this directory. The name of that file is <warning dir>/filename.<date_time>.<warning extension>. |
9 | Error files directory | When 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>. |
10 | Failing line numbers files directory | When 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>. |
Filters Tab: | ||
1 | Filter string | Specify the string for which to search. |
2 | Filter position | The position where the filter string has to 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. |
3 | Stop on filter | Specify Y here if you want to stop processing the current text file when the filter string is encountered. |
4 | Positive match | Specify Y here if you want to process lines that match the filter, or N if you want to ignore such lines. |
Fields Tab: | ||
1 | Name | Name of the field. |
2 | Type | Type of the field can be either String, Date or Number. |
3 | Format* | See Number Formats for a complete description of format symbols. |
4 | Position | This is needed when processing the 'Fixed' file type. It is zero based, so the first character is starting with position 0. |
5 | Length | For Number: Total number of significant figures in a number; For String: total length of string; For Date: length of printed output of the string (e.g. 4 only gives back the year). |
6 | Precision | For Number: Number of floating point digits; For String, Date, Boolean: unused; |
7 | Currency | Used to interpret numbers like $10,000.00 or E5.000,00. |
8 | Decimal | A decimal point can be a "." (10;000.00) or "," (5.000,00). |
9 | Grouping | A grouping can be a dot "," (10;000.00) or "." (5.000,00). |
10 | Null if | Treat this value as NULL. |
11 | Default | Default value in case the field in the text file was not specified (empty). |
12 | Trim | Type trim this field (left, right, both) before processing. |
13 | Repeat | If the corresponding value in this row is empty, repeat the one from the last row when it was not empty. |
*Number Formats: For information on valid numeric formats used in this step, view the Number Formatting Table as below.
Symbol | Location | Localized | Meaning |
---|---|---|---|
Content Tab: | |||
0 | Number | Yes | Digit |
# | Number | Yes | Digit, zero shows as absent |
. | Number | Yes | Decimal separator or monetary decimal separator |
- | Number | Yes | Minus sign |
, | Number | Yes | Grouping separator |
E | Number | Yes | Separates mantissa and exponent in scientific notation; need not be quoted in prefix or suffix |
; | Sub pattern boundary | Yes | Separates positive and negative sub patterns |
% | Prefix or suffix | Yes | Multiply by 100 and show as percentage |
\u2030 | Prefix or suffix | Yes | Multiply by 1000 and show as per mille |
€ (\u00A4) | Prefix or suffix | No | Currency 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 suffix | No | Used 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
Letter | Date or Time Component | Presentation | Examples |
---|---|---|---|
G | Era designator | Text | AD |
Y | Year | Year | 1996; 96 |
M | Month in year | Month | July; Jul; 07 |
W | Week in year | Number | 27 |
W | Week in month | Number | 2 |
D | Day in year | Number | 189 |
D | Day in month | Number | 10 |
F | Day of week in month | Number | 2 |
E | Day in week | Text | Tuesday; Tue |
A | Am/pm marker | Text | PM |
H | Hour in day (0-23) | Number 0 | |
K | Hour in day (1-24) | Number 24 | |
K | Hour in am/pm (0-11) | Number 0 | |
H | Hour in am/pm (1-12) | Number 12 | |
M | Minute in hour | Number 30 | |
S | Second in minute | Number 55 | |
S | Millisecond | Number 978 | |
Z | Time zone | General time zone | Pacific Standard Time; PST; GMT- 08:00 |
Z | Time zone | RFC 822 time zone -0800 |
Additional Output Fields Tab
Field | Description |
---|---|
Short filename field | Specify the field name that contains the filename without path information but with an extension. |
Extension field | Specify the field name that contains the extension of the filename. |
Path field | Specify the field name that contains the path in operating system format. |
Size field | Specify the field name that contains the size of the field. |
Is hidden field | Specify the field name that contains if the file is hidden or not (boolean). |
Uri field | Specify the field name that contains the URI. |
Root uri field | Specify the field name that contains only the root part of the URI. |
Function/Button | Description |
---|---|
Show filenames | Click 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 content | Click 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 line | Helps 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 fields | Allows 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. |
Preview rows | Preview the rows generated by this step. |