The Validate step performs one or more validation routines on files in the current file set and optionally sets macro values that may be used in subsequent steps.
Friendly Name
|
INI Variable
|
Required?
|
Description
|
Minimum Size
|
min_size
|
optional
|
File must not be smaller than this number of bytes
|
Maximum Size
|
max_size
|
optional
|
File must not be larger than this number of bytes
|
Minimum Records
|
min_records
|
optional
|
File must not contain fewer than this number of lines
|
Maximum Records
|
max_records
|
optional
|
File must not contain more than this number of lines
|
Maximum Change
|
min_percent
|
optional
|
File size must be at no greater than this percent of the size of the last file with the same extension as the file to be validated
|
CNT File
|
cnt_file
|
optional
|
Use the first space delimited field from the first line of the first file matching the given file mask (e.g. "*.cnt") as a number that indicates how many lines should be found in the file.
|
Header
|
header_string
|
optional
|
Perl regular expression that must match the beginning of the file
|
File Filter
|
specification
|
optional
|
Specification for file to match. default is *
|
Failed File Path
|
errors_directory
|
optional
|
Path of directory to which any files that fail validation will be delivered
|
N/A
|
header_lines
|
optional
|
number of lines to search at the beginning of the file for the matching value of header_string
|
N/A
|
line_endings
|
optional
|
override the default CR/LF line terminator sequence; ANY and LF are possible values. When LF is specified, lines are terminated with only the line-feed character. When ANY is specified, lines are terminated with carriage-return only, line-feed only, or a CR/LF pair sequence.
|
Setting Macro Values
When the expression defined by the header_string option contains grouping characters () the file characters matching the group are saved as %stepname[#] where the value of %stepname[1] is set to the matching characters for the first group and the value of %stepname[2] is set to the second matched group and so on for as many groups are defined.
For example, consider the following option:
header_string=(\w*) \w* (\w*)
In perl regular expression parlance \w means word character (alphanumeric,underscore,hyphen) and * means zero or more of the previous character. So, in this example if the step was named "validate" and first line of the file was:
This is the beginning.
Then macro values would be set as follows:
%validate[1] = This
%validate[2] = the
%validate[3] (This value would not be set.)
To continue this example, if the first line of the file was only:
First
The validate step would fail as that line cannot match the header_string expression in this example.
Example Usage:
|