The flat files comparison will compare, in two folders, files with the same structure. More precisely, it will compare files with the same path inside the two folders.
Flat files are text files with a column and a row separator. By default, flat files are csv files.
A minimal bacmp configuration file for flat files will be as below. It will scan the default left and right folders and compare each file found with same name.
{"comparisonType“: "Flatfile“}
You can specify, for each file, columns which are business keys, rejected columns or removed columns.
Business keys allows you to specify which records are the same in left and right file. (See Business keys for an example, it works the same as in databases).
Removed columns will not appear at all in comparison, rejected columns will appear but values will be replaced by ‘(REJECTED)’.
Please note that the file list that appears in the ‘details’ here does not restrict the list of compared files. All files in the folders are compared, and these files only need additional details. In order to compare only some files, you can change the left and right folder, or use a file filter. See Additional properties for more details.
In addition to the configurations above, there are additional properties. Most have default values that are used if the property does not appear in the file, but can also be specified to another value. Others are not used if left unspecified.
fileFilter | Comma-separated extension list to compare. For instance, setting to "csv" will compare only the csvs in the folders. |
leftFolder | Customize the left folder for the files to compare |
rightFolder | Customize the right folder for the files to compare |
columnSeparator | Column separator in the files. Defaults to ; |
hasColumnHeaders | If set to true, the first row is used to gather column headers for the final report. Otherwise, the report will only display COLUMN1, COLUMN2… Please note that, regardless of this option, this first row will be compared as well. Use option below numberLinesRemove if this is not desired. |
numberLinesRemove | Used to skip the first lines. Useful if you have an unformatted header |
recordSeparator | Used if there is a custom record separator. Only relevant if option recordSeparatorNewline is set to false |
recordSeparatorNewline | By default, the system new line character is used as a record separator. If this option is set to false, a custom recordSeparator must be supplied. |