Flat File comparison

Introduction

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. 

Configuration file

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“} 

Business keys, removed and rejected columns

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)’.

image.png

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. 

Additional properties

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. 

FlatFileComparison-AdditionalProperties.PNG
fileFilterComma-separated extension list to compare. For instance, setting to "csv" will compare only the csvs in the folders.
leftFolderCustomize the left folder for the files to compare
rightFolderCustomize the right folder for the files to compare
columnSeparatorColumn 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.
numberLinesRemoveUsed to skip the first lines. Useful if you have an unformatted header
recordSeparatorUsed 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.