1.6

Table Of Contents
single record or you could group all invoices for one customer into a single record. So the
boundaries for each record can be completely dependent on how you want to use the data.
With no actual boundary markers inside the data, there needs to be a way to identify specific
locations in the input stream and mark those locations as record boundaries. Fortunately, every
single file format has intrinsic, natural delimiters that are used to identify chunks of related data.
These delimiters are key in helping us identify boundaries, so it is important to understand what
they are as well as when and why they occur in the Data Source.
Let's start with a seemingly arbitrary assumption: a boundary can only occur on a natural
delimiter. That is to say, a record boundary never occurs between delimiters; it only occurs on a
delimiter. The actual information we need to determine whether a delimiter can be a boundary
is very likely to be found between delimiters.
For a CSV or Database File
The natural delimiter for a CSV file is a data record, or to put it more visually, each line in a
spreadsheet or in a SQL data grid is a delimiter. Several such delimiters can be included in a
record, but you would never expect to find the end of one particular record right in the middle of
one of these lines in the grid. So the record occurs with a new line in the grid, but not on each
new line.
Since database data sources are structured the same way as CSV files, the options are
identical to these files. Boundaries will define how many lines appear for each Source Record.
This can be a static number of lines or it can be determined based on a field change that will
create a new record. For example, this can happen when the customer ID changes. There is
also an advanced scripting option to determine boundaries (see Javascript for Boundaries for
details).
l
Record limit: Defines how many Source Records are displayed in the Data Viewer. This
does not affect output production, as generating output ignores this option. To disable the
limit, use the value "0".
l
Line limit: Defines the limit of detail lines in any detail table. This is useful for files with a
high number of detail lines, which in the DataMapper interface can slow down things.
This does not affect output production, as generating output ignores this option. To
disable the limit, use the value "0".
l
Trigger: Defines the type of rule that controls when a boundary is created, establishing a
new record in the Data Sample (called a Source Record).
Page 158